From 7efe4676747e4e4a056b9bfb4e9424c8354e9996 Mon Sep 17 00:00:00 2001 From: "Maxin B. John" Date: Wed, 21 Dec 2016 15:32:07 +0200 Subject: [PATCH] inet[6].defn: fix inverted checks for loopback Compared to the hurd link.defn for loopback, we see these are inverted, meaning that you would only be able to configure a loopback device that was _not_ named "lo" (unlikely to exist). The result was that we'd update /run/network/ifstate for "lo" but never actually do anything for up/down, as shown below: root@localhost:~# ifconfig -s Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 7736329 0 2016 0 5289422 0 0 0 BMRU lo 65536 0 18 0 0 0 18 0 0 0 LRU root@localhost:~# ifdown lo root@localhost:~# echo $? 0 root@localhost:~# ifconfig -s Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 7736406 0 2016 0 5289455 0 0 0 BMRU lo 65536 0 18 0 0 0 18 0 0 0 LRU root@localhost:~# ifconfig lo down root@localhost:~# ifconfig -s Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 7736474 0 2016 0 5289481 0 0 0 BMRU root@localhost:~# Also reverted the commit: commit 80b878497663dae08f70b4d3cffe127b57a3cfc which uses absolute paths to binaries called by ifup/ifdown. Upstream-Status: Inappropriate [OE specific] Signed-off-by: Paul Gortmaker Signed-off-by: Maxin B. John Signed-off-by: Yi Zhao --- inet.defn | 140 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 70 insertions(+), 70 deletions(-) diff --git a/inet.defn b/inet.defn index 75e6744..23c7756 100644 --- a/inet.defn +++ b/inet.defn @@ -6,10 +6,10 @@ method loopback This method may be used to define the IPv4 loopback interface. up - /bin/ip link set dev %iface% up if (!iface_is_lo()) + ip link set dev %iface% up if (!iface_is_lo()) down - /bin/ip link set dev %iface% down if (!iface_is_lo()) + ip link set dev %iface% down if (!iface_is_lo()) method static description @@ -36,17 +36,17 @@ method static broadcast compute_v4_broadcast up - /bin/ip addr add %address%[[/%netmask%]] [[broadcast %broadcast%]] \ + ip addr add %address%[[/%netmask%]] [[broadcast %broadcast%]] \ [[peer %pointopoint%]] [[scope %scope%]] dev %iface% label %iface% - /bin/ip link set dev %iface% [[mtu %mtu%]] [[address %hwaddress%]] up + ip link set dev %iface% [[mtu %mtu%]] [[address %hwaddress%]] up - [[ /bin/ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]] + [[ ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]] down - [[ /bin/ip route del default via %gateway% [[metric %metric%]] dev %iface% 2>&1 1>/dev/null || true ]] - /bin/ip addr del %address%[[/%netmask%]] [[broadcast %broadcast%]] \ + [[ ip route del default via %gateway% [[metric %metric%]] dev %iface% 2>&1 1>/dev/null || true ]] + ip addr del %address%[[/%netmask%]] [[broadcast %broadcast%]] \ [[peer %pointopoint%]] [[scope %scope%]] dev %iface% label %iface% - /bin/ip link set dev %iface% down \ + ip link set dev %iface% down \ if (iface_is_link()) method manual @@ -63,12 +63,12 @@ method manual hwaddress cleanup_hwaddress up - [[/bin/ip link set dev %iface% mtu %mtu%]] - [[/bin/ip link set dev %iface% address %hwaddress%]] - /bin/ip link set dev %iface% up 2>/dev/null || true + [[ip link set dev %iface% mtu %mtu%]] + [[ip link set dev %iface% address %hwaddress%]] + ip link set dev %iface% up 2>/dev/null || true down - /bin/ip link set dev %iface% down 2>/dev/null || true \ + ip link set dev %iface% down 2>/dev/null || true \ if (iface_is_link() && !do_all) method dhcp @@ -93,33 +93,33 @@ method dhcp hwaddress cleanup_hwaddress up - [[/bin/ip link set dev %iface% address %hwaddress%]] - /sbin/dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ + [[ip link set dev %iface% address %hwaddress%]] + dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ [[-e IF_METRIC=%metric%]] \ if (execable("/sbin/dhclient")) - /sbin/pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]] \ + pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]] \ elsif (execable("/sbin/pump")) - /sbin/udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-x hostname:%hostname%]] \ + udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-x hostname:%hostname%]] \ elsif (execable("/sbin/udhcpc")) - /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \ + dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \ [[-l %leasetime%]] [[-m %metric%]] %iface% \ elsif (execable("/sbin/dhcpcd")) echo 'No DHCP client software found!' >/dev/stderr; false \ elsif (1) down - /sbin/dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ + dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ if (execable("/sbin/dhclient")) - /sbin/pump -i %iface% -r \ + pump -i %iface% -r \ elsif (execable("/sbin/pump")) - if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface%.pid); fi \ + if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(cat /run/udhcpc.%iface%.pid); kill -TERM $(cat /run/udhcpc.%iface%.pid); fi \ elsif (execable("/sbin/udhcpc")) - /sbin/dhcpcd -k %iface% \ + dhcpcd -k %iface% \ elsif (execable("/sbin/dhcpcd")) echo 'No DHCP client software found!' >/dev/stderr; false \ elsif (1) - /bin/ip link set dev %iface% down \ + ip link set dev %iface% down \ if (iface_is_link()) method bootp @@ -134,11 +134,11 @@ method bootp whatever it really is. up - /sbin/bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \ + bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \ [[--hwaddr %hwaddr%]] --returniffail --serverbcast down - /bin/ip link set dev %iface% down \ + ip link set dev %iface% down \ if (iface_is_link()) method tunnel @@ -158,13 +158,13 @@ method tunnel ttl time -- TTL setting mtu size -- MTU size up - /bin/ip tunnel add %iface% mode %mode% remote %endpoint% [[local %local%]] \ + ip tunnel add %iface% mode %mode% remote %endpoint% [[local %local%]] \ [[ttl %ttl%]] - /bin/ip link set %iface% up [[mtu %mtu%]] - /bin/ip addr add %address%/%netmask% dev %iface% [[peer %dstaddr%]] - [[ /bin/ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]] + ip link set %iface% up [[mtu %mtu%]] + ip addr add %address%/%netmask% dev %iface% [[peer %dstaddr%]] + [[ ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]] down - /bin/ip tunnel del %iface% + ip tunnel del %iface% method ppp description @@ -175,9 +175,9 @@ method ppp unit number -- Use /number/ as the ppp unit number. options string -- Pass /string/ as additional options to pon. up - /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]] + pon [[%provider%]] [[unit %unit%]] [[%options%]] down - /usr/bin/poff [[%provider%]] + poff [[%provider%]] method wvdial description @@ -186,10 +186,10 @@ method wvdial options provider name -- Use /name/ as the provider (from /etc/wvdial.conf). up - /sbin/start-stop-daemon --start -x /usr/bin/wvdial \ + start-stop-daemon --start -x /usr/bin/wvdial \ -p /run/wvdial.%iface%.pid -b -m -- [[ %provider% ]] down - /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \ + start-stop-daemon --stop -x /usr/bin/wvdial \ -p /run/wvdial.%iface%.pid -s 2 @@ -200,9 +200,9 @@ method ipv4ll known as APIPA or IPAC, and often colloquially referred to as "Zeroconf address". up - /usr/sbin/avahi-autoipd -D %iface% + avahi-autoipd -D %iface% down - /usr/sbin/avahi-autoipd --kill %iface% + avahi-autoipd --kill %iface% architecture kfreebsd @@ -211,11 +211,11 @@ method loopback This method may be used to define the IPv4 loopback interface. up - /sbin/ifconfig %iface% 127.0.0.1 up \ + ifconfig %iface% 127.0.0.1 up \ if (!iface_is_lo()) down - /sbin/ifconfig %iface% down \ + ifconfig %iface% down \ if (!iface_is_lo()) method static @@ -238,15 +238,15 @@ method static hwaddress cleanup_hwaddress up - [[ /sbin/ifconfig %iface% link %hwaddress%]] - /sbin/ifconfig %iface% %address% [[netmask %netmask%]] [[broadcast %broadcast%]] \ + [[ ifconfig %iface% link %hwaddress%]] + ifconfig %iface% %address% [[netmask %netmask%]] [[broadcast %broadcast%]] \ [[pointopoint %pointopoint%]] [[media %media%]] [[mtu %mtu%]] \ up - [[ /sbin/route add default %gateway% ]] + [[ route add default %gateway% ]] down - [[ /sbin/route del default %gateway% 2>&1 1>/dev/null || true ]] - /sbin/ifconfig %iface% down + [[ route del default %gateway% 2>&1 1>/dev/null || true ]] + ifconfig %iface% down method manual description @@ -279,30 +279,30 @@ method dhcp hwaddress cleanup_hwaddress up - [[/sbin/ifconfig %iface% link %hwaddress%]] - /sbin/dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ + [[ifconfig %iface% link %hwaddress%]] + dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ [[-e IF_METRIC=%metric%]] \ if (execable("/sbin/dhclient")) - /sbin/udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-H %hostname%]] \ + udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-H %hostname%]] \ [[-c %client%]] \ elsif (execable("/sbin/udhcpc")) - /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \ + dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \ [[-l %leasetime%]] %iface% \ elsif (execable("/sbin/dhcpcd")) echo 'No DHCP client software found!' >/dev/stderr; false \ elsif (1) down - /sbin/dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ + dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \ if (execable("/sbin/dhclient")) - if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface%.pid); fi \ + if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(cat /run/udhcpc.%iface%.pid); kill -TERM $(cat /run/udhcpc.%iface%.pid); fi \ elsif (execable("/sbin/udhcpc")) - /sbin/dhcpcd -k %iface% \ + dhcpcd -k %iface% \ elsif (execable("/sbin/dhcpcd")) echo 'No DHCP client software found!' >/dev/stderr; false \ elsif (1) - /sbin/ifconfig %iface% down + ifconfig %iface% down method bootp description @@ -316,11 +316,11 @@ method bootp whatever it really is. up - /sbin/bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \ + bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \ [[--hwaddr %hwaddr%]] --returniffail --serverbcast down - /sbin/ifconfig %iface% down + ifconfig %iface% down method ppp description @@ -331,9 +331,9 @@ method ppp unit number -- Use /number/ as the ppp unit number. options string -- Pass /string/ as additional options to pon. up - /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]] + pon [[%provider%]] [[unit %unit%]] [[%options%]] down - /usr/bin/poff [[%provider%]] + poff [[%provider%]] method wvdial description @@ -342,10 +342,10 @@ method wvdial options provider name -- Use /name/ as the provider (from /etc/wvdial.conf). up - /sbin/start-stop-daemon --start -x /usr/bin/wvdial \ + start-stop-daemon --start -x /usr/bin/wvdial \ -p /run/wvdial.%iface%.pid -b -m -- [[ %provider% ]] down - /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \ + start-stop-daemon --stop -x /usr/bin/wvdial \ -p /run/wvdial.%iface%.pid -s 2 @@ -356,9 +356,9 @@ method ipv4ll known as APIPA or IPAC, and often colloquially referred to as "Zeroconf address". up - /usr/sbin/avahi-autoipd -D %iface% + avahi-autoipd -D %iface% down - /usr/sbin/avahi-autoipd --kill %iface% + avahi-autoipd --kill %iface% architecture hurd method loopback @@ -432,23 +432,23 @@ method dhcp up [[Warning: Option hwaddress: %hwaddress% not yet supported]] - /sbin/dhclient -v -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \ + dhclient -v -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \ if (execable("/sbin/dhclient")) - /sbin/udhcpc -n -p /run/udhcpc.%iface///.%.pid -i %iface% [[-H %hostname%]] \ + udhcpc -n -p /run/udhcpc.%iface///.%.pid -i %iface% [[-H %hostname%]] \ [[-c %client%]] \ elsif (execable("/sbin/udhcpc")) - /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \ + dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \ [[-l %leasetime%]] %iface% \ elsif (execable("/sbin/dhcpcd")) echo 'No DHCP client software found!' >/dev/stderr; false \ elsif (1) down - /sbin/dhclient -v -r -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \ + dhclient -v -r -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \ if (execable("/sbin/dhclient")) - if test -f /run/udhcpc.%iface///.%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface///.%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface///.%.pid); fi \ + if test -f /run/udhcpc.%iface///.%.pid; then kill -USR2 $(cat /run/udhcpc.%iface///.%.pid); kill -TERM $(cat /run/udhcpc.%iface///.%.pid); fi \ elsif (execable("/sbin/udhcpc")) - /sbin/dhcpcd -k %iface% \ + dhcpcd -k %iface% \ elsif (execable("/sbin/dhcpcd")) echo 'No DHCP client software found!' >/dev/stderr; false \ elsif (1) @@ -482,9 +482,9 @@ method ppp unit number -- Use /number/ as the ppp unit number. options string -- Pass /string/ as additional options to pon. up - /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]] + pon [[%provider%]] [[unit %unit%]] [[%options%]] down - /usr/bin/poff [[%provider%]] + poff [[%provider%]] method wvdial description @@ -493,10 +493,10 @@ method wvdial options provider name -- Use /name/ as the provider (from /etc/wvdial.conf). up - /sbin/start-stop-daemon --start -x /usr/bin/wvdial \ + start-stop-daemon --start -x /usr/bin/wvdial \ -p /run/wvdial.%iface///.%.pid -b -m -- [[ %provider% ]] down - /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \ + start-stop-daemon --stop -x /usr/bin/wvdial \ -p /run/wvdial.%iface///.%.pid -s 2 @@ -507,6 +507,6 @@ method ipv4ll known as APIPA or IPAC, and often colloquially referred to as "Zeroconf address". up - /usr/sbin/avahi-autoipd -D %iface% + avahi-autoipd -D %iface% down - /usr/sbin/avahi-autoipd --kill %iface% + avahi-autoipd --kill %iface% -- 2.7.4