Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > core-updates-src > by-pkgid > 610cea300eee30e41711bcbcf266bbff > files > 4

dhcp-4.3.3P1-1.mga5.src.rpm

diff -p -up dhcp-4.1.1/client/scripts/linux.prevent_wireless dhcp-4.1.1/client/scripts/linux
--- dhcp-4.1.1/client/scripts/linux.prevent_wireless	2010-02-25 11:37:31.000000000 -0300
+++ dhcp-4.1.1/client/scripts/linux	2010-02-25 11:37:37.000000000 -0300
@@ -13,6 +13,8 @@
 
 # 1. ifconfig down apparently deletes all relevant routes and flushes
 # the arp cache, so this doesn't need to be done explicitly.
+# 1.1. ifconfig $interface inet 0 is enough, and prevents unneeded
+# deassociation on wireless interfaces
 
 # 2. The alias address handling here has not been tested AT ALL.
 # I'm just going by the doc of modern Linux ip aliasing, which uses
@@ -170,7 +172,7 @@ if [ x$reason = xBOUND ] || [ x$reason =
   if [ x$old_ip_address != x ] && [ x$old_ip_address != x$new_ip_address ]; then
     # IP address changed. Bringing down the interface will delete all routes,
     # and clear the ARP cache.
-    ifconfig $interface inet 0 down
+    ifconfig $interface inet 0
 
   fi
   if [ x$old_ip_address = x ] || [ x$old_ip_address != x$new_ip_address ] || \
@@ -224,7 +226,7 @@ if [ x$reason = xEXPIRE ] || [ x$reason 
   fi
   if [ x$old_ip_address != x ]; then
     # Shut down interface, which will delete routes and clear arp cache.
-    ifconfig $interface inet 0 down
+    ifconfig $interface inet 0
   fi
   if [ x$alias_ip_address != x ]; then
     ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg
@@ -259,7 +261,7 @@ if [ x$reason = xTIMEOUT ]; then
    fi
     exit_with_hooks 0
   fi
-  ifconfig $interface inet 0 down
+  ifconfig $interface inet 0
   exit_with_hooks 1
 fi