From f85eb6d428598db0d0c0e4b9e94d8d0bcab0f512 Mon Sep 17 00:00:00 2001 From: nbd Date: Fri, 21 Oct 2011 01:47:49 +0000 Subject: add an initial (experimental) version of netifd, disabled by default git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28499 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/netifd/files/etc/hotplug.d/iface/00-netstate | 5 +++++ package/netifd/files/etc/init.d/netifd | 18 ++++++++++++++++++ package/netifd/files/etc/init.d/network | 20 ++++++++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 package/netifd/files/etc/hotplug.d/iface/00-netstate create mode 100755 package/netifd/files/etc/init.d/netifd create mode 100755 package/netifd/files/etc/init.d/network (limited to 'package/netifd/files/etc') diff --git a/package/netifd/files/etc/hotplug.d/iface/00-netstate b/package/netifd/files/etc/hotplug.d/iface/00-netstate new file mode 100644 index 000000000..d5cf76166 --- /dev/null +++ b/package/netifd/files/etc/hotplug.d/iface/00-netstate @@ -0,0 +1,5 @@ +[ ifup = "$ACTION" ] && { + uci_toggle_state network "$INTERFACE" up 1 + uci_toggle_state network "$INTERFACE" connect_time $(sed -ne 's![^0-9].*$!!p' /proc/uptime) + [ -n "$DEVICE" ] && uci_toggle_state network "$INTERFACE" ifname "$DEVICE" +} diff --git a/package/netifd/files/etc/init.d/netifd b/package/netifd/files/etc/init.d/netifd new file mode 100755 index 000000000..e1047e7a8 --- /dev/null +++ b/package/netifd/files/etc/init.d/netifd @@ -0,0 +1,18 @@ +#!/bin/sh /etc/rc.common +START=20 +PIDFILE=/var/run/netifd.pid + +start() { + stop + start-stop-daemon -S -b -m -p $PIDFILE -x /sbin/netifd +} + +reload() { + ubus call network reload +} + +stop() { + [ -e "$PIDFILE" ] || return + start-stop-daemon -K -p $PIDFILE -x /sbin/netifd + rm -f "$PIDFILE" +} diff --git a/package/netifd/files/etc/init.d/network b/package/netifd/files/etc/init.d/network new file mode 100755 index 000000000..d7d87350e --- /dev/null +++ b/package/netifd/files/etc/init.d/network @@ -0,0 +1,20 @@ +#!/bin/sh /etc/rc.common +START=40 +STOP=90 + +start() { + setup_switch() { return 0; } + + include /lib/network + setup_switch + + ubus call network reload +} + +restart() { + start +} + +stop() { + /sbin/ifdown -a +} -- cgit v1.2.3