diff options
Diffstat (limited to 'package/base-files/files/etc')
24 files changed, 165 insertions, 137 deletions
diff --git a/package/base-files/files/etc/banner b/package/base-files/files/etc/banner index 058cb5573..3eed7dfc0 100644 --- a/package/base-files/files/etc/banner +++ b/package/base-files/files/etc/banner @@ -4,13 +4,10 @@ |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- - ATTITUDE ADJUSTMENT (%C, %R) + BARRIER BREAKER (%C, %R) ----------------------------------------------------- - * 1/4 oz Vodka Pour all ingredients into mixing - * 1/4 oz Gin tin with ice, strain into glass. - * 1/4 oz Amaretto - * 1/4 oz Triple sec - * 1/4 oz Peach schnapps - * 1/4 oz Sour mix - * 1 splash Cranberry juice + * 1/2 oz Galliano Pour all ingredients into + * 4 oz cold Coffee an irish coffee mug filled + * 1 1/2 oz Dark Rum with crushed ice. Stir. + * 2 tsp. Creme de Cacao ----------------------------------------------------- diff --git a/package/base-files/files/etc/config/network b/package/base-files/files/etc/config/network index a35fd2ef9..87b124aa3 100644 --- a/package/base-files/files/etc/config/network +++ b/package/base-files/files/etc/config/network @@ -12,3 +12,11 @@ config interface lan option proto static option ipaddr 192.168.1.1 option netmask 255.255.255.0 + option ip6assign 60 + +config interface wan6 + option ifname @wan + option proto dhcpv6 + +config globals globals + option ula_prefix auto diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh deleted file mode 120000 index 13b3190e7..000000000 --- a/package/base-files/files/etc/functions.sh +++ /dev/null @@ -1 +0,0 @@ -../lib/functions.sh
\ No newline at end of file diff --git a/package/base-files/files/etc/hotplug.d/net/00-sysctl b/package/base-files/files/etc/hotplug.d/net/00-sysctl new file mode 100644 index 000000000..5d9da8ac0 --- /dev/null +++ b/package/base-files/files/etc/hotplug.d/net/00-sysctl @@ -0,0 +1,6 @@ +#!/bin/sh + +if [ -f /etc/sysctl.conf ] && [ "$ACTION" = add ]; then + sed -ne "/^[[:space:]]*net\..*\.$DEVICENAME\./p" /etc/sysctl.conf | \ + sysctl -e -p - | logger -t sysctl +fi diff --git a/package/base-files/files/etc/hotplug2-common.rules b/package/base-files/files/etc/hotplug2-common.rules deleted file mode 100644 index c284f8f3f..000000000 --- a/package/base-files/files/etc/hotplug2-common.rules +++ /dev/null @@ -1,43 +0,0 @@ - -# uncomment me to log hotplug events -# DEVPATH is set { -# exec logger -s -t hotplug -p daemon.info "name=%DEVNAME%, path=%DEVPATH%" -# } - -$include /etc/hotplug2-platform.rules - -DEVNAME ~~ (^null$|^full$|^ptmx$|^zero$|^gpio|^hvc) { - makedev /dev/%DEVNAME% 0666 - next-event -} - -DEVNAME == mapper/control { - makedev /dev/%DEVNAME% 0600 - next-event -} - -ACTION == add, DEVPATH is set { - makedev /dev/%DEVNAME% 0644 -} - -ACTION == add, DEVPATH is set, DEVNAME ~~ ^tty { - chmod 0666 /dev/%DEVNAME% -} - -ACTION == add, DEVPATH is set, DEVNAME ~~ ^ppp { - chmod 0600 /dev/%DEVNAME% -} - -ACTION == remove, DEVPATH is set, MAJOR is set, MINOR is set { - remove /dev/%DEVNAME% -} - -FIRMWARE is set, ACTION == add { - exec /sbin/hotplug-call firmware - load-firmware /lib/firmware - next-event -} - -SUBSYSTEM == platform { - exec /sbin/hotplug-call %SUBSYSTEM% -} diff --git a/package/base-files/files/etc/hotplug2-init.rules b/package/base-files/files/etc/hotplug2-init.rules deleted file mode 100644 index f01169776..000000000 --- a/package/base-files/files/etc/hotplug2-init.rules +++ /dev/null @@ -1,5 +0,0 @@ -$include /etc/hotplug2-common.rules - -SUBSYSTEM == button { - exec kill -USR1 1 -} diff --git a/package/base-files/files/etc/init.d/boot b/package/base-files/files/etc/init.d/boot index 43837a80f..4f35eac7b 100755 --- a/package/base-files/files/etc/init.d/boot +++ b/package/base-files/files/etc/init.d/boot @@ -24,27 +24,6 @@ system_config() { # apply timezone to kernel date -k - - if [ -x /sbin/syslogd ]; then - local args log_ip log_size log_port log_type log_file - config_get log_ip "$cfg" log_ip - config_get log_size "$cfg" log_size 16 - config_get log_port "$cfg" log_port 514 - config_get log_type "$cfg" log_type circular - config_get log_file "$cfg" log_file "/var/log/messages" - args="${log_ip:+-L -R ${log_ip}:${log_port}} ${conloglevel:+-l $conloglevel}" - if [ "$log_type" = "file" ]; then - args="$args -s $log_size -O $log_file -S" - else - args="$args -C${log_size}" - fi - service_start /sbin/syslogd $args - fi - if [ -x /sbin/klogd ]; then - config_get klogconloglevel "$cfg" klogconloglevel - args="${klogconloglevel:+-c $klogconloglevel}" - service_start /sbin/klogd $args - fi } apply_uci_config() { @@ -66,10 +45,14 @@ start() { touch /var/log/lastlog touch /tmp/resolv.conf.auto ln -sf /tmp/resolv.conf.auto /tmp/resolv.conf - grep -q debugfs /proc/filesystems && mount -t debugfs debugfs /sys/kernel/debug + grep -q debugfs /proc/filesystems && mount -o noatime -t debugfs debugfs /sys/kernel/debug [ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe - load_modules /etc/modules.d/* + if [ -f /sbin/kmodloader ]; then + /sbin/kmodloader + else + load_modules /etc/modules.d/* + fi # allow wifi modules time to settle sleep 1 @@ -84,20 +67,16 @@ start() { config_load system config_foreach system_config system - killall -q hotplug2 - [ -x /sbin/hotplug2 ] && /sbin/hotplug2 --override --persistent \ - --set-rules-file /etc/hotplug2.rules \ - --set-coldplug-cmd /sbin/udevtrigger \ - --max-children 1 >/dev/null 2>&1 & - # create /dev/root if it doesn't exist [ -e /dev/root -o -h /dev/root ] || { rootdev=$(awk 'BEGIN { RS=" "; FS="="; } $1 == "root" { print $2 }' < /proc/cmdline) [ -n "$rootdev" ] && ln -s "$rootdev" /dev/root } -} -stop() { - service_stop /sbin/klogd - service_stop /sbin/syslogd + # early sysctl to avoid networking races + if [ -d /proc/sys/net/ipv6/conf ]; then + for i in /proc/sys/net/ipv6/conf/*/accept_ra; do + echo 0 > $i + done + fi } diff --git a/package/base-files/files/etc/init.d/done b/package/base-files/files/etc/init.d/done index 827866912..8040766dc 100755 --- a/package/base-files/files/etc/init.d/done +++ b/package/base-files/files/etc/init.d/done @@ -5,7 +5,7 @@ START=95 boot() { [ -d /tmp/root ] && { lock /tmp/.switch2jffs - firstboot switch2jffs + switch2jffs lock -u /tmp/.switch2jffs } diff --git a/package/base-files/files/etc/init.d/led b/package/base-files/files/etc/init.d/led index 43964bf0b..729796bcc 100755 --- a/package/base-files/files/etc/init.d/led +++ b/package/base-files/files/etc/init.d/led @@ -24,6 +24,13 @@ load_led() { config_get delayoff $1 delayoff config_get interval $1 interval "50" config_get port_state $1 port_state + config_get delay $1 delay "150" + config_get message $1 message "" + + if [ "$trigger" = "rssi" ]; then + # handled by rssileds userspace process + return + fi [ -e /sys/class/leds/${sysfs}/brightness ] && { echo "setting up led ${name}" @@ -61,6 +68,11 @@ load_led() { echo $port_state > /sys/class/leds/${sysfs}/port_state ;; + "morse") + echo $message > /sys/class/leds/${sysfs}/message + echo $delay > /sys/class/leds/${sysfs}/delay + ;; + switch[0-9]*) local port_mask diff --git a/package/base-files/files/etc/init.d/rcS b/package/base-files/files/etc/init.d/rcS index 3ec9bfef6..9599bbf32 100755 --- a/package/base-files/files/etc/init.d/rcS +++ b/package/base-files/files/etc/init.d/rcS @@ -1,26 +1,9 @@ #!/bin/sh # Copyright (C) 2006 OpenWrt.org -run_scripts() { - for i in /etc/rc.d/$1*; do - [ -x $i ] && $i $2 2>&1 - done | $LOGGER -} - -system_config() { - config_get_bool foreground $1 foreground 0 -} - LOGGER="cat" -[ -x /usr/bin/logger ] && LOGGER="logger -s -p 6 -t sysinit" - -. /lib/functions.sh - -config_load system -config_foreach system_config system +[ -x /usr/bin/logger ] && LOGGER="logger -p 6 -t sysinit" -if [ "$1" = "S" -a "$foreground" != "1" ]; then - run_scripts "$1" "$2" & -else - run_scripts "$1" "$2" -fi +for i in /etc/rc.d/$1*; do + [ -x $i ] && $i $2 2>&1 +done | $LOGGER diff --git a/package/base-files/files/etc/init.d/sysctl b/package/base-files/files/etc/init.d/sysctl index 239779055..3480d6641 100755 --- a/package/base-files/files/etc/init.d/sysctl +++ b/package/base-files/files/etc/init.d/sysctl @@ -1,7 +1,7 @@ #!/bin/sh /etc/rc.common # Copyright (C) 2006 OpenWrt.org -START=99 +START=11 start() { [ -f /etc/sysctl.conf ] && sysctl -p -e >&- } diff --git a/package/base-files/files/etc/init.d/umount b/package/base-files/files/etc/init.d/umount index a4e477e2e..5a750b93c 100755 --- a/package/base-files/files/etc/init.d/umount +++ b/package/base-files/files/etc/init.d/umount @@ -4,5 +4,5 @@ STOP=99 stop() { sync - umount -a -r + umount -a -d -r } diff --git a/package/base-files/files/etc/init.d/usb b/package/base-files/files/etc/init.d/usb index 7b443b651..43cdfd9a9 100755 --- a/package/base-files/files/etc/init.d/usb +++ b/package/base-files/files/etc/init.d/usb @@ -4,6 +4,6 @@ START=39 start() { [ -d /proc/bus/usb ] && { - /bin/mount -t usbfs none /proc/bus/usb + mount -o noatime -t usbfs none /proc/bus/usb } } diff --git a/package/base-files/files/etc/init.d/watchdog b/package/base-files/files/etc/init.d/watchdog deleted file mode 100755 index 299c89142..000000000 --- a/package/base-files/files/etc/init.d/watchdog +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh /etc/rc.common -# Copyright (C) 2008-2011 OpenWrt.org - -START=97 - -start() { - [ -c /dev/watchdog ] || return 1 - [ -x /sbin/watchdog ] || return 1 - service_start /sbin/watchdog -t 5 /dev/watchdog -} -stop() { - service_stop /sbin/watchdog -} diff --git a/package/base-files/files/etc/inittab b/package/base-files/files/etc/inittab index ca90fd8a2..781718593 100644 --- a/package/base-files/files/etc/inittab +++ b/package/base-files/files/etc/inittab @@ -1,4 +1,3 @@ ::sysinit:/etc/init.d/rcS S boot ::shutdown:/etc/init.d/rcS K shutdown -ttyS0::askfirst:/bin/ash --login -tty1::askfirst:/bin/ash --login +::askconsole:/bin/ash --login diff --git a/package/base-files/files/etc/preinit b/package/base-files/files/etc/preinit index 0fdfa8cf8..ff26f96d6 100755 --- a/package/base-files/files/etc/preinit +++ b/package/base-files/files/etc/preinit @@ -2,6 +2,8 @@ # Copyright (C) 2006 OpenWrt.org # Copyright (C) 2010 Vertical Communications +[ -z "$PREINIT" ] && exec /sbin/init + export PATH=/bin:/sbin:/usr/bin:/usr/sbin pi_ifname= @@ -22,7 +24,6 @@ pi_init_path="/bin:/sbin:/usr/bin:/usr/sbin" pi_init_cmd="/sbin/init" . /lib/functions.sh -. /lib/functions/boot.sh boot_hook_init preinit_essential boot_hook_init preinit_main diff --git a/package/base-files/files/etc/rc.button/failsafe b/package/base-files/files/etc/rc.button/failsafe new file mode 100755 index 000000000..dcdf7de80 --- /dev/null +++ b/package/base-files/files/etc/rc.button/failsafe @@ -0,0 +1,2 @@ +#!/bin/sh +touch /tmp/failsafe_button diff --git a/package/base-files/files/etc/rc.button/reset b/package/base-files/files/etc/rc.button/reset new file mode 100755 index 000000000..229b503a6 --- /dev/null +++ b/package/base-files/files/etc/rc.button/reset @@ -0,0 +1,18 @@ +#!/bin/sh + +[ "${ACTION}" = "released" ] || exit 0 + +. /lib/functions.sh + +logger "$BUTTON pressed for $SEEN seconds" + +if [ "$SEEN" -lt 1 ] +then + echo "REBOOT" > /dev/console + sync + reboot +elif [ "$SEEN" -gt 5 ] +then + echo "FACTORY RESET" > /dev/console + jffs2reset -y && reboot & +fi diff --git a/package/base-files/files/etc/rc.button/rfkill b/package/base-files/files/etc/rc.button/rfkill new file mode 100755 index 000000000..7a8cfe91b --- /dev/null +++ b/package/base-files/files/etc/rc.button/rfkill @@ -0,0 +1,23 @@ +#!/bin/sh + +[ "${ACTION}" = "released" ] || exit 0 + +. /lib/functions.sh + +local rfkill_state=0 + +wifi_rfkill_set() { + uci set wireless.$1.disabled=$rfkill_state +} + +wifi_rfkill_check() { + local disabled + config_get disabled $1 disabled + [ "$disabled" = "1" ] || rfkill_state=1 +} + +config_load wireless +config_foreach wifi_rfkill_check wifi-device +config_foreach wifi_rfkill_set wifi-device +uci commit wireless +wifi up diff --git a/package/base-files/files/etc/rc.common b/package/base-files/files/etc/rc.common index fa2df6cd2..78e2dd494 100755 --- a/package/base-files/files/etc/rc.common +++ b/package/base-files/files/etc/rc.common @@ -75,10 +75,41 @@ $EXTRA_HELP EOF } +# for procd +start_service() { + return 0 +} + +stop_service() { + return 0 +} + ${INIT_TRACE:+set -x} . "$initscript" +[ -n "$USE_PROCD" ] && { + . $IPKG_INSTROOT/lib/functions/procd.sh + + rc_procd() { + procd_open_service "$(basename "$initscript")" "$initscript" + "$@" + procd_close_service + } + + start() { + rc_procd start_service "$@" + } + + stop() { + procd_kill "$(basename "$initscript")" "$1" + } + + reload() { + start + } +} + ALL_COMMANDS="start stop reload restart boot shutdown enable disable enabled depends ${EXTRA_COMMANDS}" list_contains ALL_COMMANDS "$action" || action=help [ "$action" = "reload" ] && action='eval reload "$@" || restart "$@" && :' diff --git a/package/base-files/files/etc/sysctl.conf b/package/base-files/files/etc/sysctl.conf index b39bc5747..890e77af8 100644 --- a/package/base-files/files/etc/sysctl.conf +++ b/package/base-files/files/etc/sysctl.conf @@ -12,12 +12,8 @@ net.ipv4.tcp_timestamps=1 net.ipv4.tcp_sack=1 net.ipv4.tcp_dsack=1 -net.ipv4.netfilter.ip_conntrack_checksum=0 -net.ipv4.netfilter.ip_conntrack_max=16384 -net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=3600 -net.ipv4.netfilter.ip_conntrack_udp_timeout=60 -net.ipv4.netfilter.ip_conntrack_udp_timeout_stream=180 -net.ipv6.conf.all.forwarding=1 +net.ipv6.conf.default.forwarding=2 +net.ipv6.conf.all.forwarding=2 net.netfilter.nf_conntrack_acct=1 net.netfilter.nf_conntrack_checksum=0 diff --git a/package/base-files/files/etc/uci-defaults/migrate-shadow b/package/base-files/files/etc/uci-defaults/10_migrate-shadow index b7ea5718c..b7ea5718c 100644 --- a/package/base-files/files/etc/uci-defaults/migrate-shadow +++ b/package/base-files/files/etc/uci-defaults/10_migrate-shadow diff --git a/package/base-files/files/etc/uci-defaults/11_migrate-sysctl b/package/base-files/files/etc/uci-defaults/11_migrate-sysctl new file mode 100644 index 000000000..b3796a4d2 --- /dev/null +++ b/package/base-files/files/etc/uci-defaults/11_migrate-sysctl @@ -0,0 +1,17 @@ +#!/bin/sh + +if [ ! -f "/rom/etc/sysctl.conf" ] || cmp -s "/rom/etc/sysctl.conf" "/etc/sysctl.conf"; then + exit 0 +fi + +fingerprint="$(md5sum /etc/sysctl.conf)" +fingerprint="${fingerprint%% *}" + +if [ "$fingerprint" = "1b05ebb41f72cb84e5510573cd4aca26" ] || \ + [ "$fingerprint" = "62deb895be1a7f496040187b7c930e4e" ]; then + logger -t migrate-sysctl "Updating sysctl.conf to use current defaults" + cp "/rom/etc/sysctl.conf" "/etc/sysctl.conf" +fi + +exit 0 + diff --git a/package/base-files/files/etc/uci-defaults/12_network-generate-ula b/package/base-files/files/etc/uci-defaults/12_network-generate-ula new file mode 100644 index 000000000..f3e493145 --- /dev/null +++ b/package/base-files/files/etc/uci-defaults/12_network-generate-ula @@ -0,0 +1,18 @@ +#!/bin/sh + +[ "$(uci get network.globals.ula_prefix)" != "auto" ] && exit 0 +# Sometimes results are empty, therefore try until it works... +local r1 r2 r3 +while [ -z "$r1" -o -z "$r2" -o -z "$r3" ]; do + r1=$(printf "%02x" $(($(</dev/urandom tr -dc 0-9 | dd bs=9 count=1) % 256))) + r2=$(printf "%01x" $(($(</dev/urandom tr -dc 0-9 | dd bs=9 count=1) % 65536))) + r3=$(printf "%01x" $(($(</dev/urandom tr -dc 0-9 | dd bs=9 count=1) % 65536))) +done + +uci -q batch <<-EOF >/dev/null + set network.globals.ula_prefix=fd$r1:$r2:$r3::/48 + commit network +EOF + +exit 0 + |