2
0
mirror of https://gitlab.isc.org/isc-projects/dhcp synced 2025-08-29 13:28:14 +00:00

253 Commits

Author SHA1 Message Date
Ted Lemon
069e9f4c15 Brian Murrel's latest dns update implementation - more programmability. 1999-07-19 01:15:22 +00:00
Ted Lemon
6c8a5472ca Add support for 'on commit' and (partially) 'on release'. 1999-07-18 19:39:14 +00:00
Ted Lemon
3175ee907c Changes to make builds work on HP-UX with ANSI compiler. 1999-07-13 18:00:22 +00:00
Ted Lemon
daa1b24f96 - Compute max-lease-time outside of conditional so that we always have
a value for it.
1999-07-06 20:35:54 +00:00
Ted Lemon
71df44f55a Use limited_broadcast global instead of INADDR_BROADCAST. 1999-07-06 17:09:03 +00:00
Ted Lemon
da38df1433 Pervasive changes to support leased_address, reverse and binary_to_ascii. 1999-07-02 20:58:48 +00:00
Ted Lemon
15eda24826 In one-lease-per-client, don't re-release expired leases. 1999-07-02 17:47:42 +00:00
Ted Lemon
e8e6a30f53 Support one-lease-per-client. 1999-07-02 17:10:51 +00:00
Ted Lemon
e3b5f7f8a0 Fix a parenthetification error. 1999-07-01 20:02:58 +00:00
Ted Lemon
45378e45e1 Name server update hooks. 1999-07-01 19:58:12 +00:00
Ted Lemon
6dadd61044 Support always-broadcast flag. 1999-06-22 13:28:12 +00:00
Ted Lemon
fa661adb98 Do classing for BOOTP clients as well as DHCP clients. 1999-06-10 00:36:27 +00:00
Ted Lemon
0af446bc5f - Fix up cases where server option lookups were being done in the DHCP option
space.
- Correct handling of abandoned leases.
1999-05-27 14:56:51 +00:00
Ted Lemon
431693d164 Prioritize user-declared parameter request list _above_ client-supplied list. 1999-05-07 17:40:26 +00:00
Ted Lemon
cdc336ab50 - In DHCPINFORM, allow for buggy clients that do not set ciaddr by
using the IP source address from the IP header if ciaddr is zero.
- Fix some memory allocation botches.
- Use parameter request list option from scope if it is present and
  client didn't send one.
- Copy ciaddr from incoming packet to outgoing packet.
- Remember that we got the requested-address and server-identifier
  options in option state.
- Allow for RFC1541 clients that set ciaddr when REQUESTING by
  checking server-identifier option as well as ciaddr before
  unicasting.
1999-05-06 20:35:48 +00:00
Ted Lemon
46904800ec - Reference siaddr from state structure in ack_lease, since raw packet
hasn't been instantiated yet.
1999-04-23 23:47:51 +00:00
Ted Lemon
10553ccb84 - Do not respond with NAK if ciaddr is set and imputed network doesn't
match, since ciaddr means client is unicasting using IP routing.
- Support DHCPINFORM even on unknown networks.
- Fix up some invocations of evaluate_option_cache that used
  post-scope-execution option state rather than packet option state as
  input for evaluations of options from post-scope-execution option
  state.
- Add support for site-defined option spaces.
- Compute boot file server prior to freeing options used in computing
  it.   May fix a core dump that has been reported but that I haven't
  seen.
- Make pool scope less specific than class scope.
- Fix some invocations of execute_statements_in_scope that were
  incorrectly passing output options where they should have passed
  input options.
- Enforce maximum lease length after applying default lease time.
- Compute value of bootfile server IP address in ack_lease instead of
  dhcp_reply, so that expressions using contents of packet can work.
1999-04-23 23:17:52 +00:00
Ted Lemon
e77892f581 Support DHCPINFORM. 1999-04-12 22:18:58 +00:00
Ted Lemon
951323fef5 - Support new generalized option_state usage.
- Do vendor encapsulation if configured.
1999-04-05 16:46:13 +00:00
Ted Lemon
2540af046c Don't log winning DHCPREQUESTs twice.
Only pay attention to min_secs when sending DHCPOFFER.
1999-03-25 22:07:54 +00:00
Ted Lemon
c5b0f52958 Sanitize Solaris build. 1999-03-16 06:37:55 +00:00
Ted Lemon
f39b6e0089 Update license. 1999-03-16 05:50:46 +00:00
Ted Lemon
531fa185b4 Fix up references to ciaddr and yiaddr. 1999-03-13 18:58:00 +00:00
Ted Lemon
566ecd40a6 Fix up unicast response code. 1999-03-13 18:26:05 +00:00
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