2
0
mirror of https://gitlab.isc.org/isc-projects/dhcp synced 2025-08-28 12:57:42 +00:00

135 Commits

Author SHA1 Message Date
David Hankins
616d67cb0a - The servers now try harder to transmit pending binding updates when
entering normal state. [ISC-Bugs #16412]

- UPDREQ/UPDREQALL handling was optimized - it no longer dequeues and
  requeues all pending updates.  This should reduce the number of spurious
  'xid mismatch' log mesasges. [ISC-Bugs #16412]
2006-09-27 18:27:27 +00:00
David Hankins
808d45fd9d Head bugfix, dueling BNDUPD/ACKs [ISC-Bugs #16346b] 2006-08-28 21:35:03 +00:00
Shane Kerr
6d103865fb Merged rt12324, DHCPLEASEQUERY. 2006-07-25 13:26:00 +00:00
David Hankins
8757898765 - Abandoned or dissociated (err condition) leases now remove any related
dynamic dns bindings.  Thanks to a patch from Patrick Schoo.
  [ISC-Bugs #15836]
2006-07-18 18:15:53 +00:00
David Hankins
2426234f7c - Failover pairs now implement 'MAC Affinity' on leases moving from the
active to free states.  Leases that belonged to the failover secondary
  are moved to BACKUP state rather than FREE upon exiting EXPIRED state.
  If lease rebalancing must move leases, it tries first to move leases
  that belong to the peer in need.
- The server no longer sends POOLREQ messages unless the pool is severely
  misbalanced in the peer's favor (see 'man dhcpd.conf' for more details).
- Pool rebalance events no longer happen upon successfully allocating a
  lease.  Instead, they happen on a schedule.  See 'man dhcpd.conf' for the
  min-balance and max-balance statements for more information.

  [ISC-Bugs #13308]
2006-06-16 19:26:45 +00:00
David Hankins
b500bd4c23 - Some patches to improve DHCP Server startup speed from Andrew Matheson
have been incorporated. [ISC-Bugs #3154]
2006-06-09 15:51:02 +00:00
David Hankins
f7fdb21693 - Varying option space code and length bit widths (8/16/32) are now
supported.  This is a milestone in acheiving RFC 3925 "VIVSO" and
  DHCPv6 support. [ISC-Bugs #15979]
2006-06-01 20:23:18 +00:00
David Hankins
2d767ea0a4 There are 6 lease pools now, not 5. [ISC-Bugs #16051] 2006-05-30 19:46:37 +00:00
David Hankins
3a16098f0b Pulling work between V3-0-4B3 and present v3-release-branch to HEAD. 2006-05-05 20:32:31 +00:00
David Hankins
a55ccdd037 - Support for 'reserved' (psuedo-static) and BOOTP leases via failover
was introduced. [ISC-Bugs #13672]
- The failover implementation was updated to comply with revision 12 of
  the protocol draft. [ISC-Bugs #13672]
2006-04-27 17:26:42 +00:00
David Hankins
ba65ea235f Silence sign change warnings. [ISC-Bugs #15884] 2006-03-02 19:02:56 +00:00
David Hankins
88cd8aca9e - Merge changes between 3.0.3RC1 and 3.0.4-BETA-3 into HEAD (silence
robie).
2006-02-24 23:16:32 +00:00
David Hankins
06e77c34fb Corrections to changes made on HEAD pursuant to review of changes between
V3.0.3 and HEAD.  [ISC-Bugs #15348]
2005-09-30 17:57:32 +00:00
David Hankins
98311e4ba9 MASSIVE merge from V3-RELEASE-BRANCH into HEAD. HEAD and V3-RELEASE are
now synced as of tag V3-0-3-BETA-1.
2005-03-17 20:15:29 +00:00
James Brister
f3fe382d68 Fixes for QoS support. 2001-07-10 20:36:06 +00:00
Ted Lemon
d758ad8cac Merge changes between 3.0rc7 and 3.0rc8pl2. 2001-06-27 00:31:20 +00:00
James Brister
899d754f27 OMAPI class and subclass support. 2001-06-22 16:47:20 +00:00
Ted Lemon
31bbee784c Sync with 3.0rc7 2001-05-17 19:04:09 +00:00
Ted Lemon
4d1a48ebef Don't free null uid buffers. 2001-05-02 07:09:36 +00:00
Ted Lemon
ed1dc2c57c Fix (I hope!) the billing-class bug. 2001-04-30 22:38:34 +00:00
Ted Lemon
9750d9ca62 Fix various places where refcounting of hosts is needed. 2001-04-27 21:30:59 +00:00
Ted Lemon
f921423e4d Get rid of a couple of spurious debugging statements. 2001-04-24 02:31:27 +00:00
Ted Lemon
f381868210 Fix up some mistakes in the last commit. Fix a zero-length malloc. 2001-04-24 01:18:08 +00:00
Ted Lemon
86c60cbea0 Don't malloc zero-length uid buffer. 2001-04-24 01:02:24 +00:00
Ted Lemon
18529fb0c5 Unbill classes before dereferencing them. 2001-04-24 00:55:31 +00:00
Ted Lemon
5b9b3c1f96 When a release expires or is released, unbill it. 2001-04-20 20:39:54 +00:00
Ted Lemon
a58978f058 Fix lease binding state transitions. 2001-04-16 22:32:58 +00:00
Ted Lemon
ff591474e0 Make compiles work without NSUPDATE. 2001-04-09 01:18:15 +00:00
Ted Lemon
77f5b2d92e Process the state transition if we're doing a deferred update. 2001-04-06 01:03:39 +00:00
Ted Lemon
940e5b93bd Initialize a couple of pointers. 2001-03-16 01:57:00 +00:00
Ted Lemon
cb8176c4ae Always reference count leases. 2001-03-15 23:22:33 +00:00
Ted Lemon
0240e57c46 Check comp->uid instead of lease->uid when entering a lease's ID info. 2001-03-14 15:45:41 +00:00
Damien Neil
15c24b882b Changed supersede_lease() to return 1, even if the commit option is
not specified.  (Before, it would always return 0 if commit was not
given.)  Fixed up the one call to supersede_lease() which expected
the old behavior.

Added a check to supersede_lease() to return an error if the pimmediate
flag is given, and commit is not.  (You should never be sending information
on an uncommitted lease to a peer.)

Separated the failover queue update (the propogate flag) test from
the commit test in supersede_lease(), so that you can now enqueue an
update on an uncommitted lease.
2001-02-15 21:34:08 +00:00
Ted Lemon
25f11933ac - Get rid of lease -> hostname, which doesn't do anything.
- Fix a bug in uid handling that could cause core dumps with long uids.
2001-02-12 21:09:21 +00:00
Ted Lemon
6fb139d337 - Fix a core dump pointed out by Albert Herranz.
- Fix handling of agent options.
2001-01-25 08:36:36 +00:00
Ted Lemon
e7bd704742 Do not delete a client's DNS entry on entry to a transitory state (e.g., expired). 2001-01-19 11:10:32 +00:00
Ted Lemon
6657e93a64 Don't try to move the lease if it doesn't have a pool. 2001-01-06 21:39:30 +00:00
Ted Lemon
b282197910 - Move ddns_removals out of the on_release conditionals so that it actually
happens.
2001-01-04 00:30:53 +00:00
Ted Lemon
4bcdb16d41 Fix a case where leases could wind up with too many references. 2000-12-28 23:34:08 +00:00
Damien Neil
b992d7e23d DDNS implementation rewrite. DDNS should now operate according to
<draft-ietf-dhc-dhcp-dns-12.txt>.

common/options.c, common/tables.c, includes/dhcp.h:
  Split the fqdn.name option into fqdn.hostname and fqdn.domainname.

includes/dhcpd.h, server/Makefile.dist, server/ddns.c, server/dhcp.c,
server/mdb.c, server/stables.c:
  Added a new file (server/ddns.c) containing the DDNS updates code.
  This file exports two functions: ddns_updates() and ddns_removals().
  ddns_updates() is called when a lease is granted, and ddns_removals()
  is called when the lease expires or is released.

server/dhcpd.c:
  Remove the previous DDNS update code, and add default code for the
  ddns-hostname, ddns-domainname, ddns-ttl, and ddns-rev-domainname
  server options.
2000-12-11 18:56:45 +00:00
Ted Lemon
38d717583a Don't blow away bindings and such when releasing or abandoning leases. 2000-12-05 07:32:26 +00:00
Ted Lemon
9e3831637a Pass client state to eval functions. Lots of other stuff. 2000-11-28 23:27:24 +00:00
Ted Lemon
8e775b7b6d Don't enter leases that don't have subnets. 2000-09-29 18:21:33 +00:00
Damien Neil
1b234d446f Finished up function call support. 2000-08-28 19:36:39 +00:00
Ted Lemon
6ceb9118e9 Reference count binding scopes. Align IP headers on output. 2000-07-27 09:03:08 +00:00
Ted Lemon
c1af245e17 - Fix a bug where the first host declaration with a hardware address
wasn't being entered into the database.
2000-07-09 07:00:06 +00:00
Ted Lemon
d9961d3a68 Maintain a free list of leases if compact leases are being used. 2000-07-06 22:40:27 +00:00
Ted Lemon
5e3683817d - Fix some bugs in the lease timeout code.
- When transition to FTS_ACTIVE happens, set next state.
- Conditionalize failover-specific code.
2000-07-06 10:27:41 +00:00
Ted Lemon
fd5cbc1eb9 Don't dereference the lease on_expiry pointer if it's been zapped. 2000-07-06 06:26:42 +00:00
Ted Lemon
92f240976e - Dereference leases after hashing them.
- When a new lease has a different billing class, use it.
- Sort leases with the same time last in first, to shorten the
  insertion time for large pools.
2000-07-05 07:38:09 +00:00