Changeset 38023


Ignore:
Timestamp:
2013-09-17T23:45:30+02:00 (3 years ago)
Author:
blogic
Message:

procd: convert various packages to procd style init.d scripts

Signed-off-by: John Crispin <blogic@…>

Location:
trunk/package
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/network/config/netifd/files/etc/init.d/network

    r36883 r38023  
    44STOP=90 
    55 
    6 SERVICE_DAEMONIZE=1 
    7 SERVICE_WRITE_PID=1 
     6USE_PROCD=1 
    87 
    9 start() { 
    10         stop 
     8start_service() { 
    119        [ -e /proc/sys/kernel/core_pattern ] && { 
    1210                ulimit -c unlimited 
    1311                echo '/tmp/%e.%p.%s.%t.core' > /proc/sys/kernel/core_pattern 
    1412        } 
    15         service_start /sbin/netifd 
     13        procd_open_instance 
     14        procd_set_param command /sbin/netifd 
     15        procd_set_param respawn 
     16        procd_close_instance 
     17} 
    1618 
     19reload_service() { 
     20        ubus call network reload 
     21        /sbin/wifi down 
     22        /sbin/wifi up 
     23} 
     24 
     25stop_service() { 
     26        /sbin/wifi down 
     27} 
     28 
     29service_running() { 
    1730        setup_switch() { return 0; } 
    1831 
     
    2639} 
    2740 
     41service_triggers() 
     42{ 
     43        procd_add_reload_trigger "network" 
     44} 
     45 
    2846restart() { 
    2947        ifdown -a 
    3048        sleep 1 
    31         start 
     49        trap '' TERM 
     50        stop "$@" 
     51        start "$@" 
    3252} 
    3353 
     
    3656        stop 
    3757} 
    38  
    39 stop() { 
    40         /sbin/wifi down 
    41         service_stop /sbin/netifd 
    42 } 
    43  
    44 reload() { 
    45         ubus call network reload 
    46         /sbin/wifi down 
    47         /sbin/wifi up 
    48 } 
  • trunk/package/network/services/dnsmasq/files/dnsmasq.init

    r36943 r38023  
    44START=60 
    55 
    6 SERVICE_USE_PID=1 
     6USE_PROCD=1 
     7PROG=/usr/sbin/dnsmasq 
    78 
    89DNS_SERVERS="" 
     
    480481} 
    481482 
    482 start() { 
     483service_triggers() 
     484{ 
     485        procd_add_reload_trigger "dhcp" 
     486} 
     487 
     488start_service() { 
    483489        include /lib/network 
    484490        scan_interfaces 
     
    488494 
    489495        config_load dhcp 
     496 
     497        procd_open_instance 
     498        procd_set_param command $PROG -C $CONFIGFILE -k 
     499        procd_close_instance 
    490500 
    491501        # before we can call xappend 
     
    529539        echo >> $CONFIGFILE 
    530540 
    531         service_start /usr/sbin/dnsmasq -C $CONFIGFILE && { 
     541        rm -f /tmp/resolv.conf 
     542        [ $ADD_LOCAL_DOMAIN -eq 1 ] && [ -n "$DOMAIN" ] && { 
     543                echo "search $DOMAIN" >> /tmp/resolv.conf 
     544        } 
     545        DNS_SERVERS="$DNS_SERVERS 127.0.0.1" 
     546        for DNS_SERVER in $DNS_SERVERS ; do 
     547                echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf 
     548        done 
     549} 
     550 
     551stop_service() { 
     552        [ -f /tmp/resolv.conf ] && { 
    532553                rm -f /tmp/resolv.conf 
    533                 [ $ADD_LOCAL_DOMAIN -eq 1 ] && [ -n "$DOMAIN" ] && { 
    534                         echo "search $DOMAIN" >> /tmp/resolv.conf 
    535                 } 
    536                 DNS_SERVERS="$DNS_SERVERS 127.0.0.1" 
    537                 for DNS_SERVER in $DNS_SERVERS ; do 
    538                         echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf 
    539                 done 
    540         } 
    541 } 
    542  
    543 stop() { 
    544         service_stop /usr/sbin/dnsmasq && { 
    545                 [ -f /tmp/resolv.conf ] && { 
    546                         rm -f /tmp/resolv.conf 
    547                         ln -s /tmp/resolv.conf.auto /tmp/resolv.conf 
    548                 } 
    549         } 
    550 } 
     554                ln -s /tmp/resolv.conf.auto /tmp/resolv.conf 
     555        } 
     556} 
  • trunk/package/network/services/dropbear/files/dropbear.init

    r37245 r38023  
    124124service_triggers() 
    125125{ 
    126         procd_add_config_trigger "dropbear" "/etc/init.d/dropbear" "restart" 
     126        procd_add_reload_trigger "dropbear" 
    127127} 
    128128 
  • trunk/package/network/services/ipset-dns/files/ipset-dns.init

    r36554 r38023  
    44START=61 
    55 
    6 SERVICE_DAEMONIZE=1 
    7 SERVICE_WRITE_PID=1 
    8  
     6USE_PROCD=1 
    97 
    108find_nameserver() { 
     
    3937        config_get port "$cfg" port $((PORT++)) 
    4038 
    41         SERVICE_PID_FILE="/var/run/ipset-dns-$port.pid" \ 
    42                 service_start /usr/sbin/ipset-dns "$ipset" "$ipset6" "$port" "$dns" 
     39        procd_open_instance 
     40        procd_set_param command /usr/sbin/ipset-dns "$ipset" "$ipset6" "$port" "$dns" 
     41        procd_set_param env NO_DAEMONIZE=1 
     42        procd_set_param respawn 
     43        procd_close_instance 
    4344} 
    4445 
    45 start() { 
     46service_triggers() 
     47{ 
     48        procd_add_reload_trigger "ipset-dns" 
     49} 
     50 
     51start_service() { 
    4652        PORT=53001 
    4753        DEFNS="$(find_nameserver)" 
    48  
    49         # required by ipset-dns to not daemonize itself 
    50         export NO_DAEMONIZE=1 
    5154 
    5255        config_load ipset-dns 
    5356        config_foreach start_instance ipset-dns 
    5457} 
    55  
    56 stop() { 
    57         local pid 
    58         for pid in /var/run/ipset-dns-*.pid; do 
    59                 [ -f "$pid" ] || continue 
    60                 SERVICE_PID_FILE="$pid" \ 
    61                         service_stop /usr/sbin/ipset-dns 
    62                 rm -f "$pid" 
    63         done 
    64 } 
    65  
  • trunk/package/network/services/relayd/files/relay.init

    r31712 r38023  
    33START=80 
    44 
     5USE_PROCD=1 
     6PROG=/usr/sbin/relayd 
     7 
    58resolve_ifname() { 
    69        grep -qs "^ *$1:" /proc/net/dev && { 
    7                 append args "-I $1" 
     10                procd_append_param command -I "$1" 
    811                append ifaces "$1" 
    912        } 
     
    3841        } 
    3942 
     43        procd_open_instance 
     44        procd_set_param command "$PROG" 
     45 
    4046        local net networks 
    4147        config_get networks "$cfg" network 
     
    5460        local ipaddr 
    5561        config_get ipaddr "$cfg" ipaddr 
    56         [ -n "$ipaddr" ] && append args "-L $ipaddr" 
     62        [ -n "$ipaddr" ] && procd_append_param command -L "$ipaddr" 
    5763 
    5864        local gateway 
    5965        config_get gateway "$cfg" gateway 
    60         [ -n "$gateway" ] && append args "-G $gateway" 
     66        [ -n "$gateway" ] && procd_append_param command -G "$gateway" 
    6167 
    6268        local expiry # = 30 
    6369        config_get expiry "$cfg" expiry 
    64         [ -n "$expiry" ] && append args "-t $expiry" 
     70        [ -n "$expiry" ] && procd_append_param command "$expiry" 
    6571 
    6672        local retry # = 5 
    6773        config_get retry "$cfg" retry 
    68         [ -n "$retry" ] && append args "-p $retry" 
     74        [ -n "$retry" ] && procd_append_param command -p "$retry" 
    6975 
    7076        local table # = 16800 
    7177        config_get table "$cfg" table 
    72         [ -n "$table" ] && append args "-T $table" 
     78        [ -n "$table" ] && procd_append_param command -T "$table" 
    7379 
    7480        local fwd_bcast # = 1 
    7581        config_get_bool fwd_bcast "$cfg" forward_bcast 1 
    76         [ $fwd_bcast -eq 1 ] && append args "-B" 
     82        [ $fwd_bcast -eq 1 ] && procd_append_param command "-B" 
    7783 
    7884        local fwd_dhcp # = 1 
    7985        config_get_bool fwd_dhcp "$cfg" forward_dhcp 1 
    80         [ $fwd_dhcp -eq 1 ] && append args "-D" 
     86        [ $fwd_dhcp -eq 1 ] && procd_append_param command"-D" 
    8187 
    82         service_start /usr/sbin/relayd $args 
     88        procd_close_instance 
    8389} 
    8490 
    85 stop() { 
    86         for pid in /var/run/relay-*.pid; do 
    87                 SERVICE_PID_FILE="$pid" 
    88                 service_stop /usr/sbin/relayd 
    89                 rm -f "$SERVICE_PID_FILE" 
    90         done 
     91service_triggers() 
     92{ 
     93        procd_add_reload_trigger "network" 
    9194} 
    9295 
    93 start() { 
     96start_service() { 
    9497        include /lib/network 
    9598        config_load network 
  • trunk/package/network/services/uhttpd/files/uhttpd.init

    r36932 r38023  
    44START=50 
    55 
    6 SERVICE_DAEMONIZE=1 
    7 SERVICE_WRITE_PID=1 
     6USE_PROCD=1 
    87 
    98UHTTPD_BIN="/usr/sbin/uhttpd" 
     
    1817 
    1918        config_get val "$cfg" "$var" 
    20         [ -n "$val" -o -n "$def" ] && append UHTTPD_ARGS "$opt ${val:-$def}" 
     19        [ -n "$val" -o -n "$def" ] && procd_append_param command "$opt" "${val:-$def}" 
    2120} 
    2221 
     
    2928 
    3029        config_get_bool val "$cfg" "$var" "$def" 
    31         [ "$val" = 1 ] && append UHTTPD_ARGS "$opt" 
     30        [ "$val" = 1 ] && procd_append_param command "$opt" 
    3231} 
    3332 
     
    5453start_instance() 
    5554{ 
    56         UHTTPD_ARGS="" 
    5755        UHTTPD_CERT="" 
    5856        UHTTPD_KEY="" 
     
    6159        local realm="$(uci_get system.@system[0].hostname)" 
    6260        local listen http https interpreter indexes path 
     61 
     62        procd_open_instance 
     63        procd_set_param command "$UHTTPD_BIN" -f 
    6364 
    6465        append_arg "$cfg" home "-h" 
     
    8586        config_get http "$cfg" listen_http 
    8687        for listen in $http; do 
    87                 append UHTTPD_ARGS "-p $listen" 
     88                 procd_append_param command -p "$listen" 
    8889        done 
    8990 
    9091        config_get interpreter "$cfg" interpreter 
    9192        for path in $interpreter; do 
    92                 append UHTTPD_ARGS "-i $path" 
     93                procd_append_param command -i "$path" 
    9394        done 
    9495 
    9596        config_get indexes "$cfg" index_page 
    9697        for path in $indexes; do 
    97                 append UHTTPD_ARGS "-I $path" 
     98                procd_append_param command -I "$path" 
    9899        done 
    99100 
     
    117118        } 
    118119 
    119         SERVICE_PID_FILE=/var/run/uhttpd_${cfg}.pid 
    120         service_start $UHTTPD_BIN -f $UHTTPD_ARGS 
     120        procd_close_instance 
    121121 
    122122        # Check if daemon is running, if not then 
    123123        # re-execute in foreground to display error. 
    124         sleep 1 && service_check $UHTTPD_BIN || \ 
    125                 $UHTTPD_BIN -f $UHTTPD_ARGS 
     124#       sleep 1 && service_check $UHTTPD_BIN || \ 
     125#               $UHTTPD_BIN -f $UHTTPD_ARGS 
    126126} 
    127127 
    128 stop_instance() 
     128service_triggers() 
    129129{ 
    130         local cfg="$1" 
    131  
    132         SERVICE_PID_FILE=/var/run/uhttpd_${cfg}.pid 
    133         service_stop $UHTTPD_BIN 
     130        procd_add_reload_trigger "uhttpd" 
    134131} 
    135132 
    136 start() { 
     133start_service() { 
    137134        config_load uhttpd 
    138135        config_foreach start_instance uhttpd 
    139136} 
    140  
    141 stop() { 
    142         config_load uhttpd 
    143         config_foreach stop_instance uhttpd 
    144 } 
  • trunk/package/system/procd/files/log.init

    r37508 r38023  
    99NAME=logread 
    1010PROG=/sbin/logread 
    11 PIDCOUNT=1 
    1211 
    1312start_service_file() 
     
    2524        [ -n "${log_size}" ] && procd_append_param command -S "$log_size" 
    2625        procd_close_instance 
    27  
    28         PIDCOUNT="$(( ${PIDCOUNT} + 1))" 
    2926} 
    3027 
     
    4441        [ "${log_proto}" != "udp" ] || procd_append_param command -u 
    4542        procd_close_instance 
    46  
    47         PIDCOUNT="$(( ${PIDCOUNT} + 1))" 
    4843} 
    4944 
  • trunk/package/system/rpcd/files/rpcd.init

    r37921 r38023  
    33START=12 
    44 
    5 SERVICE_DAEMONIZE=1 
    6 SERVICE_WRITE_PID=1 
     5USE_PROCD=1 
     6NAME=rpcd 
     7PROG=/sbin/rpcd 
    78 
    8 start() { 
    9         service_start /sbin/rpcd 
     9start_service() { 
     10        procd_open_instance 
     11        procd_set_param command "$PROG" 
     12        procd_close_instance 
    1013} 
    1114 
  • trunk/package/utils/busybox/files/sysntpd

    r37681 r38023  
    2828                done 
    2929        } 
     30        procd_set_param respawn 
    3031        procd_close_instance 
    3132} 
     33 
     34service_triggers() 
     35{ 
     36        procd_add_reload_trigger "system" 
     37} 
Note: See TracChangeset for help on using the changeset viewer.