aboutsummaryrefslogtreecommitdiff
path: root/sbin/dhclient/clparse.c
Commit message (Collapse)AuthorAgeFilesLines
* dhclient: build with WARNS=6Eitan Adler2018-06-241-3/+2
| | | | | | | | | | | | - add static in a number of places - initialize __progname rather than rely on magical extern values - use nitems() instead of manually spelling it out - unshadow 'idi' - teach 'error' that it is '__dead2' - add missing 'break' Notes: svn path=/head/; revision=335602
* dhclient: raise WARNS to 4Alan Somers2018-02-211-1/+1
| | | | | | | | | | | | | | | | Mostly const-correctness fixes. There were also some variable-shadowing, unused variable, and a couple of sockaddr type-correctness changes. I also had trouble with cast-align warnings. I was able to prove that one of them was a false positive. But ultimately I had to disable the warning program-wide to deal with the others. Reviewed by: cem MFC after: 3 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D14460 Notes: svn path=/head/; revision=329754
* dhclient(8): raise WARNS to 3Alan Somers2017-12-141-5/+5
| | | | | | | | | | Mostly had to fix a lot of signed/unsigned comparison warnings MFC after: 3 weeks Sponsored by: Spectra Logic Corp Notes: svn path=/head/; revision=326853
* General further adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-201-1/+3
| | | | | | | | | | | | | | | | | Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point. Notes: svn path=/head/; revision=326025
* sbin/dhclient: fix `vendor` storage leak in parse_option_decl(..)Enji Cooper2017-03-131-0/+3
| | | | | | | | | | | | | | | This ensures the storage isn't leaked when non-NULL and the function returns early, prior to the `free(vendor)` later on in the function. MFC after: 1 week Reported by: Coverity CID: 1007111-1007113 Reviewed by: cem Sponsored by: Dell EMC Isilon Differential Revision: D9993 Notes: svn path=/head/; revision=315203
* sbin/dhclient: fix a memory leak in parse_client_lease_statement(..)Enji Cooper2017-03-131-0/+1
| | | | | | | | | | | | | | | The memory stored by `lease` would have previously been leaked if an unterminated lease declaration was found in an early-return code path. MFC after: 1 week Reported by: clang static analyzer, Coverity CID: 1007114 Submitted by: Tom Rix <trix@juniper.net> Sponsored by: Dell EMC Isilon; Juniper, Inc Differential Revision: D9992 Notes: svn path=/head/; revision=315199
* dhclient: add support for interface-mtu (26)Conrad Meyer2016-09-021-0/+2
| | | | | | | | | | | | | | | | Make dhclient set interface MTU if it was provided. This version implements MTU setting in dhclient itself before it runs dhclient-script. PR: 206721 Submitted by: novel@ Reported by: Jarrod Petz <jlpetz at gmail.com> Reviewed by: cem, allanjude Differential Revision: https://reviews.freebsd.org/D5675 Notes: svn path=/head/; revision=305306
* When acquiring a lease, record the value of the BOOTP siaddr fieldBruce M Simpson2013-07-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | contained in the DHCP offer, and write it out to the lease file as an unquoted value of the "next-server" keyword. The value is ignored when the lease is read back by dhclient, however other applications are free to parse it. The intent behind this change is to allow easier interoperability with automated installation systems e.g. Cobbler, Foreman, Razor; FreeBSD installation kernels can automatically probe the network to discover deployment servers. There are no plans to MFC this change unless a backport is specifically requested. The syntax of the "next-server <ip>" lease keyword is intended to be identical to that used by the ISC DHCPD server in its configuration files. The required defines are already present in dhclient but were unused before this change. (Note: This is NOT the same as Option 66, tftp-server-name). It has been exercised in a university protocol testbed environment, with Cobbler and an mfsBSD image containing pc-sysinstall (driven by Cobbler Cheetah templates). The SYSLINUX memdisk driver is used to boot mfsBSD. Currently this approach requires that a dedicated system profile has been created for the node where FreeBSD is to be deployed. If this is not present, the pc-sysinstall wrapper will be unable to obtain a node configuration. There is code in progress to allow mfsBSD images to obtain the required hints from the memdisk environment by parsing the MBFT ACPI chunk. This is non-standard as it is not linked into the platform's ACPI RSDT. Reviewed by: des Notes: svn path=/head/; revision=252506
* In sbin/dhclient, since we know the size of the source strings anyway,Dimitry Andric2011-12-171-1/+1
| | | | | | | | | we might as well use memcpy; strlcpy is really unnecessary here. MFC after: 1 week Notes: svn path=/head/; revision=228615
* In sbin/dhclient, work around warnings about the size argument toDimitry Andric2011-12-171-2/+4
| | | | | | | | | | strlcpy appearing to be the size of the source buffer, instead of the destination. MFC after: 1 week Notes: svn path=/head/; revision=228614
* Support domain-search in dhclient(8)Jean-Sébastien Pédron2011-12-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The "domain-search" option (option 119) allows a DHCP server to publish a list of implicit domain suffixes used during name lookup. This option is described in RFC 3397. For instance, if the domain-search option says: ".example.org .example.com" and one wants to resolve "foobar", the resolver will try: 1. "foobar.example.org" 2. "foobar.example.com" The file /etc/resolv.conf is updated with a "search" directive if the DHCP server provides "domain-search". A regression test suite is included in this patch under tools/regression/sbin/dhclient. PR: bin/151940 Sponsored by Yakaz (http://www.yakaz.com) Notes: svn path=/head/; revision=228259
* Implement RFC3442, the Classless Static Route option.Ed Maste2007-02-091-0/+2
| | | | | | | | | | | | | | The original DHCP specification includes a route option but it supports only class-based routes. RFC3442 adds support for specifying the netmask width for each static route. A variable length encoding is used to minimize the size of this option. PR: bin/99534 Submitted by: Andrey V. Elsukov <bu7cher@yandex.ru> Reviewed by: brooks Notes: svn path=/head/; revision=166602
* Add __FBSDID to all .c files in dhclient to aid in determining fileBrooks Davis2005-08-231-0/+3
| | | | | | | versions when dealing with user problems. Notes: svn path=/head/; revision=149399
* Import the OpenBSD dhclient as shipped with OpenBSD-3.7 (the tagBrooks Davis2005-06-071-0/+938
OPENBSD_3_7). Notes: svn path=/vendor/OpenBSD/dist/; revision=147072