[dhcp] 4.3.1b1

Jiří Popelka jpopelka at fedoraproject.org
Thu Jul 10 17:05:29 UTC 2014


commit 7b69e548fb2c64c4c0dec23b9a6c9135c3021092
Author: Jiri Popelka <jpopelka at redhat.com>
Date:   Thu Jul 10 19:01:31 2014 +0200

    4.3.1b1

 dhcp-PPP.patch                        |   80 +++++-----
 dhcp-UseMulticast.patch               |   48 +++---
 dhcp-capability.patch                 |  134 ++++++++--------
 dhcp-conflex-do-forward-updates.patch |   12 --
 dhcp-dhclient-decline-backoff.patch   |   36 ++--
 dhcp-dhclient-decline-onetry.patch    |   27 ----
 dhcp-dhclient-options.patch           |   76 +++++-----
 dhcp-duidv4.patch                     |   32 ++--
 dhcp-dupl-key.patch                   |   13 --
 dhcp-getifaddrs.patch                 |   18 +-
 dhcp-logpid.patch                     |   12 --
 dhcp-lpf-ib.patch                     |   50 +++---
 dhcp-next-server.patch                |   53 -------
 dhcp-paranoia.patch                   |   98 +++---------
 dhcp-remove-bind.patch                |  100 +++++++------
 dhcp-retransmission.patch             |   48 ------
 dhcp-sharedlib.patch                  |   61 ++++----
 dhcp-systemtap.patch                  |  278 ++++++++++++++++----------------
 dhcp.spec                             |   49 +-----
 19 files changed, 500 insertions(+), 725 deletions(-)
---
diff --git a/dhcp-PPP.patch b/dhcp-PPP.patch
index 585800b..5d022e4 100644
--- a/dhcp-PPP.patch
+++ b/dhcp-PPP.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0a1/client/dhc6.c.PPP dhcp-4.3.0a1/client/dhc6.c
---- dhcp-4.3.0a1/client/dhc6.c.PPP	2013-12-19 16:16:45.925550229 +0100
-+++ dhcp-4.3.0a1/client/dhc6.c	2013-12-19 16:16:45.930550159 +0100
-@@ -5080,7 +5080,8 @@ make_client6_options(struct client_state
+diff -up dhcp-4.3.1b1/client/dhc6.c.mRfpsB dhcp-4.3.1b1/client/dhc6.c
+--- dhcp-4.3.1b1/client/dhc6.c.mRfpsB	2014-07-10 17:48:03.779424870 +0200
++++ dhcp-4.3.1b1/client/dhc6.c	2014-07-10 17:48:03.795424644 +0200
+@@ -5088,7 +5088,8 @@ make_client6_options(struct client_state
  	 */
  	if ((oc = lookup_option(&dhcpv6_universe, *op,
  				D6O_CLIENTID)) == NULL) {
@@ -11,10 +11,10 @@ diff -up dhcp-4.3.0a1/client/dhc6.c.PPP dhcp-4.3.0a1/client/dhc6.c
  				  MDL))
  			log_fatal("Failure assembling a DUID.");
  
-diff -up dhcp-4.3.0a1/client/dhclient.c.PPP dhcp-4.3.0a1/client/dhclient.c
---- dhcp-4.3.0a1/client/dhclient.c.PPP	2013-12-19 16:16:45.932550131 +0100
-+++ dhcp-4.3.0a1/client/dhclient.c	2013-12-19 16:27:38.334473958 +0100
-@@ -926,8 +926,8 @@ main(int argc, char **argv) {
+diff -up dhcp-4.3.1b1/client/dhclient.c.mRfpsB dhcp-4.3.1b1/client/dhclient.c
+--- dhcp-4.3.1b1/client/dhclient.c.mRfpsB	2014-07-10 17:39:25.853763858 +0200
++++ dhcp-4.3.1b1/client/dhclient.c	2014-07-10 17:49:49.882925843 +0200
+@@ -948,8 +948,8 @@ main(int argc, char **argv) {
  			if (default_duid.buffer != NULL)
  				data_string_forget(&default_duid, MDL);
  
@@ -25,7 +25,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.PPP dhcp-4.3.0a1/client/dhclient.c
  		}
  	}
  
-@@ -3225,7 +3225,7 @@ write_options(struct client_state *clien
+@@ -3267,7 +3267,7 @@ write_options(struct client_state *clien
   * is not how it is intended.  Upcoming rearchitecting the client should
   * address this "one daemon model."
   */
@@ -34,7 +34,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.PPP dhcp-4.3.0a1/client/dhclient.c
  form_duid(struct data_string *duid, const char *file, int line)
  {
  	struct interface_info *ip;
-@@ -3237,6 +3237,15 @@ form_duid(struct data_string *duid, cons
+@@ -3280,6 +3280,15 @@ form_duid(struct data_string *duid, cons
  	if (ip == NULL)
  		log_fatal("Impossible condition at %s:%d.", MDL);
  
@@ -50,19 +50,19 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.PPP dhcp-4.3.0a1/client/dhclient.c
  	if ((ip->hw_address.hlen == 0) ||
  	    (ip->hw_address.hlen > sizeof(ip->hw_address.hbuf)))
  		log_fatal("Impossible hardware address length at %s:%d.", MDL);
-@@ -3272,6 +3281,8 @@ form_duid(struct data_string *duid, cons
- 		memcpy(duid->buffer->data + 4, ip->hw_address.hbuf + 1,
- 		       ip->hw_address.hlen - 1);
+@@ -3323,6 +3332,8 @@ form_duid(struct data_string *duid, cons
+ 		log_info("Created duid %s.", str);
+ 		dfree(str, MDL);
  	}
 +	
 +	return ISC_R_SUCCESS;
  }
  
  /* Write the default DUID to the lease store. */
-diff -up dhcp-4.3.0a1/common/bpf.c.PPP dhcp-4.3.0a1/common/bpf.c
---- dhcp-4.3.0a1/common/bpf.c.PPP	2013-12-19 16:16:45.868551024 +0100
-+++ dhcp-4.3.0a1/common/bpf.c	2013-12-19 16:16:45.934550103 +0100
-@@ -602,6 +602,22 @@ get_hw_addr(const char *name, struct har
+diff -up dhcp-4.3.1b1/common/bpf.c.mRfpsB dhcp-4.3.1b1/common/bpf.c
+--- dhcp-4.3.1b1/common/bpf.c.mRfpsB	2014-07-10 17:39:25.797764653 +0200
++++ dhcp-4.3.1b1/common/bpf.c	2014-07-10 17:48:03.797424616 +0200
+@@ -600,6 +600,22 @@ get_hw_addr(const char *name, struct har
                          memcpy(&hw->hbuf[1], LLADDR(sa), sa->sdl_alen);
                          break;
  #endif /* IFT_FDDI */
@@ -85,9 +85,9 @@ diff -up dhcp-4.3.0a1/common/bpf.c.PPP dhcp-4.3.0a1/common/bpf.c
                  default:
                          log_fatal("Unsupported device type %d for \"%s\"",
                                    sa->sdl_type, name);
-diff -up dhcp-4.3.0a1/common/lpf.c.PPP dhcp-4.3.0a1/common/lpf.c
---- dhcp-4.3.0a1/common/lpf.c.PPP	2013-12-19 16:16:45.848551303 +0100
-+++ dhcp-4.3.0a1/common/lpf.c	2013-12-19 16:16:45.934550103 +0100
+diff -up dhcp-4.3.1b1/common/lpf.c.mRfpsB dhcp-4.3.1b1/common/lpf.c
+--- dhcp-4.3.1b1/common/lpf.c.mRfpsB	2014-07-10 17:39:25.744765404 +0200
++++ dhcp-4.3.1b1/common/lpf.c	2014-07-10 17:48:03.797424616 +0200
 @@ -511,6 +511,22 @@ get_hw_addr(const char *name, struct har
  			hw->hbuf[0] = HTYPE_FDDI;
  			memcpy(&hw->hbuf[1], sa->sa_data, 6);
@@ -111,22 +111,10 @@ diff -up dhcp-4.3.0a1/common/lpf.c.PPP dhcp-4.3.0a1/common/lpf.c
  		default:
  			log_fatal("Unsupported device type %ld for \"%s\"",
  				  (long int)sa->sa_family, name);
-diff -up dhcp-4.3.0a1/includes/dhcp.h.PPP dhcp-4.3.0a1/includes/dhcp.h
---- dhcp-4.3.0a1/includes/dhcp.h.PPP	2013-12-19 16:16:45.919550313 +0100
-+++ dhcp-4.3.0a1/includes/dhcp.h	2013-12-19 16:16:45.936550076 +0100
-@@ -85,6 +85,8 @@ struct dhcp_packet {
- 					 * is no standard for this so we
- 					 * just steal a type            */
- 
-+#define HTYPE_RESERVED	0		/* RFC 5494 */
-+
- /* Magic cookie validating dhcp options field (and bootp vendor
-    extensions field). */
- #define DHCP_OPTIONS_COOKIE	"\143\202\123\143"
-diff -up dhcp-4.3.0a1/includes/dhcpd.h.PPP dhcp-4.3.0a1/includes/dhcpd.h
---- dhcp-4.3.0a1/includes/dhcpd.h.PPP	2013-12-19 16:16:45.935550090 +0100
-+++ dhcp-4.3.0a1/includes/dhcpd.h	2013-12-19 16:28:33.468709007 +0100
-@@ -2824,7 +2824,7 @@ void client_dns_remove(struct client_sta
+diff -up dhcp-4.3.1b1/includes/dhcpd.h.mRfpsB dhcp-4.3.1b1/includes/dhcpd.h
+--- dhcp-4.3.1b1/includes/dhcpd.h.mRfpsB	2014-07-10 17:48:03.761425124 +0200
++++ dhcp-4.3.1b1/includes/dhcpd.h	2014-07-10 17:48:03.798424601 +0200
+@@ -2839,7 +2839,7 @@ void client_dns_remove(struct client_sta
  
  void dhcpv4_client_assignments(void);
  void dhcpv6_client_assignments(void);
@@ -135,10 +123,22 @@ diff -up dhcp-4.3.0a1/includes/dhcpd.h.PPP dhcp-4.3.0a1/includes/dhcpd.h
  
  /* dhc6.c */
  void dhc6_lease_destroy(struct dhc6_lease **src, const char *file, int line);
-diff -up dhcp-4.3.0a1/server/dhcpv6.c.PPP dhcp-4.3.0a1/server/dhcpv6.c
---- dhcp-4.3.0a1/server/dhcpv6.c.PPP	2013-12-19 16:16:45.901550564 +0100
-+++ dhcp-4.3.0a1/server/dhcpv6.c	2013-12-19 16:16:45.937550062 +0100
-@@ -307,6 +307,9 @@ generate_new_server_duid(void) {
+diff -up dhcp-4.3.1b1/includes/dhcp.h.mRfpsB dhcp-4.3.1b1/includes/dhcp.h
+--- dhcp-4.3.1b1/includes/dhcp.h.mRfpsB	2014-07-10 17:48:03.761425124 +0200
++++ dhcp-4.3.1b1/includes/dhcp.h	2014-07-10 17:48:03.798424601 +0200
+@@ -81,6 +81,8 @@ struct dhcp_packet {
+ 					 * is no standard for this so we
+ 					 * just steal a type            */
+ 
++#define HTYPE_RESERVED	0		/* RFC 5494 */
++
+ /* Magic cookie validating dhcp options field (and bootp vendor
+    extensions field). */
+ #define DHCP_OPTIONS_COOKIE	"\143\202\123\143"
+diff -up dhcp-4.3.1b1/server/dhcpv6.c.mRfpsB dhcp-4.3.1b1/server/dhcpv6.c
+--- dhcp-4.3.1b1/server/dhcpv6.c.mRfpsB	2014-07-10 17:47:31.464881409 +0200
++++ dhcp-4.3.1b1/server/dhcpv6.c	2014-07-10 17:48:03.800424573 +0200
+@@ -330,6 +330,9 @@ generate_new_server_duid(void) {
  		if (p->hw_address.hlen > 0) {
  			break;
  		}
diff --git a/dhcp-UseMulticast.patch b/dhcp-UseMulticast.patch
index 41c74be..ee0ea6b 100644
--- a/dhcp-UseMulticast.patch
+++ b/dhcp-UseMulticast.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
---- dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast	2013-12-11 01:25:12.000000000 +0100
-+++ dhcp-4.3.0a1/server/dhcpv6.c	2013-12-19 15:54:46.934932371 +0100
-@@ -353,6 +353,48 @@ generate_new_server_duid(void) {
+diff -up dhcp-4.3.1b1/server/dhcpv6.c.UseMulticast dhcp-4.3.1b1/server/dhcpv6.c
+--- dhcp-4.3.1b1/server/dhcpv6.c.UseMulticast	2014-07-02 19:58:40.000000000 +0200
++++ dhcp-4.3.1b1/server/dhcpv6.c	2014-07-10 18:20:03.066256219 +0200
+@@ -376,6 +376,48 @@ generate_new_server_duid(void) {
  }
  
  /*
@@ -50,7 +50,20 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
   * Get the client identifier from the packet.
   */
  isc_result_t
-@@ -1498,6 +1540,56 @@ lease_to_client(struct data_string *repl
+@@ -706,6 +748,12 @@ static const int required_opts[] = {
+ 	D6O_PREFERENCE,
+ 	0
+ };
++static const int required_opts_NAA[] = {
++	D6O_CLIENTID,
++	D6O_SERVERID,
++	D6O_STATUS_CODE,
++	0
++};
+ static const int required_opts_solicit[] = {
+ 	D6O_CLIENTID,
+ 	D6O_SERVERID,
+@@ -1587,6 +1635,56 @@ lease_to_client(struct data_string *repl
  						    reply.shared->group, NULL);
  	}
  
@@ -107,18 +120,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
  	/*
  	 * RFC3315 section 17.2.2 (Solicit):
  	 *
-@@ -1523,8 +1615,8 @@ lease_to_client(struct data_string *repl
- 	 * Sends a Renew/Rebind if the IA is not in the Reply message.
- 	 */
- #if defined (RFC3315_PRE_ERRATA_2010_08)
--	if (no_resources_avail && (reply.ia_count != 0) &&
--	    (reply.packet->dhcpv6_msg_type == DHCPV6_SOLICIT))
-+	else if (no_resources_avail && (reply.ia_count != 0) &&
-+		 (reply.packet->dhcpv6_msg_type == DHCPV6_SOLICIT))
- 	{
- 		/* Set the NoAddrsAvail status code. */
- 		if (!set_status_code(STATUS_NoAddrsAvail,
-@@ -1571,6 +1663,7 @@ lease_to_client(struct data_string *repl
+@@ -1619,6 +1717,7 @@ lease_to_client(struct data_string *repl
  	 * Having stored the client's IA's, store any options that
  	 * will fit in the remaining space.
  	 */
@@ -126,7 +128,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
  	reply.cursor += store_options6((char *)reply.buf.data + reply.cursor,
  				       sizeof(reply.buf) - reply.cursor,
  				       reply.opt_state, reply.packet,
-@@ -4688,7 +4781,6 @@ dhcpv6_solicit(struct data_string *reply
+@@ -4748,7 +4847,6 @@ dhcpv6_solicit(struct data_string *reply
   * Very similar to Solicit handling, except the server DUID is required.
   */
  
@@ -134,7 +136,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
  static void
  dhcpv6_request(struct data_string *reply_ret, struct packet *packet) {
  	struct data_string client_id;
-@@ -5018,7 +5110,6 @@ exit:
+@@ -5078,7 +5176,6 @@ exit:
   * except for the error code of when addresses don't match.
   */
  
@@ -142,7 +144,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
  static void
  dhcpv6_renew(struct data_string *reply, struct packet *packet) {
  	struct data_string client_id;
-@@ -5262,18 +5353,60 @@ iterate_over_ia_na(struct data_string *r
+@@ -5322,18 +5419,60 @@ iterate_over_ia_na(struct data_string *r
  		goto exit;
  	}
  
@@ -213,7 +215,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
  
  	/*
  	 * Loop through the IA_NA reported by the client, and deal with
-@@ -5411,6 +5544,7 @@ iterate_over_ia_na(struct data_string *r
+@@ -5471,6 +5610,7 @@ iterate_over_ia_na(struct data_string *r
  	/* 
  	 * Return our reply to the caller.
  	 */
@@ -221,7 +223,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
  	reply_ret->len = reply_ofs;
  	reply_ret->buffer = NULL;
  	if (!buffer_allocate(&reply_ret->buffer, reply_ofs, MDL)) {
-@@ -5456,7 +5590,6 @@ exit:
+@@ -5516,7 +5656,6 @@ exit:
   * we still need to be aware of this possibility.
   */
  
@@ -229,7 +231,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.UseMulticast dhcp-4.3.0a1/server/dhcpv6.c
  /* TODO: IA_TA */
  static void
  dhcpv6_decline(struct data_string *reply, struct packet *packet) {
-@@ -5926,7 +6059,6 @@ exit:
+@@ -5986,7 +6125,6 @@ exit:
   * Release means a client is done with the leases.
   */
  
diff --git a/dhcp-capability.patch b/dhcp-capability.patch
index d304b95..ae0d9f3 100644
--- a/dhcp-capability.patch
+++ b/dhcp-capability.patch
@@ -1,39 +1,7 @@
-diff -up dhcp-4.3.0a1/client/Makefile.am.capability dhcp-4.3.0a1/client/Makefile.am
---- dhcp-4.3.0a1/client/Makefile.am.capability	2013-12-19 16:15:26.549657115 +0100
-+++ dhcp-4.3.0a1/client/Makefile.am	2013-12-19 16:16:04.126133091 +0100
-@@ -4,7 +4,7 @@ dhclient_SOURCES = clparse.c dhclient.c
- 		   scripts/bsdos scripts/freebsd scripts/linux scripts/macos \
- 		   scripts/netbsd scripts/nextstep scripts/openbsd \
- 		   scripts/solaris scripts/openwrt
--dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \
-+dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.la $(CAPNG_LDADD) \
- 		 $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
- man_MANS = dhclient.8 dhclient-script.8 dhclient.conf.5 dhclient.leases.5
- EXTRA_DIST = $(man_MANS)
-diff -up dhcp-4.3.0a1/client/dhclient-script.8.capability dhcp-4.3.0a1/client/dhclient-script.8
---- dhcp-4.3.0a1/client/dhclient-script.8.capability	2013-12-19 16:15:26.520657520 +0100
-+++ dhcp-4.3.0a1/client/dhclient-script.8	2013-12-19 16:15:26.549657115 +0100
-@@ -246,6 +246,16 @@ repeatedly initialized to the values pro
- the other.   Assuming the information provided by both servers is
- valid, this shouldn't cause any real problems, but it could be
- confusing.
-+.PP
-+Normally, if dhclient was compiled with libcap-ng support,
-+dhclient drops most capabilities immediately upon startup.
-+While more secure, this greatly restricts the additional actions that
-+hooks in dhclient-script can take. For example, any daemons that
-+dhclient-script starts or restarts will inherit the restricted
-+capabilities as well, which may interfere with their correct operation.
-+Thus, the
-+.BI \-nc
-+option can be used to prevent dhclient from dropping capabilities.
- .SH SEE ALSO
- dhclient(8), dhcpd(8), dhcrelay(8), dhclient.conf(5) and
- dhclient.leases(5).
-diff -up dhcp-4.3.0a1/client/dhclient.8.capability dhcp-4.3.0a1/client/dhclient.8
---- dhcp-4.3.0a1/client/dhclient.8.capability	2013-12-19 16:15:26.482658050 +0100
-+++ dhcp-4.3.0a1/client/dhclient.8	2013-12-19 16:15:26.550657101 +0100
-@@ -124,6 +124,9 @@ dhclient - Dynamic Host Configuration Pr
+diff -up dhcp-4.3.1b1/client/dhclient.8.zzftXp dhcp-4.3.1b1/client/dhclient.8
+--- dhcp-4.3.1b1/client/dhclient.8.zzftXp	2014-07-10 17:38:26.938599402 +0200
++++ dhcp-4.3.1b1/client/dhclient.8	2014-07-10 17:39:25.852763873 +0200
+@@ -128,6 +128,9 @@ dhclient - Dynamic Host Configuration Pr
  .B -w
  ]
  [
@@ -43,7 +11,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.8.capability dhcp-4.3.0a1/client/dhclient.
  .B -B
  ]
  [
-@@ -300,6 +303,32 @@ has been added or removed, so that the c
+@@ -304,6 +307,32 @@ has been added or removed, so that the c
  address on that interface.
  
  .TP
@@ -76,9 +44,9 @@ diff -up dhcp-4.3.0a1/client/dhclient.8.capability dhcp-4.3.0a1/client/dhclient.
  .BI \-B
  Set the BOOTP broadcast flag in request packets so servers will always
  broadcast replies.
-diff -up dhcp-4.3.0a1/client/dhclient.c.capability dhcp-4.3.0a1/client/dhclient.c
---- dhcp-4.3.0a1/client/dhclient.c.capability	2013-12-19 16:15:26.532657352 +0100
-+++ dhcp-4.3.0a1/client/dhclient.c	2013-12-19 16:15:26.551657087 +0100
+diff -up dhcp-4.3.1b1/client/dhclient.c.zzftXp dhcp-4.3.1b1/client/dhclient.c
+--- dhcp-4.3.1b1/client/dhclient.c.zzftXp	2014-07-10 17:39:25.797764653 +0200
++++ dhcp-4.3.1b1/client/dhclient.c	2014-07-10 17:39:25.853763858 +0200
 @@ -39,6 +39,10 @@
  #include <limits.h>
  #include <dns/result.h>
@@ -90,7 +58,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.capability dhcp-4.3.0a1/client/dhclient.
  /*
   * Defined in stdio.h when _GNU_SOURCE is set, but we don't want to define
   * that when building ISC code.
-@@ -141,6 +145,9 @@ main(int argc, char **argv) {
+@@ -143,6 +147,9 @@ main(int argc, char **argv) {
  	int timeout_arg = 0;
  	char *arg_conf = NULL;
  	int arg_conf_len = 0;
@@ -100,7 +68,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.capability dhcp-4.3.0a1/client/dhclient.
  
  	/* Initialize client globals. */
  	memset(&default_duid, 0, sizeof(default_duid));
-@@ -413,6 +420,10 @@ main(int argc, char **argv) {
+@@ -425,6 +432,10 @@ main(int argc, char **argv) {
  			}
  
  			dhclient_request_options = argv[i];
@@ -111,7 +79,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.capability dhcp-4.3.0a1/client/dhclient.
  		} else if (argv[i][0] == '-') {
  		    usage();
  		} else if (interfaces_requested < 0) {
-@@ -461,6 +472,19 @@ main(int argc, char **argv) {
+@@ -473,6 +484,19 @@ main(int argc, char **argv) {
  		path_dhclient_script = s;
  	}
  
@@ -131,10 +99,42 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.capability dhcp-4.3.0a1/client/dhclient.
  	/* Set up the initial dhcp option universe. */
  	initialize_common_option_spaces();
  
-diff -up dhcp-4.3.0a1/configure.ac.capability dhcp-4.3.0a1/configure.ac
---- dhcp-4.3.0a1/configure.ac.capability	2013-12-19 16:15:26.475658147 +0100
-+++ dhcp-4.3.0a1/configure.ac	2013-12-19 16:15:26.552657074 +0100
-@@ -489,6 +489,41 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],
+diff -up dhcp-4.3.1b1/client/dhclient-script.8.zzftXp dhcp-4.3.1b1/client/dhclient-script.8
+--- dhcp-4.3.1b1/client/dhclient-script.8.zzftXp	2014-07-10 17:39:25.761765163 +0200
++++ dhcp-4.3.1b1/client/dhclient-script.8	2014-07-10 17:39:25.851763887 +0200
+@@ -243,6 +243,16 @@ repeatedly initialized to the values pro
+ the other.   Assuming the information provided by both servers is
+ valid, this shouldn't cause any real problems, but it could be
+ confusing.
++.PP
++Normally, if dhclient was compiled with libcap-ng support,
++dhclient drops most capabilities immediately upon startup.
++While more secure, this greatly restricts the additional actions that
++hooks in dhclient-script can take. For example, any daemons that
++dhclient-script starts or restarts will inherit the restricted
++capabilities as well, which may interfere with their correct operation.
++Thus, the
++.BI \-nc
++option can be used to prevent dhclient from dropping capabilities.
+ .SH SEE ALSO
+ dhclient(8), dhcpd(8), dhcrelay(8), dhclient.conf(5) and
+ dhclient.leases(5).
+diff -up dhcp-4.3.1b1/client/Makefile.am.zzftXp dhcp-4.3.1b1/client/Makefile.am
+--- dhcp-4.3.1b1/client/Makefile.am.zzftXp	2014-07-10 17:38:10.778828583 +0200
++++ dhcp-4.3.1b1/client/Makefile.am	2014-07-10 17:39:25.851763887 +0200
+@@ -10,7 +10,7 @@ dhclient_SOURCES = clparse.c dhclient.c
+ 		   scripts/bsdos scripts/freebsd scripts/linux scripts/macos \
+ 		   scripts/netbsd scripts/nextstep scripts/openbsd \
+ 		   scripts/solaris scripts/openwrt
+-dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \
++dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.la $(CAPNG_LDADD) \
+ 		 $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
+ man_MANS = dhclient.8 dhclient-script.8 dhclient.conf.5 dhclient.leases.5
+ EXTRA_DIST = $(man_MANS)
+diff -up dhcp-4.3.1b1/configure.ac.zzftXp dhcp-4.3.1b1/configure.ac
+--- dhcp-4.3.1b1/configure.ac.zzftXp	2014-07-10 17:38:10.779828569 +0200
++++ dhcp-4.3.1b1/configure.ac	2014-07-10 17:39:25.854763844 +0200
+@@ -499,6 +499,41 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],
  # Look for optional headers.
  AC_CHECK_HEADERS(sys/socket.h net/if_dl.h net/if6.h regex.h)
  
@@ -176,22 +176,10 @@ diff -up dhcp-4.3.0a1/configure.ac.capability dhcp-4.3.0a1/configure.ac
  # Solaris needs some libraries for functions
  AC_SEARCH_LIBS(socket, [socket])
  AC_SEARCH_LIBS(inet_ntoa, [nsl])
-diff -up dhcp-4.3.0a1/relay/Makefile.am.capability dhcp-4.3.0a1/relay/Makefile.am
---- dhcp-4.3.0a1/relay/Makefile.am.capability	2013-12-19 16:15:26.552657074 +0100
-+++ dhcp-4.3.0a1/relay/Makefile.am	2013-12-19 16:16:26.159825841 +0100
-@@ -2,7 +2,7 @@ AM_CPPFLAGS = -DLOCALSTATEDIR='"@localst
- 
- sbin_PROGRAMS = dhcrelay
- dhcrelay_SOURCES = dhcrelay.c
--dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \
-+dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.la $(CAPNG_LDADD) \
- 		 $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
- man_MANS = dhcrelay.8
- EXTRA_DIST = $(man_MANS)
-diff -up dhcp-4.3.0a1/relay/dhcrelay.c.capability dhcp-4.3.0a1/relay/dhcrelay.c
---- dhcp-4.3.0a1/relay/dhcrelay.c.capability	2013-12-19 16:15:26.535657311 +0100
-+++ dhcp-4.3.0a1/relay/dhcrelay.c	2013-12-19 16:15:26.553657060 +0100
-@@ -37,6 +37,11 @@
+diff -up dhcp-4.3.1b1/relay/dhcrelay.c.zzftXp dhcp-4.3.1b1/relay/dhcrelay.c
+--- dhcp-4.3.1b1/relay/dhcrelay.c.zzftXp	2014-07-10 17:39:25.799764624 +0200
++++ dhcp-4.3.1b1/relay/dhcrelay.c	2014-07-10 17:40:19.191007421 +0200
+@@ -31,6 +31,11 @@
  #include <signal.h>
  #include <sys/time.h>
  
@@ -203,7 +191,7 @@ diff -up dhcp-4.3.0a1/relay/dhcrelay.c.capability dhcp-4.3.0a1/relay/dhcrelay.c
  TIME default_lease_time = 43200; /* 12 hours... */
  TIME max_lease_time = 86400; /* 24 hours... */
  struct tree_cache *global_options[256];
-@@ -382,6 +387,10 @@ main(int argc, char **argv) {
+@@ -376,6 +381,10 @@ main(int argc, char **argv) {
  				usage();
  			dhcrelay_sub_id = argv[i];
  #endif
@@ -214,7 +202,7 @@ diff -up dhcp-4.3.0a1/relay/dhcrelay.c.capability dhcp-4.3.0a1/relay/dhcrelay.c
  		} else if (!strcmp(argv[i], "-pf")) {
  			if (++i == argc)
  				usage();
-@@ -452,6 +461,17 @@ main(int argc, char **argv) {
+@@ -446,6 +455,17 @@ main(int argc, char **argv) {
  #endif
  	}
  
@@ -232,9 +220,9 @@ diff -up dhcp-4.3.0a1/relay/dhcrelay.c.capability dhcp-4.3.0a1/relay/dhcrelay.c
  	if (!quiet) {
  		log_info("%s %s", message, PACKAGE_VERSION);
  		log_info(copyright);
-@@ -601,6 +621,15 @@ main(int argc, char **argv) {
- 	signal(SIGINT, dhcp_signal_handler);   /* control-c */
+@@ -598,6 +618,15 @@ main(int argc, char **argv) {
  	signal(SIGTERM, dhcp_signal_handler);  /* kill */
+ #endif
  
 +#ifdef HAVE_LIBCAP_NG
 +	/* Drop all capabilities */
@@ -248,3 +236,15 @@ diff -up dhcp-4.3.0a1/relay/dhcrelay.c.capability dhcp-4.3.0a1/relay/dhcrelay.c
  	/* Start dispatching packets and timeouts... */
  	dispatch();
  
+diff -up dhcp-4.3.1b1/relay/Makefile.am.zzftXp dhcp-4.3.1b1/relay/Makefile.am
+--- dhcp-4.3.1b1/relay/Makefile.am.zzftXp	2014-07-10 17:38:10.780828554 +0200
++++ dhcp-4.3.1b1/relay/Makefile.am	2014-07-10 17:39:25.854763844 +0200
+@@ -2,7 +2,7 @@ AM_CPPFLAGS = -DLOCALSTATEDIR='"@localst
+ 
+ sbin_PROGRAMS = dhcrelay
+ dhcrelay_SOURCES = dhcrelay.c
+-dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \
++dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.la $(CAPNG_LDADD) \
+ 		 $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
+ man_MANS = dhcrelay.8
+ EXTRA_DIST = $(man_MANS)
diff --git a/dhcp-dhclient-decline-backoff.patch b/dhcp-dhclient-decline-backoff.patch
index 7436e6a..3e52e64 100644
--- a/dhcp-dhclient-decline-backoff.patch
+++ b/dhcp-dhclient-decline-backoff.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0a1/client/dhclient.c.backoff dhcp-4.3.0a1/client/dhclient.c
---- dhcp-4.3.0a1/client/dhclient.c.backoff	2013-12-19 15:11:11.310534716 +0100
-+++ dhcp-4.3.0a1/client/dhclient.c	2013-12-19 15:11:11.315534646 +0100
-@@ -1250,6 +1250,8 @@ void state_init (cpp)
+diff -up dhcp-4.3.1b1/client/dhclient.c.JwFUZj dhcp-4.3.1b1/client/dhclient.c
+--- dhcp-4.3.1b1/client/dhclient.c.JwFUZj	2014-07-10 17:38:50.511265091 +0200
++++ dhcp-4.3.1b1/client/dhclient.c	2014-07-10 17:39:16.164901267 +0200
+@@ -1281,6 +1281,8 @@ void state_init (cpp)
  	void *cpp;
  {
  	struct client_state *client = cpp;
@@ -10,7 +10,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.backoff dhcp-4.3.0a1/client/dhclient.c
  
  	ASSERT_STATE(state, S_INIT);
  
-@@ -1262,9 +1264,18 @@ void state_init (cpp)
+@@ -1293,9 +1295,18 @@ void state_init (cpp)
  	client -> first_sending = cur_time;
  	client -> interval = client -> config -> initial_interval;
  
@@ -32,15 +32,15 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.backoff dhcp-4.3.0a1/client/dhclient.c
  }
  
  /*
-@@ -1557,6 +1568,7 @@ void bind_lease (client)
- 		send_decline (client);
- 		destroy_client_lease (client -> new);
- 		client -> new = (struct client_lease *)0;
-+		client -> state = S_DECLINED;
- 		state_init (client);
- 		return;
- 	}
-@@ -4001,6 +4013,7 @@ void client_location_changed ()
+@@ -1592,6 +1603,7 @@ void bind_lease (client)
+ 					 "try (declined).  Exiting.");
+ 			exit(2);
+ 		} else {
++			client -> state = S_DECLINED;
+ 			state_init(client);
+ 			return;
+ 		}
+@@ -4059,6 +4071,7 @@ void client_location_changed ()
  			      case S_INIT:
  			      case S_REBINDING:
  			      case S_STOPPED:
@@ -48,10 +48,10 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.backoff dhcp-4.3.0a1/client/dhclient.c
  				break;
  			}
  			client -> state = S_INIT;
-diff -up dhcp-4.3.0a1/includes/dhcpd.h.backoff dhcp-4.3.0a1/includes/dhcpd.h
---- dhcp-4.3.0a1/includes/dhcpd.h.backoff	2013-12-19 15:11:11.305534786 +0100
-+++ dhcp-4.3.0a1/includes/dhcpd.h	2013-12-19 15:11:11.316534632 +0100
-@@ -1088,7 +1088,8 @@ enum dhcp_state {
+diff -up dhcp-4.3.1b1/includes/dhcpd.h.JwFUZj dhcp-4.3.1b1/includes/dhcpd.h
+--- dhcp-4.3.1b1/includes/dhcpd.h.JwFUZj	2014-07-10 17:38:26.941599360 +0200
++++ dhcp-4.3.1b1/includes/dhcpd.h	2014-07-10 17:38:50.526264878 +0200
+@@ -1087,7 +1087,8 @@ enum dhcp_state {
  	S_BOUND = 5,
  	S_RENEWING = 6,
  	S_REBINDING = 7,
diff --git a/dhcp-dhclient-options.patch b/dhcp-dhclient-options.patch
index 74270c6..077319e 100644
--- a/dhcp-dhclient-options.patch
+++ b/dhcp-dhclient-options.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0a1/client/clparse.c.options dhcp-4.3.0a1/client/clparse.c
---- dhcp-4.3.0a1/client/clparse.c.options	2013-12-11 01:25:12.000000000 +0100
-+++ dhcp-4.3.0a1/client/clparse.c	2013-12-19 14:50:15.011193031 +0100
-@@ -154,6 +154,7 @@ isc_result_t read_client_conf ()
+diff -up dhcp-4.3.1b1/client/clparse.c.fLPqYB dhcp-4.3.1b1/client/clparse.c
+--- dhcp-4.3.1b1/client/clparse.c.fLPqYB	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/client/clparse.c	2014-07-10 17:38:26.938599402 +0200
+@@ -148,6 +148,7 @@ isc_result_t read_client_conf ()
  	/* Requested lease time, used by DHCPv6 (DHCPv4 uses the option cache)
  	 */
  	top_level_config.requested_lease = 7200;
@@ -9,7 +9,7 @@ diff -up dhcp-4.3.0a1/client/clparse.c.options dhcp-4.3.0a1/client/clparse.c
  
  	group_allocate (&top_level_config.on_receipt, MDL);
  	if (!top_level_config.on_receipt)
-@@ -320,7 +321,8 @@ void read_client_leases ()
+@@ -353,7 +354,8 @@ void read_client_leases ()
  	interface-declaration |
  	LEASE client-lease-statement |
  	ALIAS client-lease-statement |
@@ -19,7 +19,7 @@ diff -up dhcp-4.3.0a1/client/clparse.c.options dhcp-4.3.0a1/client/clparse.c
  
  void parse_client_statement (cfile, ip, config)
  	struct parse *cfile;
-@@ -738,6 +740,12 @@ void parse_client_statement (cfile, ip,
+@@ -771,6 +773,12 @@ void parse_client_statement (cfile, ip,
  		parse_reject_statement (cfile, config);
  		return;
  
@@ -32,10 +32,10 @@ diff -up dhcp-4.3.0a1/client/clparse.c.options dhcp-4.3.0a1/client/clparse.c
  	      default:
  		lose = 0;
  		stmt = (struct executable_statement *)0;
-diff -up dhcp-4.3.0a1/client/dhclient.8.options dhcp-4.3.0a1/client/dhclient.8
---- dhcp-4.3.0a1/client/dhclient.8.options	2013-12-11 01:25:12.000000000 +0100
-+++ dhcp-4.3.0a1/client/dhclient.8	2013-12-19 14:50:15.010193045 +0100
-@@ -124,6 +124,33 @@ dhclient - Dynamic Host Configuration Pr
+diff -up dhcp-4.3.1b1/client/dhclient.8.fLPqYB dhcp-4.3.1b1/client/dhclient.8
+--- dhcp-4.3.1b1/client/dhclient.8.fLPqYB	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/client/dhclient.8	2014-07-10 17:38:26.938599402 +0200
+@@ -128,6 +128,33 @@ dhclient - Dynamic Host Configuration Pr
  .B -w
  ]
  [
@@ -69,7 +69,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.8.options dhcp-4.3.0a1/client/dhclient.8
  .B -v
  ]
  [
-@@ -271,6 +298,69 @@ not to exit when it doesn't find any suc
+@@ -275,6 +302,69 @@ not to exit when it doesn't find any suc
  program can then be used to notify the client when a network interface
  has been added or removed, so that the client can attempt to configure an IP
  address on that interface.
@@ -139,9 +139,9 @@ diff -up dhcp-4.3.0a1/client/dhclient.8.options dhcp-4.3.0a1/client/dhclient.8
  .TP
  .BI \-n
  Do not configure any interfaces.  This is most likely to be useful in
-diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
---- dhcp-4.3.0a1/client/dhclient.c.options	2013-12-13 22:24:38.000000000 +0100
-+++ dhcp-4.3.0a1/client/dhclient.c	2013-12-19 14:50:15.012193017 +0100
+diff -up dhcp-4.3.1b1/client/dhclient.c.fLPqYB dhcp-4.3.1b1/client/dhclient.c
+--- dhcp-4.3.1b1/client/dhclient.c.fLPqYB	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/client/dhclient.c	2014-07-10 17:38:44.520350055 +0200
 @@ -39,6 +39,12 @@
  #include <limits.h>
  #include <dns/result.h>
@@ -155,7 +155,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  TIME default_lease_time = 43200; /* 12 hours... */
  TIME max_lease_time = 86400; /* 24 hours... */
  
-@@ -87,6 +93,9 @@ int wanted_ia_na = -1;		/* the absolute
+@@ -88,6 +94,9 @@ int wanted_ia_na = -1;		/* the absolute
  int wanted_ia_ta = 0;
  int wanted_ia_pd = 0;
  char *mockup_relay = NULL;
@@ -165,7 +165,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  
  void run_stateless(int exit_mode);
  
-@@ -123,6 +132,15 @@ main(int argc, char **argv) {
+@@ -125,6 +134,15 @@ main(int argc, char **argv) {
  	int local_family_set = 0;
  #endif /* DHCPv6 */
  	char *s;
@@ -181,9 +181,9 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  
  	/* Initialize client globals. */
  	memset(&default_duid, 0, sizeof(default_duid));
-@@ -313,6 +331,88 @@ main(int argc, char **argv) {
- 		} else if (!strcmp(argv[i], "--version")) {
- 			log_info("isc-dhclient-%s", PACKAGE_VERSION);
+@@ -325,6 +343,88 @@ main(int argc, char **argv) {
+ 					 strlen(PACKAGE_VERSION)));
+ 			IGNORE_RET(write(STDERR_FILENO, "\n", 1));
  			exit(0);
 +		} else if (!strcmp(argv[i], "-C")) {
 +			if ((++i == argc) || (argv[i] == NULL) || (*(argv[i])=='\0')) {
@@ -270,7 +270,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  		} else if (argv[i][0] == '-') {
  		    usage();
  		} else if (interfaces_requested < 0) {
-@@ -490,6 +590,156 @@ main(int argc, char **argv) {
+@@ -507,6 +607,156 @@ main(int argc, char **argv) {
  	/* Parse the dhclient.conf file. */
  	read_client_conf();
  
@@ -427,9 +427,9 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  	/* Parse the lease database. */
  	read_client_leases();
  
-@@ -730,6 +980,10 @@ static void usage()
- 		  "                [-s server-addr] [-cf config-file] "
- 		  "[-lf lease-file]\n"
+@@ -756,6 +1006,10 @@ static void usage()
+ 		  "                [-s server-addr] [-cf config-file]\n"
+ 		  "                [-df duid-file] [-lf lease-file]\n"
  		  "                [-pf pid-file] [--no-pid] [-e VAR=val]\n"
 +		  "                [-C <dhcp-client-identifier>] [-B]\n"
 +		  "                [-H <host-name> | -F <fqdn.fqdn>] [-timeout <timeout>]\n"
@@ -438,7 +438,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  		  "                [-sf script-file] [interface]");
  }
  
-@@ -2489,7 +2743,8 @@ void make_discover (client, lease)
+@@ -2531,7 +2785,8 @@ void make_discover (client, lease)
  	client -> packet.xid = random ();
  	client -> packet.secs = 0; /* filled in by send_discover. */
  
@@ -448,7 +448,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  		client -> packet.flags = 0;
  	else
  		client -> packet.flags = htons (BOOTP_BROADCAST);
-@@ -2573,7 +2828,9 @@ void make_request (client, lease)
+@@ -2615,7 +2870,9 @@ void make_request (client, lease)
  	} else {
  		memset (&client -> packet.ciaddr, 0,
  			sizeof client -> packet.ciaddr);
@@ -459,7 +459,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  			client -> packet.flags = 0;
  		else
  			client -> packet.flags = htons (BOOTP_BROADCAST);
-@@ -2635,7 +2892,8 @@ void make_decline (client, lease)
+@@ -2677,7 +2934,8 @@ void make_decline (client, lease)
  	client -> packet.hops = 0;
  	client -> packet.xid = client -> xid;
  	client -> packet.secs = 0; /* Filled in by send_request. */
@@ -469,10 +469,10 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.options dhcp-4.3.0a1/client/dhclient.c
  		client -> packet.flags = 0;
  	else
  		client -> packet.flags = htons (BOOTP_BROADCAST);
-diff -up dhcp-4.3.0a1/common/conflex.c.options dhcp-4.3.0a1/common/conflex.c
---- dhcp-4.3.0a1/common/conflex.c.options	2013-12-11 01:25:12.000000000 +0100
-+++ dhcp-4.3.0a1/common/conflex.c	2013-12-19 14:50:15.013193003 +0100
-@@ -817,6 +817,8 @@ intern(char *atom, enum dhcp_token dfv)
+diff -up dhcp-4.3.1b1/common/conflex.c.fLPqYB dhcp-4.3.1b1/common/conflex.c
+--- dhcp-4.3.1b1/common/conflex.c.fLPqYB	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/common/conflex.c	2014-07-10 17:38:26.940599374 +0200
+@@ -811,6 +811,8 @@ intern(char *atom, enum dhcp_token dfv)
  			return BALANCE;
  		if (!strcasecmp (atom + 1, "ound"))
  			return BOUND;
@@ -481,10 +481,10 @@ diff -up dhcp-4.3.0a1/common/conflex.c.options dhcp-4.3.0a1/common/conflex.c
  		break;
  	      case 'c':
  		if (!strcasecmp(atom + 1, "ase"))
-diff -up dhcp-4.3.0a1/includes/dhcpd.h.options dhcp-4.3.0a1/includes/dhcpd.h
---- dhcp-4.3.0a1/includes/dhcpd.h.options	2013-12-13 21:49:44.000000000 +0100
-+++ dhcp-4.3.0a1/includes/dhcpd.h	2013-12-19 14:50:15.014192989 +0100
-@@ -1153,6 +1153,9 @@ struct client_config {
+diff -up dhcp-4.3.1b1/includes/dhcpd.h.fLPqYB dhcp-4.3.1b1/includes/dhcpd.h
+--- dhcp-4.3.1b1/includes/dhcpd.h.fLPqYB	2014-07-02 19:58:39.000000000 +0200
++++ dhcp-4.3.1b1/includes/dhcpd.h	2014-07-10 17:38:26.941599360 +0200
+@@ -1152,6 +1152,9 @@ struct client_config {
  	int do_forward_update;		/* If nonzero, and if we have the
  					   information we need, update the
  					   A record for the address we get. */
@@ -494,10 +494,10 @@ diff -up dhcp-4.3.0a1/includes/dhcpd.h.options dhcp-4.3.0a1/includes/dhcpd.h
  };
  
  /* Per-interface state used in the dhcp client... */
-diff -up dhcp-4.3.0a1/includes/dhctoken.h.options dhcp-4.3.0a1/includes/dhctoken.h
---- dhcp-4.3.0a1/includes/dhctoken.h.options	2013-12-19 14:50:15.014192989 +0100
-+++ dhcp-4.3.0a1/includes/dhctoken.h	2013-12-19 14:51:57.472758577 +0100
-@@ -373,7 +373,8 @@ enum dhcp_token {
+diff -up dhcp-4.3.1b1/includes/dhctoken.h.fLPqYB dhcp-4.3.1b1/includes/dhctoken.h
+--- dhcp-4.3.1b1/includes/dhctoken.h.fLPqYB	2014-07-02 19:58:39.000000000 +0200
++++ dhcp-4.3.1b1/includes/dhctoken.h	2014-07-10 17:38:26.942599346 +0200
+@@ -367,7 +367,8 @@ enum dhcp_token {
  	TOKEN_INFINIBAND = 668,
  	POOL6 = 669,
  	V6RELAY = 670,
diff --git a/dhcp-duidv4.patch b/dhcp-duidv4.patch
index 97138ae..7b2dfab 100644
--- a/dhcp-duidv4.patch
+++ b/dhcp-duidv4.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0/client/dhclient.8.duidv4 dhcp-4.3.0/client/dhclient.8
---- dhcp-4.3.0/client/dhclient.8.duidv4	2014-02-18 15:52:44.564123664 +0100
-+++ dhcp-4.3.0/client/dhclient.8	2014-02-18 15:52:44.629122766 +0100
-@@ -454,6 +454,9 @@ used to construct a RFC4361 style client
+diff -up dhcp-4.3.1b1/client/dhclient.8.KrJcIv dhcp-4.3.1b1/client/dhclient.8
+--- dhcp-4.3.1b1/client/dhclient.8.KrJcIv	2014-07-10 17:39:25.852763873 +0200
++++ dhcp-4.3.1b1/client/dhclient.8	2014-07-10 17:54:26.841012988 +0200
+@@ -458,6 +458,9 @@ used to construct a RFC4361 style client
  in the client's messages.  This client id can be overridden by
  setting a client id in the configuration file.  Overridding the
  client id in this fashion is discouraged.
@@ -11,10 +11,10 @@ diff -up dhcp-4.3.0/client/dhclient.8.duidv4 dhcp-4.3.0/client/dhclient.8
  .TP
  .BI \-I
  Use the standard DDNS scheme from RFCs 4701 & 4702.  
-diff -up dhcp-4.3.0/client/dhclient.c.duidv4 dhcp-4.3.0/client/dhclient.c
---- dhcp-4.3.0/client/dhclient.c.duidv4	2014-02-18 15:52:44.626122807 +0100
-+++ dhcp-4.3.0/client/dhclient.c	2014-02-18 15:52:44.630122752 +0100
-@@ -72,7 +72,7 @@ struct sockaddr_in sockaddr_broadcast;
+diff -up dhcp-4.3.1b1/client/dhclient.c.KrJcIv dhcp-4.3.1b1/client/dhclient.c
+--- dhcp-4.3.1b1/client/dhclient.c.KrJcIv	2014-07-10 17:54:26.829013157 +0200
++++ dhcp-4.3.1b1/client/dhclient.c	2014-07-10 17:55:50.155835918 +0200
+@@ -73,7 +73,7 @@ struct sockaddr_in sockaddr_broadcast;
  struct in_addr giaddr;
  struct data_string default_duid;
  int duid_type = 0;
@@ -23,7 +23,7 @@ diff -up dhcp-4.3.0/client/dhclient.c.duidv4 dhcp-4.3.0/client/dhclient.c
  int std_dhcid = 0;
  
  /* ASSERT_STATE() does nothing now; it used to be
-@@ -1270,7 +1270,7 @@ static void setup_ib_interface(struct in
+@@ -1301,7 +1301,7 @@ static void setup_ib_interface(struct in
  	}
  
  	/* No client ID specified */
@@ -32,15 +32,15 @@ diff -up dhcp-4.3.0/client/dhclient.c.duidv4 dhcp-4.3.0/client/dhclient.c
  }
  
  /* Individual States:
-@@ -3299,6 +3299,7 @@ form_duid(struct data_string *duid, cons
- {
+@@ -3342,6 +3342,7 @@ form_duid(struct data_string *duid, cons
  	struct interface_info *ip;
  	int len;
+ 	char *str;
 +	unsigned hlen;
  
  	/* For now, just use the first interface on the list. */
  	ip = interfaces;
-@@ -3322,6 +3323,11 @@ form_duid(struct data_string *duid, cons
+@@ -3365,6 +3366,11 @@ form_duid(struct data_string *duid, cons
  	if (duid_type == 0)
  		duid_type = stateless ? DUID_LL : DUID_LLT;
  
@@ -52,7 +52,7 @@ diff -up dhcp-4.3.0/client/dhclient.c.duidv4 dhcp-4.3.0/client/dhclient.c
  	/*
  	 * 2 bytes for the 'duid type' field.
  	 * 2 bytes for the 'htype' field.
-@@ -3329,7 +3335,7 @@ form_duid(struct data_string *duid, cons
+@@ -3372,7 +3378,7 @@ form_duid(struct data_string *duid, cons
  	 * enough bytes for the hardware address (note that hw_address has
  	 * the 'htype' on byte zero).
  	 */
@@ -61,7 +61,7 @@ diff -up dhcp-4.3.0/client/dhclient.c.duidv4 dhcp-4.3.0/client/dhclient.c
  	if (duid_type == DUID_LLT)
  		len += 4;
  	if (!buffer_allocate(&duid->buffer, len, MDL))
-@@ -3343,12 +3349,12 @@ form_duid(struct data_string *duid, cons
+@@ -3386,12 +3392,12 @@ form_duid(struct data_string *duid, cons
  		putUShort(duid->buffer->data + 2, ip->hw_address.hbuf[0]);
  		putULong(duid->buffer->data + 4, cur_time - DUID_TIME_EPOCH);
  		memcpy(duid->buffer->data + 8, ip->hw_address.hbuf + 1,
@@ -74,5 +74,5 @@ diff -up dhcp-4.3.0/client/dhclient.c.duidv4 dhcp-4.3.0/client/dhclient.c
 -		       ip->hw_address.hlen - 1);
 +		       hlen - 1);
  	}
- 	
- 	return ISC_R_SUCCESS;
+ 
+ 	str = quotify_buf(duid->data, duid->len, MDL);
diff --git a/dhcp-getifaddrs.patch b/dhcp-getifaddrs.patch
index bf52db7..685e52a 100644
--- a/dhcp-getifaddrs.patch
+++ b/dhcp-getifaddrs.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0a1/common/discover.c.getifaddrs dhcp-4.3.0a1/common/discover.c
---- dhcp-4.3.0a1/common/discover.c.getifaddrs	2013-12-11 01:25:12.000000000 +0100
-+++ dhcp-4.3.0a1/common/discover.c	2013-12-20 13:38:59.995493253 +0100
-@@ -376,391 +376,13 @@ end_iface_scan(struct iface_conf_list *i
+diff -up dhcp-4.3.1b1/common/discover.c.AyFwkY dhcp-4.3.1b1/common/discover.c
+--- dhcp-4.3.1b1/common/discover.c.AyFwkY	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/common/discover.c	2014-07-10 17:58:21.588696480 +0200
+@@ -373,391 +373,13 @@ end_iface_scan(struct iface_conf_list *i
  	ifaces->sock = -1;
  }
  
@@ -43,7 +43,7 @@ diff -up dhcp-4.3.0a1/common/discover.c.getifaddrs dhcp-4.3.0a1/common/discover.
 - */
 -int 
 -begin_iface_scan(struct iface_conf_list *ifaces) {
--	char buf[256];
+-	char buf[IF_LINE_LENGTH];
 -	int len;
 -	int i;
 -
@@ -116,7 +116,7 @@ diff -up dhcp-4.3.0a1/common/discover.c.getifaddrs dhcp-4.3.0a1/common/discover.
 - */
 -static int
 -next_iface4(struct iface_info *info, int *err, struct iface_conf_list *ifaces) {
--	char buf[256];
+-	char buf[IF_LINE_LENGTH];
 -	int len;
 -	char *p;
 -	char *name;
@@ -240,7 +240,7 @@ diff -up dhcp-4.3.0a1/common/discover.c.getifaddrs dhcp-4.3.0a1/common/discover.
 - */
 -static int
 -next_iface6(struct iface_info *info, int *err, struct iface_conf_list *ifaces) {
--	char buf[256];
+-	char buf[IF_LINE_LENGTH];
 -	int len;
 -	char *p;
 -	char *name;
@@ -394,7 +394,7 @@ diff -up dhcp-4.3.0a1/common/discover.c.getifaddrs dhcp-4.3.0a1/common/discover.
   * function.
   *
   * The getifaddrs() man page describes the use.
-@@ -808,6 +430,8 @@ begin_iface_scan(struct iface_conf_list
+@@ -805,6 +427,8 @@ begin_iface_scan(struct iface_conf_list
   */
  int
  next_iface(struct iface_info *info, int *err, struct iface_conf_list *ifaces) {
@@ -403,7 +403,7 @@ diff -up dhcp-4.3.0a1/common/discover.c.getifaddrs dhcp-4.3.0a1/common/discover.
  	if (ifaces->next == NULL) {
  		*err = 0;
  		return 0;
-@@ -819,8 +443,20 @@ next_iface(struct iface_info *info, int
+@@ -816,8 +440,20 @@ next_iface(struct iface_info *info, int
  		return 0;
  	}
  	strcpy(info->name, ifaces->next->ifa_name);
diff --git a/dhcp-lpf-ib.patch b/dhcp-lpf-ib.patch
index 8f505b3..8e094d6 100644
--- a/dhcp-lpf-ib.patch
+++ b/dhcp-lpf-ib.patch
@@ -1,16 +1,16 @@
-diff -up dhcp-4.3.0a1/client/dhclient.c.lpf-ib dhcp-4.3.0a1/client/dhclient.c
---- dhcp-4.3.0a1/client/dhclient.c.lpf-ib	2013-12-20 14:03:30.337992402 +0100
-+++ dhcp-4.3.0a1/client/dhclient.c	2013-12-20 14:03:30.345992290 +0100
-@@ -113,6 +113,8 @@ static int check_domain_name_list(const
+diff -up dhcp-4.3.1b1/client/dhclient.c.bmgpWV dhcp-4.3.1b1/client/dhclient.c
+--- dhcp-4.3.1b1/client/dhclient.c.bmgpWV	2014-07-10 17:50:26.922402550 +0200
++++ dhcp-4.3.1b1/client/dhclient.c	2014-07-10 17:53:43.629623477 +0200
+@@ -114,6 +114,8 @@ static int check_domain_name_list(const
  static int check_option_values(struct universe *universe, unsigned int opt,
  			       const char *ptr, size_t len);
  
 +static void setup_ib_interface(struct interface_info *ip);
 +
+ #ifndef UNIT_TEST
  int
  main(int argc, char **argv) {
- 	int fd;
-@@ -915,6 +917,13 @@ main(int argc, char **argv) {
+@@ -937,6 +939,13 @@ main(int argc, char **argv) {
  	}
  	srandom(seed + cur_time + (unsigned)getpid());
  
@@ -24,7 +24,7 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.lpf-ib dhcp-4.3.0a1/client/dhclient.c
  
  	/*
  	 * Establish a default DUID.  We always do so for v6 and
-@@ -1199,6 +1208,29 @@ int find_subnet (struct subnet **sp,
+@@ -1230,6 +1239,29 @@ int find_subnet (struct subnet **sp,
  	return 0;
  }
  
@@ -54,9 +54,9 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.lpf-ib dhcp-4.3.0a1/client/dhclient.c
  /* Individual States:
   *
   * Each routine is called from the dhclient_state_machine() in one of
-diff -up dhcp-4.3.0a1/common/bpf.c.lpf-ib dhcp-4.3.0a1/common/bpf.c
---- dhcp-4.3.0a1/common/bpf.c.lpf-ib	2013-12-20 14:03:30.330992500 +0100
-+++ dhcp-4.3.0a1/common/bpf.c	2013-12-20 14:03:30.345992290 +0100
+diff -up dhcp-4.3.1b1/common/bpf.c.bmgpWV dhcp-4.3.1b1/common/bpf.c
+--- dhcp-4.3.1b1/common/bpf.c.bmgpWV	2014-07-10 17:48:03.797424616 +0200
++++ dhcp-4.3.1b1/common/bpf.c	2014-07-10 17:52:57.705272295 +0200
 @@ -199,11 +199,44 @@ struct bpf_insn dhcp_bpf_filter [] = {
  	BPF_STMT(BPF_RET+BPF_K, 0),
  };
@@ -102,9 +102,9 @@ diff -up dhcp-4.3.0a1/common/bpf.c.lpf-ib dhcp-4.3.0a1/common/bpf.c
  #if defined (HAVE_TR_SUPPORT)
  struct bpf_insn dhcp_bpf_tr_filter [] = {
          /* accept all token ring packets due to variable length header */
-diff -up dhcp-4.3.0a1/common/lpf.c.lpf-ib dhcp-4.3.0a1/common/lpf.c
---- dhcp-4.3.0a1/common/lpf.c.lpf-ib	2013-12-20 14:03:30.331992486 +0100
-+++ dhcp-4.3.0a1/common/lpf.c	2013-12-20 14:03:30.346992276 +0100
+diff -up dhcp-4.3.1b1/common/lpf.c.bmgpWV dhcp-4.3.1b1/common/lpf.c
+--- dhcp-4.3.1b1/common/lpf.c.bmgpWV	2014-07-10 17:48:03.797424616 +0200
++++ dhcp-4.3.1b1/common/lpf.c	2014-07-10 17:52:57.706272281 +0200
 @@ -46,6 +46,17 @@
  #if defined (USE_LPF_RECEIVE) || defined (USE_LPF_HWADDR)
  #include <sys/ioctl.h>
@@ -524,10 +524,10 @@ diff -up dhcp-4.3.0a1/common/lpf.c.lpf-ib dhcp-4.3.0a1/common/lpf.c
 +	freeifaddrs(ifaddrs);
  }
  #endif
-diff -up dhcp-4.3.0a1/common/socket.c.lpf-ib dhcp-4.3.0a1/common/socket.c
---- dhcp-4.3.0a1/common/socket.c.lpf-ib	2013-12-11 01:25:12.000000000 +0100
-+++ dhcp-4.3.0a1/common/socket.c	2013-12-20 14:04:54.904811982 +0100
-@@ -328,7 +328,7 @@ void if_register_send (info)
+diff -up dhcp-4.3.1b1/common/socket.c.bmgpWV dhcp-4.3.1b1/common/socket.c
+--- dhcp-4.3.1b1/common/socket.c.bmgpWV	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/common/socket.c	2014-07-10 17:52:57.706272281 +0200
+@@ -322,7 +322,7 @@ void if_register_send (info)
  	info->wfdesc = if_register_socket(info, AF_INET, 0, NULL);
  	/* If this is a normal IPv4 address, get the hardware address. */
  	if (strcmp(info->name, "fallback") != 0)
@@ -536,7 +536,7 @@ diff -up dhcp-4.3.0a1/common/socket.c.lpf-ib dhcp-4.3.0a1/common/socket.c
  #if defined (USE_SOCKET_FALLBACK)
  	/* Fallback only registers for send, but may need to receive as
  	   well. */
-@@ -391,7 +391,7 @@ void if_register_receive (info)
+@@ -385,7 +385,7 @@ void if_register_receive (info)
  #endif /* IP_PKTINFO... */
  	/* If this is a normal IPv4 address, get the hardware address. */
  	if (strcmp(info->name, "fallback") != 0)
@@ -545,7 +545,7 @@ diff -up dhcp-4.3.0a1/common/socket.c.lpf-ib dhcp-4.3.0a1/common/socket.c
  
  	if (!quiet_interface_discovery)
  		log_info ("Listening on Socket/%s%s%s",
-@@ -505,7 +505,7 @@ if_register6(struct interface_info *info
+@@ -499,7 +499,7 @@ if_register6(struct interface_info *info
  	if (req_multi)
  		if_register_multicast(info);
  
@@ -554,7 +554,7 @@ diff -up dhcp-4.3.0a1/common/socket.c.lpf-ib dhcp-4.3.0a1/common/socket.c
  
  	if (!quiet_interface_discovery) {
  		if (info->shared_network != NULL) {
-@@ -561,7 +561,7 @@ if_register_linklocal6(struct interface_
+@@ -555,7 +555,7 @@ if_register_linklocal6(struct interface_
  	info->rfdesc = sock;
  	info->wfdesc = sock;
  
@@ -563,10 +563,10 @@ diff -up dhcp-4.3.0a1/common/socket.c.lpf-ib dhcp-4.3.0a1/common/socket.c
  
  	if (!quiet_interface_discovery) {
  		if (info->shared_network != NULL) {
-diff -up dhcp-4.3.0a1/includes/dhcpd.h.lpf-ib dhcp-4.3.0a1/includes/dhcpd.h
---- dhcp-4.3.0a1/includes/dhcpd.h.lpf-ib	2013-12-20 14:03:30.338992388 +0100
-+++ dhcp-4.3.0a1/includes/dhcpd.h	2013-12-20 14:03:30.348992248 +0100
-@@ -1249,6 +1249,7 @@ struct interface_info {
+diff -up dhcp-4.3.1b1/includes/dhcpd.h.bmgpWV dhcp-4.3.1b1/includes/dhcpd.h
+--- dhcp-4.3.1b1/includes/dhcpd.h.bmgpWV	2014-07-10 17:50:26.923402536 +0200
++++ dhcp-4.3.1b1/includes/dhcpd.h	2014-07-10 17:52:57.707272266 +0200
+@@ -1248,6 +1248,7 @@ struct interface_info {
  	struct shared_network *shared_network;
  				/* Networks connected to this interface. */
  	struct hardware hw_address;	/* Its physical address. */
@@ -574,7 +574,7 @@ diff -up dhcp-4.3.0a1/includes/dhcpd.h.lpf-ib dhcp-4.3.0a1/includes/dhcpd.h
  	struct in_addr *addresses;	/* Addresses associated with this
  					 * interface.
  					 */
-@@ -2425,7 +2426,7 @@ void print_dns_status (int, struct dhcp_
+@@ -2439,7 +2440,7 @@ void print_dns_status (int, struct dhcp_
  #endif
  const char *print_time(TIME);
  
diff --git a/dhcp-paranoia.patch b/dhcp-paranoia.patch
index bfc9542..0f2db8c 100644
--- a/dhcp-paranoia.patch
+++ b/dhcp-paranoia.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0a1/client/dhclient.c.paranoia dhcp-4.3.0a1/client/dhclient.c
---- dhcp-4.3.0a1/client/dhclient.c.paranoia	2013-12-19 16:30:21.401211512 +0100
-+++ dhcp-4.3.0a1/client/dhclient.c	2013-12-19 16:30:21.409211401 +0100
-@@ -1712,11 +1712,6 @@ int write_host (host)
+diff -up dhcp-4.3.1b1/client/dhclient.c.dlTsyN dhcp-4.3.1b1/client/dhclient.c
+--- dhcp-4.3.1b1/client/dhclient.c.dlTsyN	2014-07-10 17:49:49.882925843 +0200
++++ dhcp-4.3.1b1/client/dhclient.c	2014-07-10 17:50:26.922402550 +0200
+@@ -1748,11 +1748,6 @@ int write_host (host)
  	return 0;
  }
  
@@ -13,10 +13,10 @@ diff -up dhcp-4.3.0a1/client/dhclient.c.paranoia dhcp-4.3.0a1/client/dhclient.c
  void bootp (packet)
  	struct packet *packet;
  {
-diff -up dhcp-4.3.0a1/includes/dhcpd.h.paranoia dhcp-4.3.0a1/includes/dhcpd.h
---- dhcp-4.3.0a1/includes/dhcpd.h.paranoia	2013-12-19 16:30:21.403211484 +0100
-+++ dhcp-4.3.0a1/includes/dhcpd.h	2013-12-19 16:30:21.410211387 +0100
-@@ -2851,7 +2851,11 @@ void commit_leases_timeout (void *);
+diff -up dhcp-4.3.1b1/includes/dhcpd.h.dlTsyN dhcp-4.3.1b1/includes/dhcpd.h
+--- dhcp-4.3.1b1/includes/dhcpd.h.dlTsyN	2014-07-10 17:48:03.798424601 +0200
++++ dhcp-4.3.1b1/includes/dhcpd.h	2014-07-10 17:50:26.923402536 +0200
+@@ -2866,7 +2866,11 @@ void commit_leases_timeout (void *);
  void commit_leases_readerdry(void *);
  int commit_leases (void);
  int commit_leases_timed (void);
@@ -28,10 +28,10 @@ diff -up dhcp-4.3.0a1/includes/dhcpd.h.paranoia dhcp-4.3.0a1/includes/dhcpd.h
  int new_lease_file (void);
  int group_writer (struct group_object *);
  int write_ia(const struct ia_xx *);
-diff -up dhcp-4.3.0a1/server/confpars.c.paranoia dhcp-4.3.0a1/server/confpars.c
---- dhcp-4.3.0a1/server/confpars.c.paranoia	2013-12-19 16:30:21.346212275 +0100
-+++ dhcp-4.3.0a1/server/confpars.c	2013-12-19 16:30:21.412211359 +0100
-@@ -225,7 +225,11 @@ void trace_conf_input (trace_type_t *tty
+diff -up dhcp-4.3.1b1/server/confpars.c.dlTsyN dhcp-4.3.1b1/server/confpars.c
+--- dhcp-4.3.1b1/server/confpars.c.dlTsyN	2014-07-10 17:39:25.801764596 +0200
++++ dhcp-4.3.1b1/server/confpars.c	2014-07-10 17:50:26.924402522 +0200
+@@ -219,7 +219,11 @@ void trace_conf_input (trace_type_t *tty
  	}
  
  	if (!leaseconf_initialized && ttype == trace_readleases_type) {
@@ -43,10 +43,10 @@ diff -up dhcp-4.3.0a1/server/confpars.c.paranoia dhcp-4.3.0a1/server/confpars.c
  		leaseconf_initialized = 1;
  		postdb_startup ();
  	}
-diff -up dhcp-4.3.0a1/server/db.c.paranoia dhcp-4.3.0a1/server/db.c
---- dhcp-4.3.0a1/server/db.c.paranoia	2013-12-19 16:30:21.346212275 +0100
-+++ dhcp-4.3.0a1/server/db.c	2013-12-19 16:30:21.412211359 +0100
-@@ -48,6 +48,10 @@ static int counting = 0;
+diff -up dhcp-4.3.1b1/server/db.c.dlTsyN dhcp-4.3.1b1/server/db.c
+--- dhcp-4.3.1b1/server/db.c.dlTsyN	2014-07-10 17:39:25.801764596 +0200
++++ dhcp-4.3.1b1/server/db.c	2014-07-10 17:50:26.925402508 +0200
+@@ -42,6 +42,10 @@ static int counting = 0;
  static int count = 0;
  TIME write_time;
  int lease_file_is_corrupt = 0;
@@ -57,7 +57,7 @@ diff -up dhcp-4.3.0a1/server/db.c.paranoia dhcp-4.3.0a1/server/db.c
  
  /* Write a single binding scope value in parsable format.
   */
-@@ -1052,8 +1056,11 @@ int commit_leases_timed()
+@@ -1046,8 +1050,11 @@ int commit_leases_timed()
  	return (1);
  }
  
@@ -71,7 +71,7 @@ diff -up dhcp-4.3.0a1/server/db.c.paranoia dhcp-4.3.0a1/server/db.c
  {
  	isc_result_t status;
  
-@@ -1072,6 +1079,11 @@ void db_startup (testp)
+@@ -1066,6 +1073,11 @@ void db_startup (testp)
  	}
  #endif
  
@@ -83,7 +83,7 @@ diff -up dhcp-4.3.0a1/server/db.c.paranoia dhcp-4.3.0a1/server/db.c
  #if defined (TRACING)
  	/* If we're playing back, there is no lease file, so we can't
  	   append it, so we create one immediately (maybe this isn't
-@@ -1134,6 +1146,17 @@ int new_lease_file ()
+@@ -1128,6 +1140,17 @@ int new_lease_file ()
  		log_error ("Can't create new lease file: %m");
  		return 0;
  	}
@@ -101,9 +101,9 @@ diff -up dhcp-4.3.0a1/server/db.c.paranoia dhcp-4.3.0a1/server/db.c
  	if ((new_db_file = fdopen(db_fd, "we")) == NULL) {
  		log_error("Can't fdopen new lease file: %m");
  		close(db_fd);
-diff -up dhcp-4.3.0a1/server/dhcpd.8.paranoia dhcp-4.3.0a1/server/dhcpd.8
---- dhcp-4.3.0a1/server/dhcpd.8.paranoia	2013-12-11 01:01:03.000000000 +0100
-+++ dhcp-4.3.0a1/server/dhcpd.8	2013-12-19 16:30:21.413211345 +0100
+diff -up dhcp-4.3.1b1/server/dhcpd.8.dlTsyN dhcp-4.3.1b1/server/dhcpd.8
+--- dhcp-4.3.1b1/server/dhcpd.8.dlTsyN	2014-07-02 19:58:39.000000000 +0200
++++ dhcp-4.3.1b1/server/dhcpd.8	2014-07-10 17:50:26.925402508 +0200
 @@ -82,6 +82,18 @@ dhcpd - Dynamic Host Configuration Proto
  .I trace-output-file
  ]
@@ -139,10 +139,10 @@ diff -up dhcp-4.3.0a1/server/dhcpd.8.paranoia dhcp-4.3.0a1/server/dhcpd.8
  .PP
  .I Modifying default file locations:
  The following options can be used to modify the locations 
-diff -up dhcp-4.3.0a1/server/dhcpd.c.paranoia dhcp-4.3.0a1/server/dhcpd.c
---- dhcp-4.3.0a1/server/dhcpd.c.paranoia	2013-12-19 16:30:21.347212261 +0100
-+++ dhcp-4.3.0a1/server/dhcpd.c	2013-12-19 16:30:21.414211331 +0100
-@@ -623,7 +623,11 @@ main(int argc, char **argv) {
+diff -up dhcp-4.3.1b1/server/dhcpd.c.dlTsyN dhcp-4.3.1b1/server/dhcpd.c
+--- dhcp-4.3.1b1/server/dhcpd.c.dlTsyN	2014-07-10 17:39:25.802764582 +0200
++++ dhcp-4.3.1b1/server/dhcpd.c	2014-07-10 17:52:35.341588248 +0200
+@@ -628,7 +628,11 @@ main(int argc, char **argv) {
  	group_write_hook = group_writer;
  
  	/* Start up the database... */
@@ -154,49 +154,3 @@ diff -up dhcp-4.3.0a1/server/dhcpd.c.paranoia dhcp-4.3.0a1/server/dhcpd.c
  
  	if (lftest)
  		exit (0);
-@@ -694,22 +698,6 @@ main(int argc, char **argv) {
- 			exit (0);
- 	}
-  
--#if defined (PARANOIA)
--	/* change uid to the specified one */
--
--	if (set_gid) {
--		if (setgroups (0, (void *)0))
--			log_fatal ("setgroups: %m");
--		if (setgid (set_gid))
--			log_fatal ("setgid(%d): %m", (int) set_gid);
--	}	
--
--	if (set_uid) {
--		if (setuid (set_uid))
--			log_fatal ("setuid(%d): %m", (int) set_uid);
--	}
--#endif /* PARANOIA */
--
- 	/*
- 	 * Deal with pid files.  If the user told us
- 	 * not to write a file we don't read one either
-@@ -746,6 +734,22 @@ main(int argc, char **argv) {
- 		}
- 	}
- 
-+#if defined (PARANOIA)
-+	/* change uid to the specified one */
-+
-+	if (set_gid) {
-+		if (setgroups (0, (void *)0))
-+			log_fatal ("setgroups: %m");
-+		if (setgid (set_gid))
-+			log_fatal ("setgid(%d): %m", (int) set_gid);
-+	}	
-+
-+	if (set_uid) {
-+		if (setuid (set_uid))
-+			log_fatal ("setuid(%d): %m", (int) set_uid);
-+	}
-+#endif /* PARANOIA */
-+
- 	/* If we were requested to log to stdout on the command line,
- 	   keep doing so; otherwise, stop. */
- 	if (log_perror == -1)
diff --git a/dhcp-remove-bind.patch b/dhcp-remove-bind.patch
index 901a8b0..02f4ffc 100644
--- a/dhcp-remove-bind.patch
+++ b/dhcp-remove-bind.patch
@@ -1,25 +1,7 @@
-diff -up dhcp-4.3.0a1/Makefile.am.remove-bind dhcp-4.3.0a1/Makefile.am
---- dhcp-4.3.0a1/Makefile.am.remove-bind	2013-12-13 21:49:44.000000000 +0100
-+++ dhcp-4.3.0a1/Makefile.am	2013-12-19 14:23:48.907263942 +0100
-@@ -25,7 +25,13 @@ EXTRA_DIST = RELNOTES LICENSE \
- 	     bind/Makefile bind/bind.tar.gz bind/version.tmp \
- 	     common/tests/Atffile server/tests/Atffile
- 
--SUBDIRS = bind includes tests common dst omapip client dhcpctl relay server
-+if BUNDLED_BIND
-+SUBDIRS = bind
-+else
-+SUBDIRS = 
-+endif
-+
-+SUBDIRS += includes tests common dst omapip client dhcpctl relay server
- 
- nobase_include_HEADERS = dhcpctl/dhcpctl.h
- 
-diff -up dhcp-4.3.0a1/client/Makefile.am.remove-bind dhcp-4.3.0a1/client/Makefile.am
---- dhcp-4.3.0a1/client/Makefile.am.remove-bind	2013-12-19 14:23:48.904263983 +0100
-+++ dhcp-4.3.0a1/client/Makefile.am	2013-12-19 14:32:27.845095985 +0100
-@@ -4,8 +4,8 @@ dhclient_SOURCES = clparse.c dhclient.c
+diff -up dhcp-4.3.1b1/client/Makefile.am.brGmwh dhcp-4.3.1b1/client/Makefile.am
+--- dhcp-4.3.1b1/client/Makefile.am.brGmwh	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/client/Makefile.am	2014-07-10 17:36:30.484250976 +0200
+@@ -10,8 +10,8 @@ dhclient_SOURCES = clparse.c dhclient.c
  		   scripts/bsdos scripts/freebsd scripts/linux scripts/macos \
  		   scripts/netbsd scripts/nextstep scripts/openbsd \
  		   scripts/solaris scripts/openwrt
@@ -30,10 +12,10 @@ diff -up dhcp-4.3.0a1/client/Makefile.am.remove-bind dhcp-4.3.0a1/client/Makefil
  man_MANS = dhclient.8 dhclient-script.8 dhclient.conf.5 dhclient.leases.5
  EXTRA_DIST = $(man_MANS)
  
-diff -up dhcp-4.3.0a1/common/tests/Makefile.am.remove-bind dhcp-4.3.0a1/common/tests/Makefile.am
---- dhcp-4.3.0a1/common/tests/Makefile.am.remove-bind	2013-12-19 14:23:48.905263969 +0100
-+++ dhcp-4.3.0a1/common/tests/Makefile.am	2013-12-19 14:33:01.260634412 +0100
-@@ -13,15 +13,14 @@ ATF_TESTS += alloc_unittest dns_unittest
+diff -up dhcp-4.3.1b1/common/tests/Makefile.am.brGmwh dhcp-4.3.1b1/common/tests/Makefile.am
+--- dhcp-4.3.1b1/common/tests/Makefile.am.brGmwh	2014-07-10 17:36:30.485250962 +0200
++++ dhcp-4.3.1b1/common/tests/Makefile.am	2014-07-10 17:38:04.010924566 +0200
+@@ -13,21 +13,20 @@ ATF_TESTS += alloc_unittest dns_unittest
  alloc_unittest_SOURCES = test_alloc.c $(top_srcdir)/tests/t_api_dhcp.c
  alloc_unittest_LDADD = $(ATF_LDFLAGS)
  alloc_unittest_LDADD += ../libdhcp.a  \
@@ -47,16 +29,24 @@ diff -up dhcp-4.3.0a1/common/tests/Makefile.am.remove-bind dhcp-4.3.0a1/common/t
  dns_unittest_LDADD += ../libdhcp.a  \
 -	../../omapip/libomapi.a ../../bind/lib/libirs.a \
 -	../../bind/lib/libdns.a ../../bind/lib/libisccfg.a  ../../bind/lib/libisc.a
++	../../omapip/libomapi.a \
++	$(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
+ 
+ misc_unittest_SOURCES = misc_unittest.c $(top_srcdir)/tests/t_api_dhcp.c
+ misc_unittest_LDADD = $(ATF_LDFLAGS)
+ misc_unittest_LDADD += ../libdhcp.a  \
+-	../../omapip/libomapi.a ../../bind/lib/libirs.a \
+-	../../bind/lib/libdns.a ../../bind/lib/libisccfg.a  ../../bind/lib/libisc.a
 -
 +	../../omapip/libomapi.a \
 +	$(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
  check: $(ATF_TESTS)
  	atf-run | atf-report
  
-diff -up dhcp-4.3.0a1/configure.ac.remove-bind dhcp-4.3.0a1/configure.ac
---- dhcp-4.3.0a1/configure.ac.remove-bind	2013-12-19 14:23:48.906263956 +0100
-+++ dhcp-4.3.0a1/configure.ac	2013-12-19 14:37:44.358723889 +0100
-@@ -552,20 +552,37 @@ AC_CHECK_MEMBER(struct msghdr.msg_contro
+diff -up dhcp-4.3.1b1/configure.ac.brGmwh dhcp-4.3.1b1/configure.ac
+--- dhcp-4.3.1b1/configure.ac.brGmwh	2014-07-02 20:01:26.000000000 +0200
++++ dhcp-4.3.1b1/configure.ac	2014-07-10 17:36:30.485250962 +0200
+@@ -562,20 +562,37 @@ AC_CHECK_MEMBER(struct msghdr.msg_contro
  
  libbind=
  AC_ARG_WITH(libbind,
@@ -99,7 +89,7 @@ diff -up dhcp-4.3.0a1/configure.ac.remove-bind dhcp-4.3.0a1/configure.ac
  
  # OpenLDAP support.
  AC_ARG_WITH(ldap,
-@@ -600,7 +617,7 @@ fi
+@@ -610,7 +627,7 @@ fi
  CFLAGS="$CFLAGS $STD_CWARNINGS"
  
  # Try to add the bind include directory
@@ -108,9 +98,9 @@ diff -up dhcp-4.3.0a1/configure.ac.remove-bind dhcp-4.3.0a1/configure.ac
  
  case "$host" in
  *-darwin*)
-diff -up dhcp-4.3.0a1/dhcpctl/Makefile.am.remove-bind dhcp-4.3.0a1/dhcpctl/Makefile.am
---- dhcp-4.3.0a1/dhcpctl/Makefile.am.remove-bind	2013-12-19 14:23:48.906263956 +0100
-+++ dhcp-4.3.0a1/dhcpctl/Makefile.am	2013-12-19 14:40:06.497754274 +0100
+diff -up dhcp-4.3.1b1/dhcpctl/Makefile.am.brGmwh dhcp-4.3.1b1/dhcpctl/Makefile.am
+--- dhcp-4.3.1b1/dhcpctl/Makefile.am.brGmwh	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/dhcpctl/Makefile.am	2014-07-10 17:36:30.485250962 +0200
 @@ -6,12 +6,9 @@ EXTRA_DIST = $(man_MANS)
  
  omshell_SOURCES = omshell.c
@@ -126,9 +116,27 @@ diff -up dhcp-4.3.0a1/dhcpctl/Makefile.am.remove-bind dhcp-4.3.0a1/dhcpctl/Makef
 -	       ../bind/lib/libirs.a ../bind/lib/libdns.a \
 -               ../bind/lib/libisccfg.a ../bind/lib/libisc.a
 +	       $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
-diff -up dhcp-4.3.0a1/omapip/Makefile.am.remove-bind dhcp-4.3.0a1/omapip/Makefile.am
---- dhcp-4.3.0a1/omapip/Makefile.am.remove-bind	2013-12-19 14:23:48.908263928 +0100
-+++ dhcp-4.3.0a1/omapip/Makefile.am	2013-12-19 14:40:51.440118923 +0100
+diff -up dhcp-4.3.1b1/Makefile.am.brGmwh dhcp-4.3.1b1/Makefile.am
+--- dhcp-4.3.1b1/Makefile.am.brGmwh	2014-07-02 19:58:38.000000000 +0200
++++ dhcp-4.3.1b1/Makefile.am	2014-07-10 17:36:30.484250976 +0200
+@@ -25,7 +25,13 @@ EXTRA_DIST = RELNOTES LICENSE \
+ 	     bind/Makefile bind/bind.tar.gz bind/version.tmp \
+ 	     common/tests/Atffile server/tests/Atffile
+ 
+-SUBDIRS = bind includes tests common dst omapip client dhcpctl relay server
++if BUNDLED_BIND
++SUBDIRS = bind
++else
++SUBDIRS = 
++endif
++
++SUBDIRS += includes tests common dst omapip client dhcpctl relay server
+ 
+ nobase_include_HEADERS = dhcpctl/dhcpctl.h
+ 
+diff -up dhcp-4.3.1b1/omapip/Makefile.am.brGmwh dhcp-4.3.1b1/omapip/Makefile.am
+--- dhcp-4.3.1b1/omapip/Makefile.am.brGmwh	2014-07-02 19:58:39.000000000 +0200
++++ dhcp-4.3.1b1/omapip/Makefile.am	2014-07-10 17:36:30.486250948 +0200
 @@ -10,6 +10,5 @@ man_MANS = omapi.3
  EXTRA_DIST = $(man_MANS)
  
@@ -138,9 +146,9 @@ diff -up dhcp-4.3.0a1/omapip/Makefile.am.remove-bind dhcp-4.3.0a1/omapip/Makefil
 -
 +svtest_LDADD = libomapi.a \
 +	       $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
-diff -up dhcp-4.3.0a1/relay/Makefile.am.remove-bind dhcp-4.3.0a1/relay/Makefile.am
---- dhcp-4.3.0a1/relay/Makefile.am.remove-bind	2013-12-19 14:23:48.908263928 +0100
-+++ dhcp-4.3.0a1/relay/Makefile.am	2013-12-19 14:41:27.302612345 +0100
+diff -up dhcp-4.3.1b1/relay/Makefile.am.brGmwh dhcp-4.3.1b1/relay/Makefile.am
+--- dhcp-4.3.1b1/relay/Makefile.am.brGmwh	2014-07-02 19:58:39.000000000 +0200
++++ dhcp-4.3.1b1/relay/Makefile.am	2014-07-10 17:36:30.486250948 +0200
 @@ -3,8 +3,7 @@ AM_CPPFLAGS = -DLOCALSTATEDIR='"@localst
  sbin_PROGRAMS = dhcrelay
  dhcrelay_SOURCES = dhcrelay.c
@@ -151,9 +159,9 @@ diff -up dhcp-4.3.0a1/relay/Makefile.am.remove-bind dhcp-4.3.0a1/relay/Makefile.
  man_MANS = dhcrelay.8
  EXTRA_DIST = $(man_MANS)
  
-diff -up dhcp-4.3.0a1/server/Makefile.am.remove-bind dhcp-4.3.0a1/server/Makefile.am
---- dhcp-4.3.0a1/server/Makefile.am.remove-bind	2013-12-19 14:23:48.910263900 +0100
-+++ dhcp-4.3.0a1/server/Makefile.am	2013-12-19 14:42:18.065895883 +0100
+diff -up dhcp-4.3.1b1/server/Makefile.am.brGmwh dhcp-4.3.1b1/server/Makefile.am
+--- dhcp-4.3.1b1/server/Makefile.am.brGmwh	2014-07-02 19:58:39.000000000 +0200
++++ dhcp-4.3.1b1/server/Makefile.am	2014-07-10 17:36:30.486250948 +0200
 @@ -13,10 +13,8 @@ dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c c
  		dhcpv6.c mdb6.c ldap.c ldap_casa.c
  
@@ -167,9 +175,9 @@ diff -up dhcp-4.3.0a1/server/Makefile.am.remove-bind dhcp-4.3.0a1/server/Makefil
  man_MANS = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5
  EXTRA_DIST = $(man_MANS)
  
-diff -up dhcp-4.3.0a1/server/tests/Makefile.am.remove-bind dhcp-4.3.0a1/server/tests/Makefile.am
---- dhcp-4.3.0a1/server/tests/Makefile.am.remove-bind	2013-12-19 14:23:48.911263886 +0100
-+++ dhcp-4.3.0a1/server/tests/Makefile.am	2013-12-19 14:43:32.943840285 +0100
+diff -up dhcp-4.3.1b1/server/tests/Makefile.am.brGmwh dhcp-4.3.1b1/server/tests/Makefile.am
+--- dhcp-4.3.1b1/server/tests/Makefile.am.brGmwh	2014-07-02 19:58:40.000000000 +0200
++++ dhcp-4.3.1b1/server/tests/Makefile.am	2014-07-10 17:36:30.486250948 +0200
 @@ -18,9 +18,8 @@ DHCPSRC = ../dhcp.c ../bootp.c ../confpa
            ../ldap.c ../ldap_casa.c ../dhcpd.c
  
diff --git a/dhcp-sharedlib.patch b/dhcp-sharedlib.patch
index 7b7327f..0646e33 100644
--- a/dhcp-sharedlib.patch
+++ b/dhcp-sharedlib.patch
@@ -1,7 +1,7 @@
-diff -up dhcp-4.3.0a1/client/Makefile.am.sharedlib dhcp-4.3.0a1/client/Makefile.am
---- dhcp-4.3.0a1/client/Makefile.am.sharedlib	2013-12-20 14:23:14.303534850 +0100
-+++ dhcp-4.3.0a1/client/Makefile.am	2013-12-20 14:23:14.312534725 +0100
-@@ -4,7 +4,7 @@ dhclient_SOURCES = clparse.c dhclient.c
+diff -up dhcp-4.3.1b1/client/Makefile.am.uCWMBl dhcp-4.3.1b1/client/Makefile.am
+--- dhcp-4.3.1b1/client/Makefile.am.uCWMBl	2014-07-10 17:36:30.484250976 +0200
++++ dhcp-4.3.1b1/client/Makefile.am	2014-07-10 17:38:10.778828583 +0200
+@@ -10,7 +10,7 @@ dhclient_SOURCES = clparse.c dhclient.c
  		   scripts/bsdos scripts/freebsd scripts/linux scripts/macos \
  		   scripts/netbsd scripts/nextstep scripts/openbsd \
  		   scripts/solaris scripts/openwrt
@@ -10,10 +10,10 @@ diff -up dhcp-4.3.0a1/client/Makefile.am.sharedlib dhcp-4.3.0a1/client/Makefile.
  		 $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
  man_MANS = dhclient.8 dhclient-script.8 dhclient.conf.5 dhclient.leases.5
  EXTRA_DIST = $(man_MANS)
-diff -up dhcp-4.3.0a1/common/tests/Makefile.am.sharedlib dhcp-4.3.0a1/common/tests/Makefile.am
---- dhcp-4.3.0a1/common/tests/Makefile.am.sharedlib	2013-12-20 14:23:14.304534836 +0100
-+++ dhcp-4.3.0a1/common/tests/Makefile.am	2013-12-20 14:23:14.313534711 +0100
-@@ -13,13 +13,13 @@ ATF_TESTS += alloc_unittest dns_unittest
+diff -up dhcp-4.3.1b1/common/tests/Makefile.am.uCWMBl dhcp-4.3.1b1/common/tests/Makefile.am
+--- dhcp-4.3.1b1/common/tests/Makefile.am.uCWMBl	2014-07-10 17:38:10.779828569 +0200
++++ dhcp-4.3.1b1/common/tests/Makefile.am	2014-07-10 17:38:21.355678580 +0200
+@@ -13,19 +13,19 @@ ATF_TESTS += alloc_unittest dns_unittest
  alloc_unittest_SOURCES = test_alloc.c $(top_srcdir)/tests/t_api_dhcp.c
  alloc_unittest_LDADD = $(ATF_LDFLAGS)
  alloc_unittest_LDADD += ../libdhcp.a  \
@@ -23,15 +23,22 @@ diff -up dhcp-4.3.0a1/common/tests/Makefile.am.sharedlib dhcp-4.3.0a1/common/tes
  
  dns_unittest_SOURCES = dns_unittest.c $(top_srcdir)/tests/t_api_dhcp.c
  dns_unittest_LDADD = $(ATF_LDFLAGS)
- dns_unittest_LDADD += ../libdhcp.a  \
+-dns_unittest_LDADD += ../libdhcp.a  \
++dns_unittest_LDADD += ../libdhcp.la  \
+ 	../../omapip/libomapi.a \
+ 	$(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
+ 
+ misc_unittest_SOURCES = misc_unittest.c $(top_srcdir)/tests/t_api_dhcp.c
+ misc_unittest_LDADD = $(ATF_LDFLAGS)
+ misc_unittest_LDADD += ../libdhcp.a  \
 -	../../omapip/libomapi.a \
 +	../../omapip/libomapi.la \
  	$(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
  check: $(ATF_TESTS)
  	atf-run | atf-report
-diff -up dhcp-4.3.0a1/configure.ac.sharedlib dhcp-4.3.0a1/configure.ac
---- dhcp-4.3.0a1/configure.ac.sharedlib	2013-12-20 14:23:14.308534781 +0100
-+++ dhcp-4.3.0a1/configure.ac	2013-12-20 14:23:14.313534711 +0100
+diff -up dhcp-4.3.1b1/configure.ac.uCWMBl dhcp-4.3.1b1/configure.ac
+--- dhcp-4.3.1b1/configure.ac.uCWMBl	2014-07-10 17:38:10.766828753 +0200
++++ dhcp-4.3.1b1/configure.ac	2014-07-10 17:38:10.779828569 +0200
 @@ -39,7 +39,8 @@ fi
  # Use this to define _GNU_SOURCE to pull in the IPv6 Advanced Socket API.
  AC_USE_SYSTEM_EXTENSIONS
@@ -42,9 +49,9 @@ diff -up dhcp-4.3.0a1/configure.ac.sharedlib dhcp-4.3.0a1/configure.ac
  AC_CONFIG_HEADERS([includes/config.h])
  
  # we sometimes need to know byte order for building packets
-diff -up dhcp-4.3.0a1/dhcpctl/Makefile.am.sharedlib dhcp-4.3.0a1/dhcpctl/Makefile.am
---- dhcp-4.3.0a1/dhcpctl/Makefile.am.sharedlib	2013-12-20 14:23:14.304534836 +0100
-+++ dhcp-4.3.0a1/dhcpctl/Makefile.am	2013-12-20 14:23:21.998428024 +0100
+diff -up dhcp-4.3.1b1/dhcpctl/Makefile.am.uCWMBl dhcp-4.3.1b1/dhcpctl/Makefile.am
+--- dhcp-4.3.1b1/dhcpctl/Makefile.am.uCWMBl	2014-07-10 17:36:30.485250962 +0200
++++ dhcp-4.3.1b1/dhcpctl/Makefile.am	2014-07-10 17:38:10.780828554 +0200
 @@ -1,14 +1,14 @@
  bin_PROGRAMS = omshell
 -lib_LIBRARIES = libdhcpctl.a
@@ -64,9 +71,9 @@ diff -up dhcp-4.3.0a1/dhcpctl/Makefile.am.sharedlib dhcp-4.3.0a1/dhcpctl/Makefil
 -cltest_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \
 +cltest_LDADD = libdhcpctl.la ../common/libdhcp.a ../omapip/libomapi.la \
  	       $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
-diff -up dhcp-4.3.0a1/omapip/Makefile.am.sharedlib dhcp-4.3.0a1/omapip/Makefile.am
---- dhcp-4.3.0a1/omapip/Makefile.am.sharedlib	2013-12-20 14:23:14.304534836 +0100
-+++ dhcp-4.3.0a1/omapip/Makefile.am	2013-12-20 14:23:14.313534711 +0100
+diff -up dhcp-4.3.1b1/omapip/Makefile.am.uCWMBl dhcp-4.3.1b1/omapip/Makefile.am
+--- dhcp-4.3.1b1/omapip/Makefile.am.uCWMBl	2014-07-10 17:36:30.486250948 +0200
++++ dhcp-4.3.1b1/omapip/Makefile.am	2014-07-10 17:38:10.780828554 +0200
 @@ -1,7 +1,7 @@
 -lib_LIBRARIES = libomapi.a
 +lib_LTLIBRARIES = libomapi.la
@@ -84,9 +91,9 @@ diff -up dhcp-4.3.0a1/omapip/Makefile.am.sharedlib dhcp-4.3.0a1/omapip/Makefile.
 -svtest_LDADD = libomapi.a \
 +svtest_LDADD = libomapi.la \
  	       $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
-diff -up dhcp-4.3.0a1/relay/Makefile.am.sharedlib dhcp-4.3.0a1/relay/Makefile.am
---- dhcp-4.3.0a1/relay/Makefile.am.sharedlib	2013-12-20 14:23:14.305534822 +0100
-+++ dhcp-4.3.0a1/relay/Makefile.am	2013-12-20 14:23:14.314534697 +0100
+diff -up dhcp-4.3.1b1/relay/Makefile.am.uCWMBl dhcp-4.3.1b1/relay/Makefile.am
+--- dhcp-4.3.1b1/relay/Makefile.am.uCWMBl	2014-07-10 17:36:30.486250948 +0200
++++ dhcp-4.3.1b1/relay/Makefile.am	2014-07-10 17:38:10.780828554 +0200
 @@ -2,7 +2,7 @@ AM_CPPFLAGS = -DLOCALSTATEDIR='"@localst
  
  sbin_PROGRAMS = dhcrelay
@@ -96,9 +103,9 @@ diff -up dhcp-4.3.0a1/relay/Makefile.am.sharedlib dhcp-4.3.0a1/relay/Makefile.am
  		 $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
  man_MANS = dhcrelay.8
  EXTRA_DIST = $(man_MANS)
-diff -up dhcp-4.3.0a1/server/Makefile.am.sharedlib dhcp-4.3.0a1/server/Makefile.am
---- dhcp-4.3.0a1/server/Makefile.am.sharedlib	2013-12-20 14:23:14.305534822 +0100
-+++ dhcp-4.3.0a1/server/Makefile.am	2013-12-20 14:23:14.314534697 +0100
+diff -up dhcp-4.3.1b1/server/Makefile.am.uCWMBl dhcp-4.3.1b1/server/Makefile.am
+--- dhcp-4.3.1b1/server/Makefile.am.uCWMBl	2014-07-10 17:36:30.486250948 +0200
++++ dhcp-4.3.1b1/server/Makefile.am	2014-07-10 17:38:10.780828554 +0200
 @@ -13,7 +13,7 @@ dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c c
  		dhcpv6.c mdb6.c ldap.c ldap_casa.c
  
@@ -108,9 +115,9 @@ diff -up dhcp-4.3.0a1/server/Makefile.am.sharedlib dhcp-4.3.0a1/server/Makefile.
  	      $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
  man_MANS = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5
  EXTRA_DIST = $(man_MANS)
-diff -up dhcp-4.3.0a1/server/tests/Makefile.am.sharedlib dhcp-4.3.0a1/server/tests/Makefile.am
---- dhcp-4.3.0a1/server/tests/Makefile.am.sharedlib	2013-12-20 14:23:14.305534822 +0100
-+++ dhcp-4.3.0a1/server/tests/Makefile.am	2013-12-20 14:23:14.314534697 +0100
+diff -up dhcp-4.3.1b1/server/tests/Makefile.am.uCWMBl dhcp-4.3.1b1/server/tests/Makefile.am
+--- dhcp-4.3.1b1/server/tests/Makefile.am.uCWMBl	2014-07-10 17:36:30.486250948 +0200
++++ dhcp-4.3.1b1/server/tests/Makefile.am	2014-07-10 17:38:10.780828554 +0200
 @@ -17,8 +17,8 @@ DHCPSRC = ../dhcp.c ../bootp.c ../confpa
            ../ddns.c ../dhcpleasequery.c ../dhcpv6.c ../mdb6.c        \
            ../ldap.c ../ldap_casa.c ../dhcpd.c
diff --git a/dhcp-systemtap.patch b/dhcp-systemtap.patch
index b5e0348..fcd789b 100644
--- a/dhcp-systemtap.patch
+++ b/dhcp-systemtap.patch
@@ -1,19 +1,7 @@
-diff -up dhcp-4.3.0a1/Makefile.am.systemtap dhcp-4.3.0a1/Makefile.am
---- dhcp-4.3.0a1/Makefile.am.systemtap	2013-12-20 13:30:26.149645305 +0100
-+++ dhcp-4.3.0a1/Makefile.am	2013-12-20 13:30:26.307643109 +0100
-@@ -33,5 +33,8 @@ endif
- 
- SUBDIRS += includes tests common omapip client dhcpctl relay server
- 
-+SUBDIRS += tapset
-+#DIST_SUBDIRS = $(SUBDIRS)
-+
- nobase_include_HEADERS = dhcpctl/dhcpctl.h
- 
-diff -up dhcp-4.3.0a1/configure.ac.systemtap dhcp-4.3.0a1/configure.ac
---- dhcp-4.3.0a1/configure.ac.systemtap	2013-12-20 13:30:26.229644193 +0100
-+++ dhcp-4.3.0a1/configure.ac	2013-12-20 13:31:39.195630065 +0100
-@@ -524,6 +524,35 @@ else
+diff -up dhcp-4.3.1b1/configure.ac.systemtap dhcp-4.3.1b1/configure.ac
+--- dhcp-4.3.1b1/configure.ac.systemtap	2014-07-10 18:31:05.966880404 +0200
++++ dhcp-4.3.1b1/configure.ac	2014-07-10 18:31:06.027879541 +0200
+@@ -534,6 +534,35 @@ else
      AC_MSG_RESULT(no)
  fi
  
@@ -49,7 +37,7 @@ diff -up dhcp-4.3.0a1/configure.ac.systemtap dhcp-4.3.0a1/configure.ac
  # Solaris needs some libraries for functions
  AC_SEARCH_LIBS(socket, [socket])
  AC_SEARCH_LIBS(inet_ntoa, [nsl])
-@@ -675,6 +704,7 @@ AC_CONFIG_FILES([
+@@ -686,6 +715,7 @@ AC_CONFIG_FILES([
    tests/Makefile
    server/tests/Makefile
    doc/devel/doxyfile
@@ -57,36 +45,22 @@ diff -up dhcp-4.3.0a1/configure.ac.systemtap dhcp-4.3.0a1/configure.ac
  ])
  AC_OUTPUT
  
-diff -up dhcp-4.3.0a1/server/Makefile.am.systemtap dhcp-4.3.0a1/server/Makefile.am
---- dhcp-4.3.0a1/server/Makefile.am.systemtap	2013-12-20 13:30:26.156645207 +0100
-+++ dhcp-4.3.0a1/server/Makefile.am	2013-12-20 13:34:16.057447630 +0100
-@@ -10,7 +10,7 @@ dist_sysconf_DATA = dhcpd.conf.example
- sbin_PROGRAMS = dhcpd
- dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c confpars.c db.c class.c failover.c \
- 		omapi.c mdb.c stables.c salloc.c ddns.c dhcpleasequery.c \
--		dhcpv6.c mdb6.c ldap.c ldap_casa.c
-+		dhcpv6.c mdb6.c ldap.c ldap_casa.c probes.d trace.h
+diff -up dhcp-4.3.1b1/Makefile.am.systemtap dhcp-4.3.1b1/Makefile.am
+--- dhcp-4.3.1b1/Makefile.am.systemtap	2014-07-10 18:31:05.891881465 +0200
++++ dhcp-4.3.1b1/Makefile.am	2014-07-10 18:31:06.027879541 +0200
+@@ -33,5 +33,8 @@ endif
  
- dhcpd_CFLAGS = $(LDAP_CFLAGS)
- dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.la ../dhcpctl/libdhcpctl.la \
-@@ -18,3 +18,13 @@ dhcpd_LDADD = ../common/libdhcp.a ../oma
- man_MANS = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5
- EXTRA_DIST = $(man_MANS)
+ SUBDIRS += includes tests common omapip client dhcpctl relay server
  
-+if ENABLE_SYSTEMTAP
-+BUILT_SOURCES = probes.h
-+probes.h: probes.d
-+	$(DTRACE) -C -h -s $< -o $@
-+
-+probes.o: probes.d
-+	$(DTRACE) -C -G -s $< -o $@
++SUBDIRS += tapset
++#DIST_SUBDIRS = $(SUBDIRS)
 +
-+dhcpd_LDADD += probes.o
-+endif
-diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
---- dhcp-4.3.0a1/server/dhcp.c.systemtap	2013-12-20 13:30:26.182644846 +0100
-+++ dhcp-4.3.0a1/server/dhcp.c	2013-12-20 13:32:22.909022163 +0100
-@@ -36,7 +36,7 @@
+ nobase_include_HEADERS = dhcpctl/dhcpctl.h
+ 
+diff -up dhcp-4.3.1b1/server/dhcp.c.systemtap dhcp-4.3.1b1/server/dhcp.c
+--- dhcp-4.3.1b1/server/dhcp.c.systemtap	2014-07-10 18:31:06.016879697 +0200
++++ dhcp-4.3.1b1/server/dhcp.c	2014-07-10 18:36:07.392617942 +0200
+@@ -30,7 +30,7 @@
  #include <errno.h>
  #include <limits.h>
  #include <sys/time.h>
@@ -95,7 +69,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  static void commit_leases_ackout(void *foo);
  static void maybe_return_agent_options(struct packet *packet,
  				       struct option_state *options);
-@@ -275,6 +275,8 @@ void dhcpdiscover (packet, ms_nulltp)
+@@ -303,6 +303,8 @@ void dhcpdiscover (packet, ms_nulltp)
  	dhcp_failover_state_t *peer;
  #endif
  
@@ -104,7 +78,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	find_lease (&lease, packet, packet -> shared_network,
  		    0, &peer_has_leases, (struct lease *)0, MDL);
  
-@@ -399,6 +401,8 @@ void dhcpdiscover (packet, ms_nulltp)
+@@ -425,6 +427,8 @@ void dhcpdiscover (packet, ms_nulltp)
        out:
  	if (lease)
  		lease_dereference (&lease, MDL);
@@ -113,7 +87,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  }
  
  void dhcprequest (packet, ms_nulltp, ip_lease)
-@@ -421,6 +425,8 @@ void dhcprequest (packet, ms_nulltp, ip_
+@@ -447,6 +451,8 @@ void dhcprequest (packet, ms_nulltp, ip_
  #endif
  	int have_requested_addr = 0;
  
@@ -122,7 +96,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	oc = lookup_option (&dhcp_universe, packet -> options,
  			    DHO_DHCP_REQUESTED_ADDRESS);
  	memset (&data, 0, sizeof data);
-@@ -700,6 +706,9 @@ void dhcprequest (packet, ms_nulltp, ip_
+@@ -724,6 +730,9 @@ void dhcprequest (packet, ms_nulltp, ip_
  		log_info ("%s: unknown lease %s.", msgbuf, piaddr (cip));
  
        out:
@@ -132,7 +106,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	if (subnet)
  		subnet_dereference (&subnet, MDL);
  	if (lease)
-@@ -718,6 +727,7 @@ void dhcprelease (packet, ms_nulltp)
+@@ -742,6 +751,7 @@ void dhcprelease (packet, ms_nulltp)
  	const char *s;
  	char msgbuf [1024], cstr[16]; /* XXX */
  
@@ -140,7 +114,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  
  	/* DHCPRELEASE must not specify address in requested-address
  	   option, but old protocol specs weren't explicit about this,
-@@ -842,6 +852,8 @@ void dhcprelease (packet, ms_nulltp)
+@@ -862,6 +872,8 @@ void dhcprelease (packet, ms_nulltp)
  #endif
  	if (lease)
  		lease_dereference (&lease, MDL);
@@ -149,7 +123,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  }
  
  void dhcpdecline (packet, ms_nulltp)
-@@ -859,6 +871,8 @@ void dhcpdecline (packet, ms_nulltp)
+@@ -879,6 +891,8 @@ void dhcpdecline (packet, ms_nulltp)
  	struct option_cache *oc;
  	struct data_string data;
  
@@ -158,7 +132,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	/* DHCPDECLINE must specify address. */
  	if (!(oc = lookup_option (&dhcp_universe, packet -> options,
  				  DHO_DHCP_REQUESTED_ADDRESS)))
-@@ -967,6 +981,8 @@ void dhcpdecline (packet, ms_nulltp)
+@@ -985,6 +999,8 @@ void dhcpdecline (packet, ms_nulltp)
  		option_state_dereference (&options, MDL);
  	if (lease)
  		lease_dereference (&lease, MDL);
@@ -167,7 +141,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  }
  
  void dhcpinform (packet, ms_nulltp)
-@@ -994,6 +1010,8 @@ void dhcpinform (packet, ms_nulltp)
+@@ -1012,6 +1028,8 @@ void dhcpinform (packet, ms_nulltp)
  	int h_w_fixed_addr = 0;
  #endif
  
@@ -176,7 +150,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	/* The client should set ciaddr to its IP address, but apparently
  	   it's common for clients not to do this, so we'll use their IP
  	   source address if they didn't set ciaddr. */
-@@ -1567,6 +1585,8 @@ void dhcpinform (packet, ms_nulltp)
+@@ -1584,6 +1602,8 @@ void dhcpinform (packet, ms_nulltp)
  
  	if (subnet)
  		subnet_dereference (&subnet, MDL);
@@ -185,7 +159,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  }
  
  void nak_lease (packet, cip)
-@@ -1583,6 +1603,8 @@ void nak_lease (packet, cip)
+@@ -1600,6 +1620,8 @@ void nak_lease (packet, cip)
  	struct option_state *options = (struct option_state *)0;
  	struct option_cache *oc = (struct option_cache *)0;
  
@@ -194,15 +168,15 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	option_state_allocate (&options, MDL);
  	memset (&outgoing, 0, sizeof outgoing);
  	memset (&raw, 0, sizeof raw);
-@@ -1749,6 +1771,7 @@ void nak_lease (packet, cip)
+@@ -1764,6 +1786,7 @@ void nak_lease (packet, cip)
                             packet->interface->name);
          }
  
 +	TRACE(DHCPD_NAK_LEASE_DONE());
  }
  
- void ack_lease (packet, lease, offer, when, msg, ms_nulltp, hp)
-@@ -1792,6 +1815,8 @@ void ack_lease (packet, lease, offer, wh
+ void check_pool_threshold (packet, lease, state)
+@@ -1899,6 +1922,8 @@ void ack_lease (packet, lease, offer, wh
  	if (lease -> state)
  		return;
  
@@ -211,7 +185,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	/* Save original cltt for comparison later. */
  	lease_cltt = lease->cltt;
  
-@@ -3225,6 +3250,8 @@ void ack_lease (packet, lease, offer, wh
+@@ -3340,6 +3365,8 @@ void ack_lease (packet, lease, offer, wh
  #endif
  			dhcp_reply(lease);
  	}
@@ -220,7 +194,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  }
  
  /*
-@@ -3377,6 +3404,8 @@ void dhcp_reply (lease)
+@@ -3492,6 +3519,8 @@ void dhcp_reply (lease)
  	if (!state)
  		log_fatal ("dhcp_reply was supplied lease with no state!");
  
@@ -229,7 +203,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	/* Compose a response for the client... */
  	memset (&raw, 0, sizeof raw);
  	memset (&d1, 0, sizeof d1);
-@@ -3598,6 +3627,8 @@ void dhcp_reply (lease)
+@@ -3713,6 +3742,8 @@ void dhcp_reply (lease)
  
  	free_lease_state (state, MDL);
  	lease -> state = (struct lease_state *)0;
@@ -238,7 +212,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  }
  
  int find_lease (struct lease **lp,
-@@ -3620,6 +3651,8 @@ int find_lease (struct lease **lp,
+@@ -3735,6 +3766,8 @@ int find_lease (struct lease **lp,
  	struct data_string client_identifier;
  	struct hardware h;
  
@@ -247,7 +221,7 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  #if defined(FAILOVER_PROTOCOL)
  	/* Quick check to see if the peer has leases. */
  	if (peer_has_leases) {
-@@ -4347,6 +4380,9 @@ int find_lease (struct lease **lp,
+@@ -4457,6 +4490,9 @@ int find_lease (struct lease **lp,
  #if defined (DEBUG_FIND_LEASE)
  	log_info ("Not returning a lease.");
  #endif
@@ -257,10 +231,10 @@ diff -up dhcp-4.3.0a1/server/dhcp.c.systemtap dhcp-4.3.0a1/server/dhcp.c
  	return 0;
  }
  
-diff -up dhcp-4.3.0a1/server/dhcpd.c.systemtap dhcp-4.3.0a1/server/dhcpd.c
---- dhcp-4.3.0a1/server/dhcpd.c.systemtap	2013-12-20 13:30:26.281643471 +0100
-+++ dhcp-4.3.0a1/server/dhcpd.c	2013-12-20 13:33:26.013144200 +0100
-@@ -58,6 +58,8 @@ static const char url [] =
+diff -up dhcp-4.3.1b1/server/dhcpd.c.systemtap dhcp-4.3.1b1/server/dhcpd.c
+--- dhcp-4.3.1b1/server/dhcpd.c.systemtap	2014-07-10 18:31:06.006879838 +0200
++++ dhcp-4.3.1b1/server/dhcpd.c	2014-07-10 18:31:06.030879499 +0200
+@@ -52,6 +52,8 @@ static const char url [] =
  #  undef group
  #endif /* PARANOIA */
  
@@ -269,7 +243,7 @@ diff -up dhcp-4.3.0a1/server/dhcpd.c.systemtap dhcp-4.3.0a1/server/dhcpd.c
  #ifndef UNIT_TEST
  static void usage(void);
  #endif
-@@ -793,6 +795,8 @@ main(int argc, char **argv) {
+@@ -801,6 +803,8 @@ main(int argc, char **argv) {
  	/* Log that we are about to start working */
  	log_info("Server starting service.");
  
@@ -278,9 +252,9 @@ diff -up dhcp-4.3.0a1/server/dhcpd.c.systemtap dhcp-4.3.0a1/server/dhcpd.c
  	/*
  	 * Receive packets and dispatch them...
  	 * dispatch() will never return.
-diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
---- dhcp-4.3.0a1/server/dhcpv6.c.systemtap	2013-12-20 13:30:26.272643596 +0100
-+++ dhcp-4.3.0a1/server/dhcpv6.c	2013-12-20 13:33:48.296834064 +0100
+diff -up dhcp-4.3.1b1/server/dhcpv6.c.systemtap dhcp-4.3.1b1/server/dhcpv6.c
+--- dhcp-4.3.1b1/server/dhcpv6.c.systemtap	2014-07-10 18:31:05.998879951 +0200
++++ dhcp-4.3.1b1/server/dhcpv6.c	2014-07-10 18:31:06.032879471 +0200
 @@ -17,6 +17,7 @@
  /*! \file server/dhcpv6.c */
  
@@ -289,7 +263,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  
  #ifdef DHCPv6
  
-@@ -4763,6 +4764,8 @@ static void
+@@ -4829,6 +4830,8 @@ static void
  dhcpv6_solicit(struct data_string *reply_ret, struct packet *packet) {
  	struct data_string client_id;
  
@@ -298,7 +272,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/* 
  	 * Validate our input.
  	 */
-@@ -4776,6 +4779,8 @@ dhcpv6_solicit(struct data_string *reply
+@@ -4842,6 +4845,8 @@ dhcpv6_solicit(struct data_string *reply
  	 * Clean up.
  	 */
  	data_string_forget(&client_id, MDL);
@@ -307,7 +281,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  /*
-@@ -4789,6 +4794,8 @@ dhcpv6_request(struct data_string *reply
+@@ -4855,6 +4860,8 @@ dhcpv6_request(struct data_string *reply
  	struct data_string client_id;
  	struct data_string server_id;
  
@@ -316,7 +290,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/*
  	 * Validate our input.
  	 */
-@@ -4806,6 +4813,8 @@ dhcpv6_request(struct data_string *reply
+@@ -4872,6 +4879,8 @@ dhcpv6_request(struct data_string *reply
  	 */
  	data_string_forget(&client_id, MDL);
  	data_string_forget(&server_id, MDL);
@@ -325,7 +299,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  /* Find a DHCPv6 packet's shared network from hints in the packet.
-@@ -4918,6 +4927,8 @@ dhcpv6_confirm(struct data_string *reply
+@@ -4984,6 +4993,8 @@ dhcpv6_confirm(struct data_string *reply
  	struct dhcpv6_packet *reply = (struct dhcpv6_packet *)reply_data;
  	int reply_ofs = (int)(offsetof(struct dhcpv6_packet, options));
  
@@ -334,7 +308,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/* 
  	 * Basic client message validation.
  	 */
-@@ -5104,6 +5115,8 @@ exit:
+@@ -5170,6 +5181,8 @@ exit:
  		option_state_dereference(&cli_enc_opt_state, MDL);
  	if (opt_state != NULL)
  		option_state_dereference(&opt_state, MDL);
@@ -343,7 +317,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  /*
-@@ -5118,6 +5131,8 @@ dhcpv6_renew(struct data_string *reply,
+@@ -5184,6 +5197,8 @@ dhcpv6_renew(struct data_string *reply,
  	struct data_string client_id;
  	struct data_string server_id;
  
@@ -352,7 +326,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/* 
  	 * Validate the request.
  	 */
-@@ -5135,6 +5150,8 @@ dhcpv6_renew(struct data_string *reply,
+@@ -5201,6 +5216,8 @@ dhcpv6_renew(struct data_string *reply,
  	 */
  	data_string_forget(&server_id, MDL);
  	data_string_forget(&client_id, MDL);
@@ -361,7 +335,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  /*
-@@ -5148,6 +5165,8 @@ static void
+@@ -5214,6 +5231,8 @@ static void
  dhcpv6_rebind(struct data_string *reply, struct packet *packet) {
  	struct data_string client_id;
  
@@ -370,7 +344,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	if (!valid_client_msg(packet, &client_id)) {
  		return;
  	}
-@@ -5155,6 +5174,8 @@ dhcpv6_rebind(struct data_string *reply,
+@@ -5221,6 +5240,8 @@ dhcpv6_rebind(struct data_string *reply,
  	lease_to_client(reply, packet, &client_id, NULL);
  
  	data_string_forget(&client_id, MDL);
@@ -379,7 +353,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  static void
-@@ -5599,6 +5620,8 @@ dhcpv6_decline(struct data_string *reply
+@@ -5665,6 +5686,8 @@ dhcpv6_decline(struct data_string *reply
  	struct data_string client_id;
  	struct data_string server_id;
  
@@ -388,7 +362,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/* 
  	 * Validate our input.
  	 */
-@@ -5619,6 +5642,8 @@ dhcpv6_decline(struct data_string *reply
+@@ -5685,6 +5708,8 @@ dhcpv6_decline(struct data_string *reply
  
  	data_string_forget(&server_id, MDL);
  	data_string_forget(&client_id, MDL);
@@ -397,7 +371,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  static void
-@@ -6067,6 +6092,8 @@ dhcpv6_release(struct data_string *reply
+@@ -6133,6 +6158,8 @@ dhcpv6_release(struct data_string *reply
  	struct data_string client_id;
  	struct data_string server_id;
  
@@ -406,7 +380,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/* 
  	 * Validate our input.
  	 */
-@@ -6088,6 +6115,8 @@ dhcpv6_release(struct data_string *reply
+@@ -6154,6 +6181,8 @@ dhcpv6_release(struct data_string *reply
  
  	data_string_forget(&server_id, MDL);
  	data_string_forget(&client_id, MDL);
@@ -415,7 +389,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  /*
-@@ -6100,6 +6129,8 @@ dhcpv6_information_request(struct data_s
+@@ -6166,6 +6195,8 @@ dhcpv6_information_request(struct data_s
  	struct data_string client_id;
  	struct data_string server_id;
  
@@ -424,7 +398,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/*
  	 * Validate our input.
  	 */
-@@ -6131,6 +6162,8 @@ dhcpv6_information_request(struct data_s
+@@ -6197,6 +6228,8 @@ dhcpv6_information_request(struct data_s
  		data_string_forget(&client_id, MDL);
  	}
  	data_string_forget(&server_id, MDL);
@@ -433,7 +407,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  /* 
-@@ -6159,6 +6192,8 @@ dhcpv6_relay_forw(struct data_string *re
+@@ -6225,6 +6258,8 @@ dhcpv6_relay_forw(struct data_string *re
  	struct dhcpv6_relay_packet *reply;
  	int reply_ofs;
  
@@ -442,7 +416,7 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  	/* 
  	 * Initialize variables for early exit.
  	 */
-@@ -6418,6 +6453,8 @@ exit:
+@@ -6484,6 +6519,8 @@ exit:
  	if (enc_packet != NULL) {
  		packet_dereference(&enc_packet, MDL);
  	}
@@ -451,10 +425,10 @@ diff -up dhcp-4.3.0a1/server/dhcpv6.c.systemtap dhcp-4.3.0a1/server/dhcpv6.c
  }
  
  static void
-diff -up dhcp-4.3.0a1/server/failover.c.systemtap dhcp-4.3.0a1/server/failover.c
---- dhcp-4.3.0a1/server/failover.c.systemtap	2013-12-11 01:25:12.000000000 +0100
-+++ dhcp-4.3.0a1/server/failover.c	2013-12-20 13:30:26.314643012 +0100
-@@ -36,6 +36,8 @@
+diff -up dhcp-4.3.1b1/server/failover.c.systemtap dhcp-4.3.1b1/server/failover.c
+--- dhcp-4.3.1b1/server/failover.c.systemtap	2014-07-02 19:58:40.000000000 +0200
++++ dhcp-4.3.1b1/server/failover.c	2014-07-10 18:31:06.034879442 +0200
+@@ -30,6 +30,8 @@
  #include "dhcpd.h"
  #include <omapip/omapip_p.h>
  
@@ -463,7 +437,7 @@ diff -up dhcp-4.3.0a1/server/failover.c.systemtap dhcp-4.3.0a1/server/failover.c
  #if defined (FAILOVER_PROTOCOL)
  dhcp_failover_state_t *failover_states;
  static isc_result_t do_a_failover_option (omapi_object_t *,
-@@ -1710,6 +1712,8 @@ isc_result_t dhcp_failover_set_state (dh
+@@ -1704,6 +1706,8 @@ isc_result_t dhcp_failover_set_state (dh
      struct lease *l;
      struct timeval tv;
  
@@ -472,7 +446,7 @@ diff -up dhcp-4.3.0a1/server/failover.c.systemtap dhcp-4.3.0a1/server/failover.c
      /* If we're in certain states where we're sending updates, and the peer
       * state changes, we need to re-schedule any pending updates just to
       * be on the safe side.  This results in retransmission.
-@@ -1941,6 +1945,8 @@ isc_result_t dhcp_failover_set_state (dh
+@@ -1935,6 +1939,8 @@ isc_result_t dhcp_failover_set_state (dh
  	    break;
      }
  
@@ -481,7 +455,7 @@ diff -up dhcp-4.3.0a1/server/failover.c.systemtap dhcp-4.3.0a1/server/failover.c
      return ISC_R_SUCCESS;
  }
  
-@@ -2428,6 +2434,8 @@ dhcp_failover_pool_dobalance(dhcp_failov
+@@ -2423,6 +2429,8 @@ dhcp_failover_pool_dobalance(dhcp_failov
  	if (state -> me.state != normal)
  		return 0;
  
@@ -490,7 +464,7 @@ diff -up dhcp-4.3.0a1/server/failover.c.systemtap dhcp-4.3.0a1/server/failover.c
  	state->last_balance = cur_time;
  
  	for (s = shared_networks ; s ; s = s->next) {
-@@ -2588,6 +2596,8 @@ dhcp_failover_pool_dobalance(dhcp_failov
+@@ -2583,6 +2591,8 @@ dhcp_failover_pool_dobalance(dhcp_failov
  	if (leases_queued)
  		commit_leases();
  
@@ -499,9 +473,35 @@ diff -up dhcp-4.3.0a1/server/failover.c.systemtap dhcp-4.3.0a1/server/failover.c
  	return leases_queued;
  }
  
-diff -up dhcp-4.3.0a1/server/probes.d.systemtap dhcp-4.3.0a1/server/probes.d
---- dhcp-4.3.0a1/server/probes.d.systemtap	2013-12-20 13:30:26.314643012 +0100
-+++ dhcp-4.3.0a1/server/probes.d	2013-12-20 13:30:26.314643012 +0100
+diff -up dhcp-4.3.1b1/server/Makefile.am.systemtap dhcp-4.3.1b1/server/Makefile.am
+--- dhcp-4.3.1b1/server/Makefile.am.systemtap	2014-07-10 18:31:05.895881408 +0200
++++ dhcp-4.3.1b1/server/Makefile.am	2014-07-10 18:31:06.028879527 +0200
+@@ -10,7 +10,7 @@ dist_sysconf_DATA = dhcpd.conf.example
+ sbin_PROGRAMS = dhcpd
+ dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c confpars.c db.c class.c failover.c \
+ 		omapi.c mdb.c stables.c salloc.c ddns.c dhcpleasequery.c \
+-		dhcpv6.c mdb6.c ldap.c ldap_casa.c
++		dhcpv6.c mdb6.c ldap.c ldap_casa.c probes.d trace.h
+ 
+ dhcpd_CFLAGS = $(LDAP_CFLAGS)
+ dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.la ../dhcpctl/libdhcpctl.la \
+@@ -18,3 +18,13 @@ dhcpd_LDADD = ../common/libdhcp.a ../oma
+ man_MANS = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5
+ EXTRA_DIST = $(man_MANS)
+ 
++if ENABLE_SYSTEMTAP
++BUILT_SOURCES = probes.h
++probes.h: probes.d
++	$(DTRACE) -C -h -s $< -o $@
++
++probes.o: probes.d
++	$(DTRACE) -C -G -s $< -o $@
++
++dhcpd_LDADD += probes.o
++endif
+diff -up dhcp-4.3.1b1/server/probes.d.systemtap dhcp-4.3.1b1/server/probes.d
+--- dhcp-4.3.1b1/server/probes.d.systemtap	2014-07-10 18:31:06.034879442 +0200
++++ dhcp-4.3.1b1/server/probes.d	2014-07-10 18:31:06.034879442 +0200
 @@ -0,0 +1,43 @@
 +provider dhcpd {
 +	 probe main();
@@ -546,9 +546,9 @@ diff -up dhcp-4.3.0a1/server/probes.d.systemtap dhcp-4.3.0a1/server/probes.d
 +	 probe failover_set_state_start(int, int);
 +	 probe failover_set_state_done();
 +};
-diff -up dhcp-4.3.0a1/server/tests/Makefile.am.systemtap dhcp-4.3.0a1/server/tests/Makefile.am
---- dhcp-4.3.0a1/server/tests/Makefile.am.systemtap	2013-12-20 13:30:26.315642998 +0100
-+++ dhcp-4.3.0a1/server/tests/Makefile.am	2013-12-20 13:34:57.263873891 +0100
+diff -up dhcp-4.3.1b1/server/tests/Makefile.am.systemtap dhcp-4.3.1b1/server/tests/Makefile.am
+--- dhcp-4.3.1b1/server/tests/Makefile.am.systemtap	2014-07-10 18:31:05.895881408 +0200
++++ dhcp-4.3.1b1/server/tests/Makefile.am	2014-07-10 18:31:06.034879442 +0200
 @@ -21,6 +21,10 @@ DHCPLIBS = $(top_builddir)/common/libdhc
            $(top_builddir)/dhcpctl/libdhcpctl.la \
            $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export
@@ -560,9 +560,9 @@ diff -up dhcp-4.3.0a1/server/tests/Makefile.am.systemtap dhcp-4.3.0a1/server/tes
  ATF_TESTS =
  TESTS = 
  if HAVE_ATF
-diff -up dhcp-4.3.0a1/server/trace.h.systemtap dhcp-4.3.0a1/server/trace.h
---- dhcp-4.3.0a1/server/trace.h.systemtap	2013-12-20 13:30:26.315642998 +0100
-+++ dhcp-4.3.0a1/server/trace.h	2013-12-20 13:30:26.315642998 +0100
+diff -up dhcp-4.3.1b1/server/trace.h.systemtap dhcp-4.3.1b1/server/trace.h
+--- dhcp-4.3.1b1/server/trace.h.systemtap	2014-07-10 18:31:06.034879442 +0200
++++ dhcp-4.3.1b1/server/trace.h	2014-07-10 18:31:06.034879442 +0200
 @@ -0,0 +1,11 @@
 +// trace.h
 +
@@ -575,39 +575,9 @@ diff -up dhcp-4.3.0a1/server/trace.h.systemtap dhcp-4.3.0a1/server/trace.h
 +// Wrap the probe to allow it to be removed when no systemtap available
 +#define TRACE(probe)
 +#endif
-diff -up dhcp-4.3.0a1/tapset/Makefile.am.systemtap dhcp-4.3.0a1/tapset/Makefile.am
---- dhcp-4.3.0a1/tapset/Makefile.am.systemtap	2013-12-20 13:30:26.315642998 +0100
-+++ dhcp-4.3.0a1/tapset/Makefile.am	2013-12-20 13:30:26.315642998 +0100
-@@ -0,0 +1,26 @@
-+# Makefile.am for dhcp/tapset
-+# Jiri Popelka
-+
-+.PHONY: clean-local install-data-hook uninstall-local
-+
-+#
-+EXTRA_DIST = dhcpd.stp
-+TAPSET_FILES = $(EXTRA_DIST)
-+TAPSET_INSTALL_DIR = $(DESTDIR)@ABS_TAPSET_DIR@
-+
-+if ENABLE_SYSTEMTAP
-+all-local: $(TAPSET_FILES)
-+
-+clean-local:
-+
-+install-data-hook:
-+	$(MKDIR_P) $(TAPSET_INSTALL_DIR)
-+	$(INSTALL_DATA) $(TAPSET_FILES) $(TAPSET_INSTALL_DIR)
-+
-+uninstall-local:
-+	@list='$(TAPSET_FILES)'; for p in $$list; do \
-+	  echo " rm -f '$(TAPSET_INSTALL_DIR)/$$p'"; \
-+	  rm -f "$(TAPSET_INSTALL_DIR)/$$p"; \
-+	done
-+endif
-+
-diff -up dhcp-4.3.0a1/tapset/dhcpd.stp.systemtap dhcp-4.3.0a1/tapset/dhcpd.stp
---- dhcp-4.3.0a1/tapset/dhcpd.stp.systemtap	2013-12-20 13:30:26.315642998 +0100
-+++ dhcp-4.3.0a1/tapset/dhcpd.stp	2013-12-20 13:30:26.315642998 +0100
+diff -up dhcp-4.3.1b1/tapset/dhcpd.stp.systemtap dhcp-4.3.1b1/tapset/dhcpd.stp
+--- dhcp-4.3.1b1/tapset/dhcpd.stp.systemtap	2014-07-10 18:31:06.035879428 +0200
++++ dhcp-4.3.1b1/tapset/dhcpd.stp	2014-07-10 18:31:06.035879428 +0200
 @@ -0,0 +1,212 @@
 +/* dhcpd tapset
 +   Copyright (C) 2011, Red Hat Inc.
@@ -821,3 +791,33 @@ diff -up dhcp-4.3.0a1/tapset/dhcpd.stp.systemtap dhcp-4.3.0a1/tapset/dhcpd.stp
 +{
 +  probestr = sprintf("%s", $$name);
 +}
+diff -up dhcp-4.3.1b1/tapset/Makefile.am.systemtap dhcp-4.3.1b1/tapset/Makefile.am
+--- dhcp-4.3.1b1/tapset/Makefile.am.systemtap	2014-07-10 18:31:06.035879428 +0200
++++ dhcp-4.3.1b1/tapset/Makefile.am	2014-07-10 18:31:06.034879442 +0200
+@@ -0,0 +1,26 @@
++# Makefile.am for dhcp/tapset
++# Jiri Popelka
++
++.PHONY: clean-local install-data-hook uninstall-local
++
++#
++EXTRA_DIST = dhcpd.stp
++TAPSET_FILES = $(EXTRA_DIST)
++TAPSET_INSTALL_DIR = $(DESTDIR)@ABS_TAPSET_DIR@
++
++if ENABLE_SYSTEMTAP
++all-local: $(TAPSET_FILES)
++
++clean-local:
++
++install-data-hook:
++	$(MKDIR_P) $(TAPSET_INSTALL_DIR)
++	$(INSTALL_DATA) $(TAPSET_FILES) $(TAPSET_INSTALL_DIR)
++
++uninstall-local:
++	@list='$(TAPSET_FILES)'; for p in $$list; do \
++	  echo " rm -f '$(TAPSET_INSTALL_DIR)/$$p'"; \
++	  rm -f "$(TAPSET_INSTALL_DIR)/$$p"; \
++	done
++endif
++
diff --git a/dhcp.spec b/dhcp.spec
index abc5dfa..5bbc84e 100644
--- a/dhcp.spec
+++ b/dhcp.spec
@@ -9,16 +9,16 @@
 
 
 #%%global patchver P2
-#%%global prever rc1
+%global prever b1
 
 #%%global VERSION %{version}-%{patchver}
-#%%global VERSION %{version}%{prever}
-%global VERSION %{version}
+#%%global VERSION %{version}
+%global VERSION %{version}%{prever}
 
 Summary:  Dynamic host configuration protocol software
 Name:     dhcp
-Version:  4.3.0
-Release:  15%{?dist}
+Version:  4.3.1
+Release:  0.1.%{prever}%{?dist}
 # NEVER CHANGE THE EPOCH on this package.  The previous maintainer (prior to
 # dcantrell maintaining the package) made incorrect use of the epoch and
 # that's why it is at 12 now.  It should have never been used, but it was.
@@ -53,10 +53,8 @@ Patch13:  dhcp-garbage-chars.patch
 Patch14:  dhcp-add_timeout_when_NULL.patch
 Patch15:  dhcp-64_bit_lease_parse.patch
 Patch16:  dhcp-capability.patch
-Patch17:  dhcp-logpid.patch
 Patch18:  dhcp-UseMulticast.patch
 Patch19:  dhcp-sendDecline.patch
-Patch20:  dhcp-retransmission.patch
 Patch21:  dhcp-rfc3442-classless-static-routes.patch
 Patch22:  dhcp-honor-expired.patch
 Patch23:  dhcp-PPP.patch
@@ -67,15 +65,11 @@ Patch27:  dhcp-improved-xid.patch
 Patch28:  dhcp-gpxe-cid.patch
 Patch29:  dhcp-duidv4.patch
 Patch30:  dhcp-systemtap.patch
-Patch31:  dhcp-dhclient-decline-onetry.patch
 Patch33:  dhcp-getifaddrs.patch
 Patch34:  dhcp-omapi-leak.patch
 Patch35:  dhcp-failOverPeer.patch
 Patch36:  dhcp-interval.patch
-Patch37:  dhcp-conflex-do-forward-updates.patch
-Patch38:  dhcp-dupl-key.patch
 Patch39:  dhcp-range6.patch
-Patch40:  dhcp-next-server.patch
 Patch41:  dhcp-no-subnet-error2info.patch
 Patch42:  dhcp-ffff-checksum.patch
 Patch43:  dhcp-sd_notify.patch
@@ -252,10 +246,6 @@ rm -rf includes/isc-dhcp
 # dhclient (#517649, #546765), dhcpd/dhcrelay (#699713)
 %patch16 -p1 -b .capability
 
-# dhclient logs its pid to make troubleshooting NM managed systems
-# with multiple dhclients running easier (#546792)
-%patch17 -p1 -b .logpid
-
 # Discard unicast Request/Renew/Release/Decline message
 # (unless we set unicast option) and respond with Reply
 # with UseMulticast Status Code option (#573090)
@@ -268,13 +258,6 @@ rm -rf includes/isc-dhcp
 # (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #21237])
 %patch19 -p1 -b .sendDecline
 
-# In client initiated message exchanges stop retransmission
-# upon reaching the MRD rather than at some point after it (#559153)
-# (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #21238])
-# It causes RHBZ#1026565 and because we carry it around *only* to silence TAHI
-# tests, un-apply it until I find out how to fix it.
-#%%patch20 -p1 -b .retransmission
-
 # RFC 3442 - Classless Static Route Option for DHCPv4 (#516325)
 # (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #24572])
 %patch21 -p1 -b .rfc3442
@@ -288,7 +271,6 @@ rm -rf includes/isc-dhcp
 %patch23 -p1 -b .PPP
 
 # dhcpd: BEFORE changing of the effective user/group ID:
-#  - write PID file (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #25806])
 #  - chown leases file (#866714)
 %patch24 -p1 -b .paranoia
 
@@ -306,11 +288,6 @@ rm -rf includes/isc-dhcp
 # http://sourceware.org/systemtap/wiki/SystemTap
 %patch30 -p1 -b .systemtap
 
-# Send DHCPDECLINE and exit(2) when duplicate address was detected and
-# dhclient had been started with '-1' (#756759).
-# (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #26735])
-%patch31 -p1 -b .decline-onetry
-
 # Use getifaddrs() to scan for interfaces on Linux (#449946)
 # (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #28761])
 %patch33 -p1 -b .getifaddrs
@@ -327,22 +304,10 @@ rm -rf includes/isc-dhcp
 # (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #28038])
 %patch36 -p1 -b .interval
 
-# do-forward-updates statement wasn't recognized (#863646)
-# (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #31328])
-%patch37 -p1 -b .forward-updates
-
-# multiple key statements in zone definition causes inappropriate error (#873794)
-# (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #31892])
-%patch38 -p1 -b .dupl-key
-
 # Make sure range6 is correct for subnet6 where it's declared (#902966)
 # (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #32453])
 %patch39 -p1 -b .range6
 
-# Expose next-server DHCPv4 option to dhclient script
-# (Submitted to dhcp-bugs at isc.org - [ISC-Bugs #33098])
-%patch40 -p1 -b .next-server
-
 # 'No subnet declaration for <iface>' should be info, not error.
 %patch41 -p1 -b .error2info
 
@@ -390,6 +355,7 @@ CFLAGS="%{optflags} -fno-strict-aliasing" \
     --with-ldapcrypto \
     --with-libbind=%{_includedir} --with-libbind-libs=%{_libdir} \
     --disable-static \
+    --enable-log-pid \
 %if %sdt
     --enable-systemtap \
     --with-tapset-install-dir=%{tapsetdir} \
@@ -624,6 +590,9 @@ done
 %doc doc/html/
 
 %changelog
+* Thu Jul 10 2014 Jiri Popelka <jpopelka at redhat.com> - 12:4.3.1-0.1.b1
+- 4.3.1b1
+
 * Thu Jun 12 2014 Filipe Brandenburger <filbranden at google.com> - 12:4.3.0-15
 - dhclient-script: fix issue with classless static routes that breaks Fedora 20 on GCE cloud (#1102830)
 


More information about the scm-commits mailing list