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

1342 Commits

Author SHA1 Message Date
Shawn Routhier
35de6c8c24 Fix some issues in the code for parsing and printing options.
[ISC-Bugs #22625] - properly print options that have several fields
followed by an array of something for example "fIa"
[ISC-Bugs #27289] - properly parse options in declarations that have
several fields followed by an array of something for example "fIa"
[ISC-Bugs #27296] - properly determine if we parsed a 16 or 32 bit
value in evaluate_numeric_expression (extract-int).
[ISC-Bugs #27314] - properly parse a zero length option from
a lease file.  Thanks to Marius Tomaschewski from SUSE for the report
and prototype patch for this ticket as well as ticket 27289.
2012-06-06 22:50:31 +00:00
Shawn Routhier
ba2dd567b3 Make "\777" into "\\nnn" so it prints correctly and looks better. [ISC-Bugs 29431] 2012-05-17 15:50:14 +00:00
Shawn Routhier
d289ee683e Remove unnecessary checks in the lease query code and clean up
several compiler issues (some dereferences of NULL and treating
an int as a boolean).
[ISC-Bugs #26203]
2012-04-10 21:26:44 +00:00
Shawn Routhier
b342f2e77c Use offsetof() instead of sizeof() to get the sizes for dhcpv6_relay_packet
and dhcpv6_packet in several more places.  Thanks to a report from
Bruno Verstuyft and Vincent Demaertelaere of Excentis.
[ISC-Bugs #27941]
2012-03-20 00:31:34 +00:00
Tomek Mrugalski
dd9237c309 Fixed many compilation problems ("set, but not used" warnings) for
gcc 4.6 that may affect Ubuntu 11.10 users. [ISC-Bugs #27588]
2012-03-09 11:18:14 +00:00
Shawn Routhier
b047bd385b Add support for Infiniband over sockets to the server and
relay code.  We've tested this on Solaris and hope to expand
support for Infiniband in the future.  This patch also corrects
some issues we found in the socket code.  [ISC-Bugs #24245]
2012-02-16 21:05:28 +00:00
Shawn Routhier
865afd5e44 Tidy up the receive calls and eliminate the need for found_pkt
[ISC-Bugs #25066]
2012-02-10 00:07:06 +00:00
Shawn Routhier
87132514a0 In the DDNS code handle error conditions more gracefully and add more
logging code.  The major change is to handle unexpected cancel events
from the DNS client code.
[ISC-Bugs 26287].
2012-02-03 22:47:43 +00:00
Tomek Mrugalski
06fb929cbc Regenerated makefiles and scripts (using aclocal-1.10, autoheader-2.61,
automake-1.10 and autoconf-2.61 on docs.lab)
2012-01-31 16:06:53 +00:00
Shawn Routhier
c535de4411 Update 26704 to include a null check on the right hand side as well. 2011-11-28 18:01:25 +00:00
Shawn Routhier
b95f1ee070 Add a check for a null pointer before calling the regexec function.
Without out this check we could, under some circumstances, pass
a null pointer to the regexec function causing it to segfault.
[ISC-Bugs #26704].
2011-11-22 23:56:50 +00:00
Shawn Routhier
d424157d63 Add support for passing DDNS information to a DNS server over
an IPv6 address.  [ISC-Bugs #22647]
2011-09-21 20:36:55 +00:00
Shawn Routhier
086bd8f502 automake regeneration 2011-09-13 23:04:20 +00:00
Shawn Routhier
8bd96ccb21 Two packets were found that cause a server to halt. The code
has been updated to properly process or reject the packets as
appropriate.  Thanks to David Zych at University of Illinois
for reporting this issue.  [ISC-Bugs #24960]
One CVE number for each class of packet.
CVE-2011-2748
CVE-2011-2749
2011-07-19 22:13:26 +00:00
Shawn Routhier
beaed73f00 DNS Update fix. A misconfigured server could crash during DNS update
processing if the configuration included overlapping pools or
multiple fixed-address entries for a single address.  This issue
affected both IPv4 and IPv6. The fix allows a server to detect such
conditions, provides the user with extra information and recommended
steps to fix the problem.  If the user enables the appropriate option
in site.h then server will be terminated
2011-07-08 22:49:11 +00:00
Shawn Routhier
c850c0eec5 Restore common/discover.c, common/options.c and server/dhcp.c
as I mistakenly committed them to head instead of the ticket
branch.
2011-07-02 00:05:35 +00:00
Shawn Routhier
640101e3d3 Correct an unsigned math operation when calculating the options
buffer space for bootp and use a better constant - DHCP packet
size instead of DHCP packet size + udp and iP headers.
Check that we have a packet->options structure before using it.
Only process packets that are longer than a bootp fixed packet
including server and file names.  Previously we allowed for
shorter packets but that wasn't working and nobody noticed.
2011-07-01 23:11:53 +00:00
Tomek Mrugalski
d15aa96419 - Strict checks for content of domain-name DHCPv4 option can now be
configured during compilation time. Even though RFC2132 does not allow
  to store more than one domain in domain-name option, such behavior is
  now enabled by default, but this may change some time in the future.
  See ACCEPT_LIST_IN_DOMAIN_NAME define in includes/site.h.
  [ISC-Bugs #24167]
2011-07-01 12:07:09 +00:00
Shawn Routhier
7cfeb9160d In Solaris 11 switch to using sockets instead of DLPI, thanks
to a patch form Oracle.  [ISC-Bugs #24634].
2011-06-27 16:00:32 +00:00
Shawn Routhier
786f2e79cc Enlarge the buffer size used by the Omshell code and some of the
print routines to allow for greater than 60 characters or, when
printing as hex strings, 20 characters.  [ISC-Bugs #22743]
2011-06-01 23:25:37 +00:00
Tomek Mrugalski
802fdea172 - Documentation cleanup
[ISC-Bugs #23326] Updated References document, several man page updates
2011-05-20 13:48:33 +00:00
Tomek Mrugalski
a34feb7d81 - Code cleanup: remove obsolete PROTO, KandR, INLINE and ANSI_DECL macros
[ISC-Bugs #13151]
2011-05-11 14:01:25 +00:00
Shawn Routhier
fb30f3fc8b Minor code cleanups - but note port change for #23196
[ISC-Bugs #23470] - Modify when an ignore return macro is defined to
handle unsed error return warnings for more versions of gcc.
[ISC-Bugs #23196] - Modify the reply handling in the server code to
send to a specified port rather than to the source port for the incoming
message.  Sending to the source port was test code that should have
been removed.  The previous functionality may be restored by defining
REPLY_TO_SOURCE_PORT in the includes/site.h file.  We suggest you don't
enable this except for testing purposes.
[ISC-Bugs #22695] - Close a file descriptor in an error path.
[ISC-Bugs #19368] - Tidy up variable types in validate_port.
2011-05-11 00:38:56 +00:00
Tomek Mrugalski
9369bdc121 Linux Packet Filter interface improvement. sockaddr_pkt structure is used,
rather than sockaddr. Packet ethertype is now forced to ETH_P_IP.
[ISC-Bugs #18975]
2011-05-10 14:27:56 +00:00
Tomek Mrugalski
023fbaa03e - Parameters configured to evaluate from user defined function calls can
now be correctly written to dhcpd.leases
- If a 'next-server' parameter is configured in a dynamic host record via
  OMAPI as a domain name, the syntax written to disk is now correctly parsed
  upon restart.  [ISC-Bugs #22266]
2011-04-21 17:53:48 +00:00
Tomek Mrugalski
5d082abd92 Several time related improvements:
- set initial delay to 0 to speed up client start
- added 'initial-delay' parameter to possibly revert to old behavior
- better handling of very short (1 or 2s) leases
- client lease records are recorded at most once every 15 seconds
- ICMP ping-check is now timed more precisely
- Servers that don't offer lease-time are now black-listed
[ISC-Bugs #19660]
2011-04-21 13:24:24 +00:00
Shawn Routhier
bea1769742 In dhclient check the data for some string options for
reasonableness before passing it along to the script that
interfaces with the OS. [ISC-Bugs #23722]
2011-03-24 21:11:01 +00:00
Shawn Routhier
17a8f0e2b4 Modify the dlpi code to accept getmsg() returning a positive value.
[ISC-Bugs #22824]
2011-02-18 19:12:50 +00:00
Shawn Routhier
056309fef2 automake regeneration 2011-02-18 18:48:39 +00:00
Shawn Routhier
8a0d9ca439 Some fixes for LDAP
[ISC-Bugs #21783] - Include lber library when building ldap
[ISC-Bugs #22888] - Enable the ldap code when buidling common
2011-02-18 18:41:25 +00:00
Mark Andrews
7900af4bef - Removed the restriction on using IPv6 address in IPv4 mode. This allow
IPv4 options which contain IPv6 address to be specified.  For example
  the 6rd option can be specified and use like this:

        option 6rd code 212 = { integer 8, integer 8,
                                ip6-address, array of ip-address };
        option 6rd 16 10 2001:: 1.2.3.4, 5.6.7.8;
2011-02-18 01:41:30 +00:00
Shawn Routhier
e1a402115d When processing the format flags for a given option consume the
flag indicating an optional value correctly.  A symptom of this
bug was an infinite loop when trying to parse the slp-service-scope
option.  Thanks to a patch from Marius Tomaschewski.
[ISC-Bugs #22055]
2010-12-29 22:56:01 +00:00
Shawn Routhier
9043399dc3 Clean up for 22033 - remove printing the seconds value
to avoid problems with printing it in an OS agnostic manner.
2010-12-29 21:40:33 +00:00
Shawn Routhier
0c9d3a8108 Limit the timeout period allowed in the dispatch code to 2^^32-1 seconds.
Thanks to a report from Jiri Popelka at Red Hat.
[ISC-Bugs #22033], [Red Hat Bug #628258]
2010-12-14 23:06:50 +00:00
Shawn Routhier
23d39ae2d8 Don't pass the ISC_R_INPROGRESS status to the omapi signal handlers.
Passing it through to the handlers caused the omshell program to fail
to connect to the server.  [ISC-Bugs #21839]

Fix the paranthesis in the code to process configuration statements
beginning with "auth".  The previous arrangement caused
"auto-partner-down" to be processed incorrectly.  [ISC-Bugs #21854]
2010-12-14 21:59:44 +00:00
David Hankins
76f4993d6e automake regeneration 2010-11-03 23:25:20 +00:00
Mark Andrews
5484ac9e3a cast (char) to (unsigned char) to silence (char) array index warnings. 2010-09-17 01:52:34 +00:00
Mark Andrews
1babd56eeb Use (unsigned char) not (int) to silence (char) array index warnings. 2010-09-17 01:51:37 +00:00
Shawn Routhier
419ed83cb9 automake regeneration 2010-09-14 22:22:19 +00:00
Mark Andrews
a96cdbe1f8 cast time_t to unsigned long and use %lu instead of %u 2010-09-14 04:01:33 +00:00
Shawn Routhier
6aaaf6a460 Fixes to lease input and output.
[ISC-Bugs #20418] - Some systems don't support the "%s" argument to
strftime, paste together the same string using mktime instead.
[ISC-Bugs #19596] - When parsing iaid values accept printable
characters.
[ISC-Bugs #21585] - Always print time values in omshell as hex
instead of ascii if the values happen to be printable characters.
2010-09-13 22:06:37 +00:00
Shawn Routhier
83d409ae59 Parse date strings more properly - the code now handles semi-colons in
date strings correctly.  Thanks to a patch from Jiri Popelka at Red Hat.
[ISC-Bugs #21501, #20598]
2010-09-13 19:23:28 +00:00
Shawn Routhier
436e808ad1 Update to 20378, print receive_packet6 in the log message 2010-09-09 22:49:58 +00:00
Shawn Routhier
57fbc77221 Another batch of fixes
Correct error handling in DLPI [ISC-Bugs #20378]
 Remove __sun__ and __hpux__ typedefs in osdep.h as they are now being
 checked in configure.  [ISC-Bugs #20443]
 Modify how the cmsg header is allocated the v6 send and received routines
 to compile on more compilers.  [ISC-Bugs #20524]
 When parsing a domain name free the memory for the name after we are
 done with it.  [ISC-Bugs #20824]
2010-09-09 22:18:02 +00:00
Shawn Routhier
66be0ad13f Minor code fixes
[ISC-Bugs #19566] When trying to find the zone for a name for ddns allow
 the name to be at the apex of the zone.
 [ISC-Bugs #19617] Restrict length of interface name read from command line
 in dhcpd - based on a patch from David Cantrell at Red Hat.
 [ISC-Bugs #20039] Correct some error messages in dhcpd.c
 [ISC-Bugs #20070] Better range check on values when creating a DHCID.
 [ISC-Bugs #20198] Avoid writing past the end of the field when adding
 overly long file or server names to a packet and add a log message
 if the configuration supplied overly long names for these fields.
 [ISC-Bugs #21497] Add a little more randomness to rng seed in client
2010-09-08 22:13:05 +00:00
David Hankins
f07d0fb5bc - The .TH tag for the dhcp-options manpage was typo repaired
thanks to a report from jidanni and the Debian package maintenance
  team.  [ISC-Bugs #21676] {Debian Bug#563613}
2010-07-20 21:09:14 +00:00
Shawn Routhier
5a38e43f6f Documentation cleanup covering multiple tickets
[ISC-Bugs #20265] [ISC-Bugs #20259] minor cleanup
  [ISC-Bugs #20263] add text describing some default values
  [ISC-Bugs #20193] single quotes at the start of a line indicate a control
  line to nroff, escape them if we actually want a quote.
  [ISC-Bugs #18916] sync the pointer to web pages amongst the different docs
2010-07-02 23:09:15 +00:00
Shawn Routhier
590298e746 Add some debugging output for use with the DDNS code. [ISC-Bugs 20916] 2010-05-26 22:25:10 +00:00
Shawn Routhier
d122accf9a Patch for 21093 - handle v4 or v6 only a little better. If we can't contstruct
the context log it and leave, if we can but then try and do a DDNS transaction
using the protocol we don't have log it and continue.
2010-05-25 00:22:29 +00:00
David Hankins
8a513c436b - A memory leak in ddns processing was closed. [ISC-Bugs #21377] 2010-05-24 23:47:42 +00:00