diff options
Diffstat (limited to 'test/upstart-jobs/dhclient.nix')
-rw-r--r-- | test/upstart-jobs/dhclient.nix | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/upstart-jobs/dhclient.nix b/test/upstart-jobs/dhclient.nix new file mode 100644 index 00000000000..8a5c4fe9a5f --- /dev/null +++ b/test/upstart-jobs/dhclient.nix @@ -0,0 +1,29 @@ +{dhcp}: + +{ + name = "dhclient"; + + job = " +description \"DHCP client\" + +start on startup +stop on shutdown + +script + interfaces= + for i in $(cd /sys/class/net && ls -d *); do + if test \"$i\" != \"lo\" -a \"$(cat /sys/class/net/$i/operstate)\" != 'down'; then + interfaces=\"$interfaces $i\" + fi + done + + if test -z \"$interfaces\"; then + echo 'No interfaces on which to start dhclient!' + exit 1 + fi + + exec ${dhcp}/sbin/dhclient -d $interfaces +end script + "; + +} |