aboutsummaryrefslogtreecommitdiffstats
path: root/sysconfig/network-scripts
diff options
context:
space:
mode:
authorBill Nottingham <notting@redhat.com>2000-12-12 07:50:00 +0000
committerBill Nottingham <notting@redhat.com>2000-12-12 07:50:00 +0000
commitf29c352a905cc0867eb0198eacc7734fd651e525 (patch)
treeecf1b67cd129b7bdf9afcc209647be2a64f66164 /sysconfig/network-scripts
parent6cdbc1fbbfd1de615402e1ddcc1dbb1590b69dd5 (diff)
downloadinitscripts-f29c352a905cc0867eb0198eacc7734fd651e525.tar
initscripts-f29c352a905cc0867eb0198eacc7734fd651e525.tar.gz
initscripts-f29c352a905cc0867eb0198eacc7734fd651e525.tar.bz2
initscripts-f29c352a905cc0867eb0198eacc7734fd651e525.tar.xz
initscripts-f29c352a905cc0867eb0198eacc7734fd651e525.zip
fix ARP handling, allow for setting promiscuous or all-multicast mode
Diffstat (limited to 'sysconfig/network-scripts')
-rwxr-xr-xsysconfig/network-scripts/ifup6
-rw-r--r--sysconfig/network-scripts/network-functions14
2 files changed, 19 insertions, 1 deletions
diff --git a/sysconfig/network-scripts/ifup b/sysconfig/network-scripts/ifup
index 361ede87..63a89fff 100755
--- a/sysconfig/network-scripts/ifup
+++ b/sysconfig/network-scripts/ifup
@@ -120,7 +120,11 @@ else
eval `/bin/ipcalc --network ${IPADDR} ${NETMASK}`
fi
- ifconfig ${DEVICE} ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST} ${ARP:+arp} ${MTU:+mtu $MTU}
+ ifconfig ${DEVICE} ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST} \
+ $(toggle_value arp $ARP) \
+ $(toggle_value promisc $PROMISC) \
+ $(toggle_value allmulti $ALLMULTI)
+
# don't re-add subnet route on 2.2 kernels, but add a route
# to a non-local subnet.
# stupid hack, but it should work
diff --git a/sysconfig/network-scripts/network-functions b/sysconfig/network-scripts/network-functions
index dd566ad6..648cb95d 100644
--- a/sysconfig/network-scripts/network-functions
+++ b/sysconfig/network-scripts/network-functions
@@ -17,6 +17,20 @@ source_config ()
. $CONFIG
}
+toggle_value()
+{
+ if [ -z "$2" ]
+ then
+ echo ''
+ elif [ "$2" = "yes" -o "$2" = "YES" ] ; then
+ echo "$1"
+ elif [ "$2" = "no" -o "$2" = "NO" ] ; then
+ echo "-$1"
+ else
+ echo ''
+ fi
+}
+
do_netreport ()
{
# Notify programs that have requested notification