aboutsummaryrefslogtreecommitdiff
path: root/sbin/dhclient
Commit message (Collapse)AuthorAgeFilesLines
* MFC: 1.3Jung-uk Kim2007-12-101-1/+4
| | | | | | | | | | | | | | | | | Teach dhclient(8) about net80211 link (association) status. Especially it helps ndis(4) where it is used with wpa_supplicant(8) since 0.5.8 is imported. Previously ndis_events(8) was used to notify link status to wpa_supplicant but it is defuct now, i. e., external event notification mechanism is removed by the vendor and there is no substitute for ndisulator yet. Reviewed by: brooks OK'd by: sam Approved by: re (kensmith) Notes: svn path=/stable/7/; revision=174511
* - Remove references to unexisting man pagesGabor Kovesdan2007-09-201-5/+2
| | | | | | | | | | PR: docs/116099 Submitted by: Ben Kaduk <minimarmot@gmail.com> Approved by: re (bmah) MFC after: 3 days Notes: svn path=/head/; revision=172252
* Use the -n flag on ifconfig so that dhclient does not cause the kernel moduleAndrew Thompson2007-07-031-8/+9
| | | | | | | | | | to be reloaded when the interface is torn down. Reviewed by: brooks Approved by: re (kensmith) Notes: svn path=/head/; revision=171187
* The minimum size of an RFC3442 destination descriptor is five bytes, soEd Maste2007-04-131-1/+1
| | | | | | | | | | correct test to -ge 5. Without this change an RFC3442 encoded default route would be ignored. Reported by: Cedric Jonas <cedric at decemplex dot net> Notes: svn path=/head/; revision=168689
* Implement RFC3442, the Classless Static Route option.Ed Maste2007-02-096-4/+137
| | | | | | | | | | | | | | 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 a $FreeBSD$ tag missing after the original import. Note that thisEd Maste2007-02-091-0/+2
| | | | | | | file isn't actually installed; the one in src/etc is. Notes: svn path=/head/; revision=166597
* Actually implement rev 1.12 for host names and NIS domain names. WeBrooks Davis2007-01-291-1/+0
| | | | | | | | | were removing the invalid option, but still rejecting the lease. Reported by: Yoshihiko Sarumaru <mistral at imasy dot or dot jp> Notes: svn path=/head/; revision=166330
* It is possible for bpf to return a length such that:Brooks Davis2006-09-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | length != BPF_WORDALIGN(length) This meeans that it is possible for this to be true: interface->rbuf_offset > interface->rbuf_len Handle this case in the test for running out of packets. While OpenBSD's solution of setting interface->rbuf_len to BPF_WORDALIGN(length) is safe due to the size of the buffer, I think this solution results in less hidden assumptions. This should fix the problem of dhclient running away and consuming 100% CPU. PR: bin/102226 Submitted by: Joost Bekkers <joost at jodocus.org> MFC after: 3 days Notes: svn path=/head/; revision=162641
* Revert the addition of -p. It's flawed in that dhclient should not runBrian Somers2006-08-212-25/+7
| | | | | | | | | | on an interface without carrier. devd should be used instead to handle link up/down events. Put on the right path by: brooks, sam Notes: svn path=/head/; revision=161514
* Bump the document date. s/dhclient/.Nm/Brian Somers2006-08-171-4/+7
| | | | | | | Suggested by: ru Notes: svn path=/head/; revision=161417
* Correct usage()Brian Somers2006-08-171-1/+1
| | | | Notes: svn path=/head/; revision=161411
* Add a -p switch to dhclient. The switch tells dhclient to persistBrian Somers2006-08-172-5/+20
| | | | | | | | | | | | | despite the interface link status. Add dhclient_flags_iface and background_dhclient_iface rc.conf options. (where iface is a specific interface). These can be used to give interface specific flags to dhclient. Reviewed by: brooks@ Notes: svn path=/head/; revision=161410
* Send client identifier unconditionally. My ancient D-Link router responseJung-uk Kim2006-07-031-4/+0
| | | | | | | | | | | | with NACK if I don't set it. Setting 'option dhcp-client-identifier' is alternative but it is inconvenient because I have to keep the list of all MAC addresses. As bin/94743 pointed out, it is always sent from Windows clients and I found Mac OS X does the same. OK'd by: brooks Notes: svn path=/head/; revision=160089
* Remove 'n' from the getopt string. There's no -n option that isWarner Losh2006-05-231-2/+2
| | | | | | | | | parsed, so it winds up at usage anyway. Add 'b' to the usage summary. Noticed by Ben Mesander. Notes: svn path=/head/; revision=158856
* Be more like Windows and Linux and send our hostname in the host-nameBrooks Davis2006-05-071-0/+68
| | | | | | | | | | | | option if none is given in the config file. Also add #ifdefd out support for sending a client ID based on our MAC address. PR: bin/94743, bin/76401 Submitted by: Frank Behrens <frank at pinky dot sax dot de> X-MFC after: 6.1-RELEASE Notes: svn path=/head/; revision=158353
* Correct RFC for NTP.Jesus R. Camou2006-02-061-1/+1
| | | | | | | | | | PR: docs/92629 Submitted by: Daniel Gerzo <danger@rulez.sk> Noticed by: Michal F. Hanula <f@7f000001.org> Approved by: trhodes (mentor) Notes: svn path=/head/; revision=155394
* Fix rev 1.12.Brooks Davis2006-01-261-1/+1
| | | | | | | | | | | | | | | | /tmp may not be writeable yet when dhclient is first run via /etc/rc.d/netif so using it may not work. Also, writing to a predictable file in /tmp as root is a really bad idea since a malicious user may be able to win a race and insert a symlink which will allow them to cause any file to be overwritten. To solve these problems, create the tempory file in /var/run which will exist this early and is writable only by root. Security: Local risk if users can cause dhclient to run on demand (such as by unplugging and replugging the network cable). Notes: svn path=/head/; revision=154869
* Give the TIMEOUT case a chance to work by using -t # instead of theBrooks Davis2006-01-241-1/+1
| | | | | | | | | | | OpenBSD -w # when invoking ping. PR: bin/92187 Submitted by: "Shin'ya Kumabuchi" <kumabu at t3 dot rim dot or dot jp> MFC After: 6 days Notes: svn path=/head/; revision=154760
* Make dhclient-script more agreeable with read-only /etc.Wes Peters2006-01-231-9/+10
| | | | | | | | | PR: 90518 Submitted by: John E. Hein <jhein@timing.com> MFC after: 3 days Notes: svn path=/head/; revision=154702
* Mention the -b flag in the SYNOPSIS.Brooks Davis2006-01-101-1/+1
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=154165
* When we give up on an interface, use the arp(8) command to remove allBrooks Davis2006-01-101-2/+5
| | | | | | | | | | | entries from the interface rather than using ifconfig's delete command. This preserves non-dhclient configured addresses (though they are wiped out when dhclient is restarted). MFC after: 1 week Notes: svn path=/head/; revision=154164
* Allow users to add aliases to the interface.Brooks Davis2006-01-101-13/+13
| | | | | | | | PR: bin/87465 (different solution used) MFC after: 1 week Notes: svn path=/head/; revision=154161
* When we get a bogus hostname in an option, drop the option rather thanBrooks Davis2005-12-101-1/+4
| | | | | | | | | | refusing the lease. This allow obtaining leases on misadministered networks that use host names with underscores in them. MFC After: 3 days Notes: svn path=/head/; revision=153287
* Avoid updating resolv.conf when no changes have actually occured.Brooks Davis2005-09-081-0/+10
| | | | | | | Submitted by: ume Notes: svn path=/head/; revision=149898
* When we fail to aquire a lease, our lease expires without a sucessfulBrooks Davis2005-09-081-0/+1
| | | | | | | | | | | | renewal, or we lose link, be more forceful about clearing interface state so another interface that connects to the same network has a chance of working. This doesn't address attemping to connect to both at once, but appears to allow unplugging from a wired interface and then inserting a wireless card that associates with an AP bridged to the same LAN. Notes: svn path=/head/; revision=149896
* When we supersed the subnet-mask, write the forced value to the leaseBrooks Davis2005-09-021-10/+14
| | | | | | | | | file. This is what the ISC client does. Submitted by: Rostislav Krasny <rosti dot bsd at gmail dot com> Notes: svn path=/head/; revision=149727
* Introduce a new helper function check_search() derived for res_hnok toBrooks Davis2005-08-301-0/+56
| | | | | | | | | | | | | | | | | | check the domain-name parameter according to the rules for "search" strings as documented in resolv.conf(5). Specifically, the string must be no more than 256 bytes long and contain no more than six valid domain names separated by white space. The previous unchecked values could result in a mangled resolv.conf file which could effectively deny access to local sites. This is not a security issue as rogue dhcp servers could already do this without sending invalid strings. Reviewed by: cperciva MFC After: 3 days Notes: svn path=/head/; revision=149639
* The $medium string often contains quoted values with spaces in them (ssids,Brooks Davis2005-08-261-6/+6
| | | | | | | | | | for example). Follow the example of the ISC script and wrap ifconfig calls using $medium in eval "..." so this works. Reported by: iedowse Notes: svn path=/head/; revision=149519
* In read_string(), when the last character was a backslash, unincrementBrooks Davis2005-08-261-0/+1
| | | | | | | | | the output index instead of keeping what ever trash was in the buffer. Reported by: iedowse Notes: svn path=/head/; revision=149481
* Use a more robust, grep-free command to get the interface of the currentBrooks Davis2005-08-261-2/+1
| | | | | | | | | default route. Submitted by: Rostislav Krasny <rosti dot bsd at gmail dot com> Notes: svn path=/head/; revision=149480
* Don't and/remove a route to our assigned IP through 127.0.0.1. ItBrooks Davis2005-08-261-4/+4
| | | | | | | | | | serves no apparent purpose (we commented this out ages ago in the ISC scripts) and cases problems with some ADSL setups. Reported by: Rostislav Krasny <rosti dot bsd at gmail dot com> Notes: svn path=/head/; revision=149479
* MFOpenBSD rev 1.9: fix a buffer overflow when processing config fileBrooks Davis2005-08-241-1/+1
| | | | | | | | | | lines that are exactly 81 characters in length. Obtained from: OpenBSD MFC After: 3 days Notes: svn path=/head/; revision=149400
* Add __FBSDID to all .c files in dhclient to aid in determining fileBrooks Davis2005-08-2316-4/+48
| | | | | | | versions when dealing with user problems. Notes: svn path=/head/; revision=149399
* FreeBSD unconditionally supports write filters now.Christian S.J. Peron2005-08-231-2/+0
| | | | Notes: svn path=/head/; revision=149383
* Further fix receive_packet() by using BPF_WORDALIGN to insure the offsetBrooks Davis2005-07-281-5/+15
| | | | | | | | | is properly aligned when we move to the next packet. Obtained from: ISC dhclient via krw at OpenBSD Notes: svn path=/head/; revision=148484
* Don't reject packets with server names containing characters that areBrooks Davis2005-07-281-7/+6
| | | | | | | | | | not allowed in domain names. RFC 2132 does not list valid or invalid characters and the ISC client accepts anything here. Reported by: ps Notes: svn path=/head/; revision=148465
* Fix a bug in the handling of cases where we got a short (or zero)Brooks Davis2005-07-271-4/+4
| | | | | | | | | | | capture. Zero length captures caused an infinte loop and short captures probably caused memory corruption and a crash. Reported by: many MFC After: 3 days Notes: svn path=/head/; revision=148451
* s/if_defaulroute/if_defaultroute/Brooks Davis2005-07-261-1/+1
| | | | | | | We may now handle route updates better. Notes: svn path=/head/; revision=148420
* Change host-name from type "X" to type "t". This allows the client toBrooks Davis2005-07-251-1/+2
| | | | | | | | | | | | | | | | | | | | accept NUL-terminated strings as required by RFC 2132. This solution is not perfect as it removes the ability to send NUL-terminated host-name options which may be required by some broken servers. Given the current lack of an existance proof of such servers and the fact that servers that send NUL-terminated domain names do exist, this seems like an acceptable compromise. A discussion of these issues can be found at: http://marc.theaimsgroup.com/?l=dhcp-client&m=96837107208382&w=2 PR: bin/83468 Reported by: Sean Winn <sean at gothic dot net dot au> MFC-after: 3 days Notes: svn path=/head/; revision=148411
* treat REASSOC events just like ASSOCSam Leffler2005-07-251-0/+1
| | | | | | | MFC after: 3 days Notes: svn path=/head/; revision=148373
* Bump document date.Mark Santcroos2005-07-201-1/+1
| | | | | | | Reminded by: ru Notes: svn path=/head/; revision=148216
* Document -b flag of dhclient.Mark Santcroos2005-07-201-0/+4
| | | | | | | | Reviewed by: ru MFC after: 3 days Notes: svn path=/head/; revision=148214
* Don't complain when we receive smtp, pop, nntp, www, finger, and ircBrooks Davis2005-06-302-0/+13
| | | | | | | | | | server options. Reported by: Max Boyarov <max_b at tut dot by> Approved by: re (dhclient blanket) Notes: svn path=/head/; revision=147689
* People like to do RFC violating things with the domain-name option andBrooks Davis2005-06-301-1/+1
| | | | | | | | | | | | | | | include a space seperated list of domains instead of the domain of the host. This is supported on too many platforms to break for now so, remove validation of this option for the moment. The correct solution longer term is to implement RFC 3397 support and then treat domain-name options containing space seperated lists of domains as domain-search options for backwards compatability. Approved by: re (dhclient blanket) Notes: svn path=/head/; revision=147686
* Install the dhcp-options.5 manpage.Ruslan Ermilov2005-06-251-1/+2
| | | | | | | | Timeout from: brooks Approved by: re (blanket manpages) Notes: svn path=/head/; revision=147596
* Line up the markup.Ruslan Ermilov2005-06-225-137/+200
| | | | | | | Approved by: re (blanket) Notes: svn path=/head/; revision=147528
* Avoid a null pointer dereference by not expiring our lease if we don'tBrooks Davis2005-06-131-6/+9
| | | | | | | | | | | have an active one. Submitted by: sam Reported by: James Snow <snow at teardrop dot org> Approved by: re (dhclient blanket) Notes: svn path=/head/; revision=147351
* Add support for /etc/dhclient-enter-hooks to match /etc/dhclient-exit-hooks.Brooks Davis2005-06-101-0/+11
| | | | Notes: svn path=/head/; revision=147218
* Add support for /etc/dhclient-exit-hooks file.Brooks Davis2005-06-081-3/+13
| | | | | | | Tested by: Max Boyarov <max_b at tut dot by> Notes: svn path=/head/; revision=147138
* Fix build on 64-bit platforms where time_t is 64 bit. Since whereBrooks Davis2005-06-071-4/+5
| | | | | | | | | | | talking about time related to leases, it should be OK to cast these to (int)s rather than using intmax_t. Submitted by: ru Pointy hat: brooks Notes: svn path=/head/; revision=147106