diff -r -u rtems-ss-20030128/cpukit/libnetworking/rtems/rtems_glue.c rtems-ifdownfix/cpukit/libnetworking/rtems/rtems_glue.c
--- rtems-ss-20030128/cpukit/libnetworking/rtems/rtems_glue.c   2003-01-03 12:09:28.000000000 -0600
+++ rtems-ifdownfix/cpukit/libnetworking/rtems/rtems_glue.c 2003-03-28 14:46:47.000000000 -0600
@@ -1018,6 +1018,10 @@
                break;
            }
            ifreq.ifr_flags |= *((short*) param);
+           if ( (*((short*) param) & IFF_UP ) == 0 ) {
+               /* set the interface down */
+               ifreq.ifr_flags &= ~(IFF_UP);
+           }
            r = ioctl (s, SIOCSIFFLAGS, &ifreq);
            break;
 
Only in rtems-ifdownfix/cpukit/libnetworking/rtems: rtems_glue.c~
