#!/bin/sh uci_get_one() { for var in "$@"; do uci -P /var/state get "$var" 2>/dev/null && break done } local servers=$(uci_get_one "network.wan.lease_timesrv" \ "system.time.rdate_servers" "freifunk.time.rdate_servers") if [ -n "$servers" ]; then for server in $servers; do rdate -s $server >/dev/null 2>/dev/null && \ logger -t rdate "Synced with $server" && break logger -t rdate "Failed to sync with $server" done else logger -t rdate "No usable time server found" fi