diff options
Diffstat (limited to 'usr.sbin/dhcpd/dhcp.c')
| -rw-r--r-- | usr.sbin/dhcpd/dhcp.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/usr.sbin/dhcpd/dhcp.c b/usr.sbin/dhcpd/dhcp.c index b81e1e2330a..c3f5df5901a 100644 --- a/usr.sbin/dhcpd/dhcp.c +++ b/usr.sbin/dhcpd/dhcp.c @@ -1,4 +1,4 @@ -/* $OpenBSD: dhcp.c,v 1.25 2006/12/15 16:03:16 stevesk Exp $ */ +/* $OpenBSD: dhcp.c,v 1.26 2008/05/07 12:19:20 beck Exp $ */ /* * Copyright (c) 1995, 1996, 1997, 1998, 1999 @@ -39,6 +39,7 @@ */ #include "dhcpd.h" +#include "sync.h" int outstanding_pings; @@ -334,6 +335,7 @@ dhcprequest(struct packet *packet) !memcmp(lease->hardware_addr.haddr, packet->raw->chaddr, packet->raw->hlen)))) { ack_lease(packet, lease, DHCPACK, 0); + sync_lease(lease); return; } @@ -346,8 +348,10 @@ dhcprequest(struct packet *packet) * The thing we probably should not do is to remain silent. * For now, we'll just assign the lease to the client anyway. */ - if (lease) + if (lease) { ack_lease(packet, lease, DHCPACK, 0); + sync_lease(lease); + } } void |
