summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomek Mrugalski <tomasz@isc.org>2017-05-18 22:00:51 +0200
committerTomek Mrugalski <tomasz@isc.org>2017-06-21 19:22:30 +0200
commitc788d4f8d4e8cea9913d46ee0a24c67f3cd78e98 (patch)
treeb54fa40bd541974904bfe389f2f9b5fbe1fa6f5a
parent9b7d458d6464c4c417b4cc0275da4e88355d7f6c (diff)
downloadisc-dhcp-c788d4f8d4e8cea9913d46ee0a24c67f3cd78e98.tar.gz
[19430] dhclient now calls script with reason=FAIL even with -1 option
-rw-r--r--RELNOTES5
-rw-r--r--client/dhclient.c10
2 files changed, 15 insertions, 0 deletions
diff --git a/RELNOTES b/RELNOTES
index b5817c4b..bed0403b 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -54,6 +54,11 @@ by Eric Young (eay@cryptsoft.com).
Changes since 4.3.0 (new features)
+- Client now calls the script with reason set to FAIL when run with -1 (ony try)
+ and there are no sever responses. Thank you Andrew Pollock for providing
+ an initial patch.
+ [ISC-bugs #18183]
+
- Insert the raw data from a fully encapsualted option into the option cache.
This allows "exists" to check for the option if any sub options exist. It
also adds the raw data to the environment variables supplied to the client
diff --git a/client/dhclient.c b/client/dhclient.c
index ad3c899b..1f07d20c 100644
--- a/client/dhclient.c
+++ b/client/dhclient.c
@@ -1471,6 +1471,11 @@ void bind_lease (client)
if (!quiet)
log_info("Unable to obtain a lease on first "
"try (declined). Exiting.");
+
+ /* Let's call a script and we're done */
+ script_init(client, "FAIL", (struct string_list *)0);
+ script_go(client);
+
finish(2);
} else {
state_init(client);
@@ -2480,6 +2485,11 @@ void state_panic (cpp)
if (!quiet)
log_info ("Unable to obtain a lease on first try.%s",
" Exiting.");
+
+ /* Let's call a script and we're done */
+ script_init(client, "FAIL", (struct string_list *)0);
+ script_go(client);
+
finish(2);
}