Ted Lemon
cfb80b3cc0
Pool scope and subnet scope are different leaves of the same tree -
...
handle them differently.
1999-03-10 21:32:59 +00:00
Ted Lemon
eddb16f478
- Tack parameter request list on to lease state structure so that it will
...
still be available when we call cons_options.
- Pass parameter request list to cons_options where needed, and in any case
pass the extra argument.
- Free parameter request list before freeing lease state structures.
1999-03-10 20:44:22 +00:00
Ted Lemon
eeea13950a
Fix logging of DHCPREQUEST activity. Fix find_lease problems.
1999-03-09 23:45:04 +00:00
Ted Lemon
74f45f9642
Sync with 2.0b1pl16. Fix some pool allocation problems.
1999-02-25 23:30:43 +00:00
Ted Lemon
8ae2d59584
Change names of error functions to be more consistent.
1999-02-24 17:56:53 +00:00
Ted Lemon
027f46cb67
- Pull up recent 2.0 changes.
...
- Fix some problems in DHCPREQUEST code regarding client identity.
- Update references to lease's shared network to use subnet pointer.
- If there's more than one lease matching a particular hardware address,
examine them all for possible applicability in find_lease().
- Only recover abandoned leases on DHCPREQUEST if the request was for
the specific abandoned lease. Push all other abandoned lease
recovery code out into DHCPDISCOVER/allocate_lease processing.
1999-02-14 19:27:56 +00:00
Ted Lemon
16cadc50d5
Don't use oc if it's null
1998-11-19 20:56:36 +00:00
Ted Lemon
c4924529e6
Add billing support and pool support.
1998-11-11 08:01:49 +00:00
Ted Lemon
f63b49298d
Add pool/permit support.
1998-11-09 02:46:58 +00:00
Ted Lemon
b3f15965cc
Classify all incoming dhcp packets. Process class scopes.
1998-11-06 02:59:11 +00:00
Ted Lemon
1ffcdd2a19
Don't test for abandoned lease if we didn't find a lease. Don't try to evaluate an option cache if we didn't find it.
1998-11-06 01:04:32 +00:00
Ted Lemon
8d44908072
Add agent option support.
1998-11-06 00:17:12 +00:00
Ted Lemon
6603eed953
Oops, fix a conflict that was committed in previous revision.
1998-11-05 18:56:15 +00:00
Ted Lemon
5d25508cf5
Use evaluation-based option handling
1998-11-05 18:54:55 +00:00
Ted Lemon
c54885bd2d
If a client REQUESTs an abandoned lease, reclaim it.
1998-06-25 21:24:23 +00:00
Ted Lemon
b1dd98c948
Move a lot of packet discard code into ack_lease(), after we've evaluated the statements associated with a packet. Use new-style option processing. No more explicit user/vendor class support. Revamp lease time processing. Get client identifier directly from host declaration.
1998-06-25 03:56:24 +00:00
Ted Lemon
5941275aac
Do client classification. If user supplies a dhcp-lease-time or related option, print a warning when issuing a lease.
1998-04-19 23:34:43 +00:00
Ted Lemon
421563ea10
Don't respond to requests that are newer than a configured number of seconds. Enforce a minimum lease time, if specified. If a dhcp-server-identifier option has been specified, use that instead of coming up with one from the shared_network structure. Allow the routers option to be set to the client's address. Be more clever about dealing with duplicate leases.
1998-04-09 04:41:52 +00:00
Ted Lemon
48984237a1
If we happen across an abandoned lease when trying to find a lease to allocate, try using the abandoned lease. If the client asks for a lease on one address, but we find another lease that's also assigned to it, make every effort to free the duplicate lease, since a client can't have two leases on the same network at the same time.
1998-03-17 18:14:51 +00:00
Ted Lemon
f3c3d67454
Allow unnamed host declarations.
1998-03-17 06:20:51 +00:00
Ted Lemon
a7822eac77
Declare arguments that can be promoted so that the compiler's behaviour doesn't change depending on whether or not it follows ANSI. Fix signed vs. unsigned char discrepencies.
1998-03-16 06:19:46 +00:00
Ted Lemon
3c893bb6ce
Adjust cons_options calls. Copy the entire chaddr field even if hlen indicates it's shorter. Keep track of Relay Agent Information options.
1998-02-06 01:08:38 +00:00
Ted Lemon
0c11afbceb
NAK if a client requests an address that we own but can't give to it.
1997-12-06 04:04:50 +00:00
Ted Lemon
355bf452dc
If we're responding to a BOOTP request, hunt for a lease that's applicable - there might be more than one lease matching the network and the hardware address.
1997-12-02 09:28:08 +00:00
Ted Lemon
ec8d21a783
Copy the hardware address into the static lease structure so that it can be used later.
1997-12-02 09:07:03 +00:00
Ted Lemon
599c23c128
If we find more than one lease for the same client on the same network, give it the one it asked for.
1997-12-02 07:43:56 +00:00
Ted Lemon
2ba8b7cdaf
Fix DHCPRELEASE handling to conform to spec
1997-11-29 07:57:02 +00:00
Ted Lemon
f48132f7f8
Don't ping static leases - there's no persistent structure for them!
1997-10-20 22:28:18 +00:00
Ted Lemon
a52d8045b3
Pass flag to cons_options indicating whether this is BOOTP or DHCP. Change handling of dynamic BOOTP packets. Allow or deny booting based on vendor class if enabled.
1997-09-16 18:20:30 +00:00
Ted Lemon
be6b4b2a2b
Only store through ours if it's nonzero
1997-06-08 04:10:41 +00:00
Ted Lemon
2b260752e0
Fix variable declaration omission
1997-06-08 03:58:47 +00:00
Ted Lemon
fa97acc108
If the lease we want to give the client is different than the one it's asking for, and we recognize the one it's asking for as ours, NAK it.
1997-06-08 03:55:58 +00:00
Ted Lemon
44b2e3adb2
Fix bug introduced into dhcprequest processing. Fix core dump differently. Store client-supplied hostname. Fix ciaddr copy.
1997-05-09 08:27:14 +00:00
Ted Lemon
14b5afc442
Put parentheses around & operations
1997-03-06 20:23:27 +00:00
Ted Lemon
74c13ab5db
If a lease has been abandoned, don't find it.
1997-03-06 19:30:52 +00:00
Ted Lemon
4b7df7078c
Add a message to abandon_lease; ping before sending DHCPREQUEST.
1997-03-06 18:40:22 +00:00
Ted Lemon
9cc3ad7f14
Move a ton of bits from the lease structure into the lease_state structure. The lease structure is permanent, whereas the state structure is ephemeral, which means that leases now consume less memory (memory consumption is now about the same as in Beta 5 Patchlevel 14). Allocate and free the lease_state structure. If ack_lease is called on a lease that already has a state structure, we're already acking something, so we don't try to ack it again.
1997-03-06 07:02:00 +00:00
Ted Lemon
11b37280ba
Move some state into the lease structure so that we can test a lease before acking it, and so that we can do DNS lookups asynchronously
1997-03-05 06:37:05 +00:00
Ted Lemon
a62eea55ac
Don't check the lease we have for the client until we've verified that the client thinks it's on the right network
1997-03-05 06:18:55 +00:00
Ted Lemon
e6e5d8749e
Don't NAK leases from competing servers
1997-02-22 12:25:11 +00:00
Ted Lemon
d00ecc3cef
Clean up some bugs in the DHCPREQUEST lease code
1997-02-22 10:22:05 +00:00
Ted Lemon
801ecd88d7
Use interface address instead of common server identifier; allow specific clients to be excluded from booting; don't release a lease based on a DHCPREQUEST to a different server - this isn't allowed by the protocol
1997-02-22 08:48:15 +00:00
Ted Lemon
a4cb16cab9
Change calling conventions for cons_options so that DHCP client doesn't have to dummy up a packet
1997-02-18 14:28:54 +00:00
Ted Lemon
d557e6d40b
Fix broadcast bug
1997-01-03 11:39:27 +00:00
Ted Lemon
b289b0107c
Fix bug in classing code
1996-12-31 02:02:54 +00:00
Ted Lemon
c34fcd388b
Notice if client is NUL-terminating strings, and if it is, NUL-terminate them back.
1996-09-11 05:52:18 +00:00
Ted Lemon
4ecd2958d5
mockup_lease() now supplies uid info if present; supply subnet mask from subnet decl if not defined as an option; fix lease time blooper; provide T1 and T2 lease times
1996-09-05 23:52:10 +00:00
Ted Lemon
ef6f87b4d6
Fix signed/unsigned char type mismatch
1996-08-29 20:12:37 +00:00
Ted Lemon
d58a12592d
Add special support for hostname option
1996-08-28 01:29:25 +00:00
Ted Lemon
4fbcd99136
Don't try to respond to packets if we can't figure where they came from; add support for next_server (siaddr) field; adjust for new group structure; don't use siaddr as source address; check hw_lease, not lease; allow leases to be kept on more than one network; allow user-specified dynamic bootp lease lengths; add support for ignoring unknown clients
1996-08-27 09:37:50 +00:00