diff options
author | John Crispin <john@openwrt.org> | 2014-02-18 13:33:40 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2014-02-18 13:33:40 +0000 |
commit | 7917a87d121fa5b805ea09daf3463ad1fae3c3f1 (patch) | |
tree | ed918a4e930523455517b1d8aa3d5391c96fc4c2 /package/base-files/files/etc/init.d/system | |
parent | 204e859542d46d34d988b56158eaff0e1d99cfb8 (diff) | |
download | upstream-7917a87d121fa5b805ea09daf3463ad1fae3c3f1.tar.gz upstream-7917a87d121fa5b805ea09daf3463ad1fae3c3f1.tar.bz2 upstream-7917a87d121fa5b805ea09daf3463ad1fae3c3f1.zip |
base-files: split /etc/init.d/boot into 2 files
this allows us to bind a procd trigger to system.@system[-1]
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 39615
Diffstat (limited to 'package/base-files/files/etc/init.d/system')
-rwxr-xr-x | package/base-files/files/etc/init.d/system | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/package/base-files/files/etc/init.d/system b/package/base-files/files/etc/init.d/system new file mode 100755 index 0000000000..24a9fdee68 --- /dev/null +++ b/package/base-files/files/etc/init.d/system @@ -0,0 +1,51 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2014 OpenWrt.org + +START=10 +USE_PROCD=1 + +validate_system_section() +{ + uci_validate_section system system "${1}" \ + 'hostname:string:OpenWrt' \ + 'conloglevel:uinteger' \ + 'buffersize:uinteger' \ + 'timezone:string:UTC' \ + 'zonename:string' + + return $? +} + +system_config() { + local cfg="$1" + + local hostname conloglevel buffersize timezone zonename + + validate_system_section "${1}" || { + echo "validation failed" + return 1 + } + + echo "$hostname" > /proc/sys/kernel/hostname + [ -z "$conloglevel" -a -z "$buffersize" ] || dmesg ${conloglevel:+-n $conloglevel} ${buffersize:+-s $buffersize} + echo "$timezone" > /tmp/TZ + [ -n "$zonename" ] && [ -f "/usr/share/zoneinfo/$zonename" ] && ln -s "/usr/share/zoneinfo/$zonename" /tmp/localtime + + # apply timezone to kernel + date -k +} + +reload_service() { + config_load system + config_foreach system_config system +} + +service_triggers() +{ + procd_add_reload_trigger "system" + procd_add_validation validate_system_section +} + +start_service() { + reload_service +} |