]> git.pld-linux.org Git - projects/rc-scripts.git/blame - lib/ifup-post
- fix sysctl setting for interfaces with dot in name, patch by Adam Osuchowski <adwol>
[projects/rc-scripts.git] / lib / ifup-post
CommitLineData
12de71be 1#!/bin/sh
b0443108 2#
ec8b15cb 3# $Id$
b0443108 4#
7742e157 5
201c98b9
AM
6run_up() { :; }
7
dd4a755f 8. /etc/rc.d/init.d/functions
f3002e12 9. /etc/sysconfig/network
f67ce454 10. /lib/rc-scripts/functions.network
7742e157
AF
11
12need_hostname
12de71be 13CONFIG=$1
7742e157
AF
14source_config
15
de1fc6ce
JR
16# set all major variables
17setup_ip_param
38198f50 18
de1fc6ce 19# set REALDEVICE
919bed72
JK
20get_ppp_device_and_pid
21
45f7fc7c
AM
22# Simple QoS support (bandwidth limit)
23if [ -n "${BANDWIDTH_OUT}" ]; then
5e6dfc29
JR
24 if [ "${QDISC_CLASS}" = "htb" -o "${QDISC_CLASS}" = "cbq" ]; then
25 case "${QDISC_CLASS}" in
26 htb)
27 tc qdisc add dev ${REALDEVICE} root handle 1: htb default 10
28 tc class add dev ${REALDEVICE} parent 1: classid 1:10 htb rate ${BANDWIDTH_OUT}kbit ceil ${BANDWIDTH_OUT}kbit
29 [ -n "${QDISC}" ] && tc qdisc add dev ${REALDEVICE} parent 1:10 ${QDISC}
30 ;;
31 cbq)
32 # FIXME: hardcoded ethernet speed (bandwidth)
33 tc qdisc add dev ${REALDEVICE} root handle 1: cbq bandwidth 100000kbit cell 8 avpkt 1000 mpu 64
34 tc class add dev ${REALDEVICE} parent 1: classid 1:10 cbq bandwidth 100000kbit rate ${BANDWIDTH_OUT}kbit maxburst 5 avpkt 1000 allot 1514 bounded
35 [ -n "${QDISC}" ] && tc qdisc add dev ${REALDEVICE} parent 1:10 ${QDISC}
36 tc filter add dev ${REALDEVICE} protocol ip parent 1: u32 match ip src 0.0.0.0/0 flowid 1:10
37 ;;
38 esac
39 elif [ -z "${QDISC}" -o "${QDISC}" = "tbf" ]; then
40 tc qdisc add dev ${REALDEVICE} root tbf rate ${BANDWIDTH_OUT}kbit latency 50ms burst 51200
41 elif [ -n "${QDISC}" ]; then
42 tc qdisc add dev ${REALDEVICE} root ${QDISC}
43 fi
45f7fc7c 44else
5e6dfc29
JR
45 if [ -n "${QDISC}" ]; then
46 tc qdisc add dev ${REALDEVICE} root ${QDISC}
47 fi
45f7fc7c
AM
48fi
49
50if [ -n "${BANDWIDTH_IN}" ]; then
5e6dfc29
JR
51 tc qdisc add dev ${REALDEVICE} handle ffff: ingress
52 tc filter add dev ${REALDEVICE} parent ffff: protocol ip prio 50 u32 match ip src 0.0.0.0/0 police rate ${BANDWIDTH_IN}kbit burst 10k drop flowid :3
919bed72
JK
53fi
54
f67ce454
ER
55. /lib/rc-scripts/ifup-aliases
56. /lib/rc-scripts/ifup-routes
57. /lib/rc-scripts/ifup-neigh
7742e157 58
de1fc6ce
JR
59# don't set hostname on ppp/slip connections
60if [ -n "$NEEDHOSTNAME" -a "${DEVICETYPE}" != "ppp" -a "${DEVICETYPE}" != "slip" ]; then
5e6dfc29
JR
61 IPADDR=$(ip -f inet addr show dev ${DEVICE} |
62 awk '/inet/ { print $2 }' |awk -F"/" '{ print $1 }')
63 eval $(/bin/ipcalc --silent --hostname ${IPADDR}) && set_hostname $HOSTNAME
7742e157
AF
64fi
65
de1fc6ce
JR
66# run tleds software
67if [ "$TLEDS_DEV" = "$DEVICE" -a -x /usr/bin/tleds ]; then
5e6dfc29 68 /usr/bin/tleds -qc "$DEVICE"
7742e157
AF
69fi
70
201c98b9 71# execute run_up() function (if available in device configuration file)
de1fc6ce 72run_up
97c76ad5 73
7742e157
AF
74# Notify programs that have requested notification
75do_netreport
76
77exit 0
This page took 0.113698 seconds and 4 git commands to generate.