2
0
mirror of https://gitlab.isc.org/isc-projects/dhcp synced 2025-08-24 19:08:08 +00:00

847 Commits

Author SHA1 Message Date
Thomas Markwalder
04daf4fe4b [master] Fixed concatenation of "Dc" formatted options such as domain-search
Merges in rt20558.
2014-11-25 15:22:52 -05:00
Thomas Markwalder
f3a44c1037 [master] Enabling dhcp-cache-threshold no longer causes unnecessary DNS updates
Merges in rt37368.
2014-11-24 07:36:13 -05:00
Thomas Markwalder
d9b2a590e8 [master] Host declaration name can now be used in DNS forward name
Merges in rt21323.
2014-11-19 10:56:17 -05:00
Shawn Routhier
21d3034757 [master] Patch the failover code to avoid deadlocks
Patch for 36810 & 20352
This coves several related problems
1) When the primary is in conflict done it allows the secondary to
transition around resolution interrupted and potentical conflict previously
the primary would die on an illegal state.

2) It allows the servers to restart a bind update request.  Previously if
one of the servers sent an udpate request and there died (or had the communications
interrupted) in some states the first server wouldn't retransmit a new
update request and the other server wouldn't send any bind updates. This
was noticed in potential conflict.

3) Updated the state transitions to move the leases on the ack queue
back to the update queue in case of conflict-done as we might need to
retransmit them all.

4) Updated a transition from startup to potentical conflict instead
of resolution interrupted when the servers reconnect during the startup
phase in order to avoid a diffferent dead lock.
2014-11-10 19:04:13 -08:00
Thomas Markwalder
0a7e1a8ab0 [master] Add use-host-decl-names support to BOOTP
Merges in rt36233.
2014-10-27 14:51:20 -04:00
Thomas Markwalder
e046c82621 [master] Added echo-client-id server parameter
Merges in rt35958 which includes fix for rt32545
    Also updated dhcp/.gitignore
2014-10-17 07:56:01 -04:00
Thomas Markwalder
7ff6ae5aa8 [master] Checkum handling fixes
Merges in rt22806
2014-09-18 15:25:02 -04:00
Shawn Routhier
1dceab6c75 [master] Remove unneeded defines for errors
As part of 4.2.0 we renamed a number of errors but continued
to include the old ones in case somebody was building something
using our libraries.  This #ifdefs them and by defaults removes them
from the compile.
2014-09-10 20:26:40 -07:00
Thomas Markwalder
e1b18c6960 [master] Added check for invalid failover message type.
Merges in rt36653
2014-09-08 16:05:23 -04:00
Thomas Markwalder
3ffc07defb [master] Addes addtional HMAC TSIG algorithms to DDNS
Merges in rt36947
2014-09-08 11:26:57 -04:00
Shawn Routhier
db72e67d3a [master] Restore #define and hack bind.sh
Resore the R_MULTIPLE #define so we have the same code
in final as we did in rc1.

Change the bind.sh file so we use 9.9.5-P1 for testing master, 4.2 and 4.3
until we do remove the #define
2014-08-06 15:01:34 -07:00
Mark Andrews
454240a87f remove legacy ISC_R_MULTIPLE define 2014-08-02 22:23:57 +10:00
Shawn Routhier
e9326fd0f4 [master] Add define to disable gentle shutodwn by default
Add a define to disable the gentle shutdown feature by default.
The feature has some effects (recover-wait in failvoer pairs)
and release in clients that are always desired.  We plan to
revisit this in order to make it easier to use but with the
define it can be enabled if necessary.
2014-07-02 08:49:19 -07:00
Shawn Routhier
250f7134bb [master] Add support for pool thresholds
Add support to set high and low thresholds for pools for
v4 and v6.  A message will be emitted when the usage of
the pool first exceeds the high threshold.  More messages
will be skipped until the usage has gone below the low
threshold and then back above the high threshold.
2014-06-05 14:55:01 -07:00
Shawn Routhier
79818c9344 [master] Add -df option to client code to help share DUIDs
Add the "-df <duid file>" option to the client code in order
to make it easier to share DUIDs between a v4 instance and
a v6 instance.  This option instructs the client to search
the duid file for a DUID if it didn't find one in the main
lease file.

In addition add the infrastructure for running ATF tests
for the client and write some ATF tests for this patch.
2014-05-16 15:24:48 -07:00
Shawn Routhier
9279a3d722 [master] Add #define for length of prefix we send to v6 client script 2014-05-08 10:58:45 -07:00
Shawn Routhier
00e9af8ee0 [master] Add configure option to incude PID in syslog entries 2014-05-07 12:19:33 -07:00
Shawn Routhier
02b0bdc3cf [master] Some small client changes
18933 - add an extra server by name call
26735 - when requested via a command line option
        have client exit afer 1 failure per the docs
33098 - expose next-server option to dhclient script
2014-05-07 08:20:12 -07:00
Shawn Routhier
388cba45bb [master] Remove the pre-errata code for handling no addresses available 2014-04-29 09:59:21 -07:00
Shawn Routhier
38c4774a43 [master] Several small patches
Tidy up several small tickets
Correct parsing of DUID from config file, previously the LL type
was put in the wrong place in the DUID string.
[ISC-Bugs #20962]
Add code to parse "do-forward-updates" as well as "do-forward-update"
[ISC-Bugs #31328]
Remove log_priority as it isn't currently used.
[ISC-Bugs #33397]
Increase the size of the buffer used for reading interface information.
[ISC-Bugs #34858]
2014-04-25 10:50:24 -07:00
Shawn Routhier
edad9be5cd [master] Remove vix.com and nominum.com
Remove old information from copyrights and
    man pages.
2014-01-26 10:52:15 -08:00
Shawn Routhier
ccc2a36775 [master] Add some more options form older RFCS 2014-01-25 18:59:36 -08:00
Shawn Routhier
fef8c6f09c [master] Update 3rd party licnese issues
Instead of duplicating more third-party licenses here in LICENSE
    file (there are many), just generically suggest to see the other files.

    Per the md5 copyright license agreement, add mention of
    required verbatim advertising statement in the release notes and
    readme.

    In the RELNOTES, I also mention ISC is open source software.

    In the README, I added a HISTORY section and placed that
    advertising statement there. If the HISTORY section is not wanted,
    then remove it and just mention the required verbatim advertising statement.
    By the way, some good history is in old READMEs and at
    http://hack.org/mc/texts/dhcp-freenix.txt
    (but I can't find the official hosted Lemon version of that paper).

    Remove the advertising clause from the historical BSD
    code copyrighted by The Regents of the University of California.

    For details see
    ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change

    (To summarize: in 1999, the University said that distributors
    are no longer required to acknowledge within advertising and the
    paragraph in the license may be deleted.)
2014-01-23 13:28:48 -08:00
Shawn Routhier
bc30c84e65 [master] Add defintiions for options 2014-01-15 18:54:35 -08:00
Shawn Routhier
4d079f0ec0 [master] Better support for INFORM requests.
Add support to use the subnet selection option
and the host declaration statements when processing
an inform request
2013-12-13 12:52:17 -08:00
Shawn Routhier
38ee81bd80 [master] Patch to ignore UIDS
This patch adds an option to allow the administrator to tell the
server to ignore UIDS when choosing a lease.
2013-12-13 12:40:45 -08:00
Shawn Routhier
61ef216b8d [master] Add support for user selection of the from address for DDNS transactions 2013-12-11 08:08:42 -08:00
Shawn Routhier
e54ff84f08 -n master Patch for 30461 and update the auto generated files
Update the auto genrated files to add the required bind9
libraries

Fix up dhcpctl/Makefile.am to include the isccfg lib

Patch for 30461 to allow the DHCP server to find
the name server to update via the DNS
Conflicts:
2013-12-10 04:03:12 +00:00
Shawn Routhier
619304cd87 [master] Support using v6 relay options in server decicions. 2013-11-25 21:00:41 -08:00
Shawn Routhier
0895c955d1 [master] Fix up the gentle shutdown code to handle failover
This patch modifies the gentle failover patch to
be cleaner and to handle failover peers better.
2013-11-14 12:55:10 -08:00
Shawn Routhier
cde11a4cdb [master] Add option to suppress the use of fsync when writing lease files
The option is dont-use-async <flag> and it defaults to disabled.
2013-11-08 12:00:02 -08:00
Shawn Routhier
47e8308dea [master]
[32692] Signal handlers added: sigint (ctrl-c) and sigterm (default kill)
2013-10-30 13:52:36 -07:00
Shawn Routhier
4b8251a0c0 -n [master]
Fix the socket handling for DHCPv6 clients to allow multiple instances
of a clinet on a single machine to work properly.
[ISC-Bugs #34784]
2013-10-21 14:59:41 -07:00
Shawn Routhier
d7d9c0c7c3 -n [master]
Add code to support the standards version of DDNS
2013-10-14 15:53:24 -07:00
Shawn Routhier
01fa619fab -n [master]
26510
 Add support for classes in the IPv6 code
2013-08-27 14:20:09 -07:00
Shawn Routhier
a7341359cc -n [master]
[rt27912]
    Add code to suppor on {commit expiry release} statements for DHCPv6.
    There are several pieces to this change
    1) Add space in the iasubopt structure to hold the statement pointers
    2) Update the execute code to fill in the structures as necessary
    3) Execute the statements when appropriate
    Many of the changes in the non-v6 code are to pass the v6 structures
    around to the execute code.
2013-08-27 13:40:47 -07:00
Shawn Routhier
08b2d34783 [master]
Modify the class and subclass code to allow for dynamic addition and
removal of subclasses.  See 27452 for details.
2013-06-05 18:15:49 -07:00
Mark Andrews
dc9d7b08aa - Silence benign static analysis warnings.
[ISC-Bugs #33428]
2013-05-15 10:49:54 +10:00
Mark Andrews
a24b9f23d0 - Use newer auto* tool packages and turn on RFC_3542 support on Mac OS.
[ISC-Bugs #26303]
2013-03-28 17:11:06 +11:00
Shawn Routhier
f8380d3ff2 [master]
+- Add support for a simple check that the server id in a request message
+  to a failover peer matches the server id of the server.  This support
+  is enabled by editing the file includes/site.h and uncommenting the
+  definition for SERVER_ID_CHECK.  The option has several restrictions
+  and issues - please read the comment in the site.h file before
+  enabling it.
+  [ISC-Bugs #31463]
2012-11-16 15:02:13 -08:00
Shawn Routhier
10613724a9 [master]
The client now passes information about the options it requested
from the server to the script code via environment variables.
These variables are of the form requested_<option_name>=1 with
the option name being the same as used in the new_* and old_*
variables. [ISC-Bugs #29068]
2012-11-13 12:56:02 -08:00
Shawn Routhier
d56788df77 [master]
Modify the nak_lease function to make some attempts to find a
server-identifier option to use for the NAK.
2012-11-02 16:37:03 -07:00
Shawn Routhier
881442e20f [rt26108]
Update auto generated files for rt26108
2012-10-11 21:53:13 +00:00
Shawn Routhier
529be52a84 Add common/tests/Atffile and server/tests/Atffile to the distribution
and rebuild the auto generated files
2012-08-23 18:14:17 +00:00
Tomek Mrugalski
85c8df6dd0 [master] Merge branch 'rt25901_atf'
Conflicts:
	configure
2012-08-14 15:20:46 +02:00
Tomek Mrugalski
0b6c9c0dc3 [rt25901_atf] Removed unnecessary statement. 2012-08-08 20:58:02 +02:00
Tomek Mrugalski
5fe45d0791 [rt25901_atf] autotool files regenerated 2012-07-02 10:59:47 +02:00
Shawn Routhier
e563ec2e58 When attempting to convert a DUID from a client id option
into a hardware address handle unexpected client ids properly.
Thanks to Markus Hietava of Codenomicon CROSS project for the
finding this issue and CERT-FI for vulnerability coordination.
[ISC-Bugs #29852]
CVE: CVE-2012-3570
2012-06-27 21:33:25 +00:00
Shawn Routhier
de87ffe336 Previously the server code was relaxed to allow packets with zero
length client ids to be processed.  Under some situations use of
zero length client ids can cause the server to go into an infinite
loop.  As such ids are not valid according to RFC 2132 section 9.14
the server no longer accepts them.  Client ids with a length of 1
are also invalid but the server still accepts them in order to
minimize disruption.  The restriction will likely be tightened in
the future to disallow ids with a length of 1.
Thanks to Markus Hietava of Codenomicon CROSS project for the
finding this issue and CERT-FI for vulnerability coordination.
[ISC-Bugs #29851]
CVE: CVE-2012-3571
2012-06-27 21:20:19 +00:00
Shawn Routhier
32e651c418 A problem with missing get_hw_addr function when --enable-use-sockets
was used is now solved on GNU/Linux, BSD and GNU/Hurd systems. Note
that use-sockets feature was not tested on those systems. Client and
server code no longer use MAX_PATH constant that is not defined on
GNU/Hurd systems. [ISC-Bugs 25979]
2012-06-08 23:28:11 +00:00