OpenWrt – Rev 4

Subversion Repositories:
Rev:
#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org

START=50

USE_PROCD=1
PROG=/usr/sbin/crond

validate_cron_section() {
        uci_validate_section system system "${1}" \
                'cronloglevel:uinteger'
}

start_service() {
        [ -z "$(ls /etc/crontabs/)" ] && return 1

        loglevel="$(uci_get "system.@system[0].cronloglevel")"

        [ -z "${loglevel}" ] || {
                /sbin/validate_data uinteger "${loglevel}" 2>/dev/null
                [ "$?" -eq 0 ] || {
                        echo "validation failed"
                        return 1
                }
        }

        mkdir -p /var/spool/cron
        ln -s /etc/crontabs /var/spool/cron/ 2>/dev/null

        procd_open_instance
        procd_set_param command "$PROG" -f -c /etc/crontabs -l "${loglevel:-5}"
        for crontab in /etc/crontabs/*; do
                 procd_set_param file "$crontab"
        done
        procd_close_instance
}

service_triggers() {
        procd_add_validation validate_cron_section
}