  struct iaddr iaddr_broadcast = { 4, { 255, 255, 255, 255 } };
  struct iaddr iaddr_any = { 4, { 0, 0, 0, 0 } };
  struct in_addr inaddr_any;
-@@ -179,6 +182,7 @@ usage(const char *sfmt, const char *sarg)
- 		  "                [-s server-addr] [-cf config-file]\n"
- 		  "                [-df duid-file] [-lf lease-file]\n"
- 		  "                [-pf pid-file] [--no-pid] [-e VAR=val]\n"
-+		  "                [--psig] [--no-pid] [-e VAR=val]\n"
- 		  "                [-sf script-file] [interface]*",
- 		  isc_file_basename(progname));
- }
-@@ -308,6 +312,8 @@ main(int argc, char **argv) {
+@@ -183,6 +186,7 @@ static const char use_v6command[] = "Command not used for DHCPv4: %s";
+ "                [-s server-addr] [-cf config-file]\n" \
+ "                [-df duid-file] [-lf lease-file]\n" \
+ "                [-pf pid-file] [--no-pid] [-e VAR=val]\n" \
++"                [--psig] [--no-pid] [-e VAR=val]\n" \
+ "                [-sf script-file] [interface]*"
+ 
+ #define DHCLIENT_USAGEH "{--version|--help|-h}"
+@@ -398,6 +402,8 @@ main(int argc, char **argv) {
  			no_dhclient_pid = 1;
  		} else if (!strcmp(argv[i], "--no-pid")) {
  			no_pid_file = ISC_TRUE;

 		} else if (!strcmp(argv[i], "-cf")) {
 			if (++i == argc)
 				usage(use_noarg, argv[i-1]);
@@ -4301,6 +4307,10 @@ void go_daemon ()
 	/* Become session leader and get pid... */
 	(void) setsid ();
 

From 1dc743c947ff4b3ac780195b66ed7c3a962cd781 Mon Sep 17 00:00:00 2001
From: Jason Wessel <jason.wessel@windriver.com>
Date: Tue, 27 Mar 2018 22:10:15 -0700
Subject: [PATCH] dhclient: Add option to die when the parent process exits
