]>
git.ipfire.org Git - thirdparty/dhcpcd.git/log
Roy Marples [Wed, 18 Feb 2015 13:40:40 +0000 (13:40 +0000)]
Tidy definitions
Roy Marples [Wed, 18 Feb 2015 13:40:23 +0000 (13:40 +0000)]
Fix compile on some systems.
Roy Marples [Fri, 13 Feb 2015 12:22:05 +0000 (12:22 +0000)]
Fix test, thanks to Olaf Westrik.
Roy Marples [Fri, 13 Feb 2015 11:28:17 +0000 (11:28 +0000)]
Test if we fake loaded a lease so we can report the correct state.
Roy Marples [Tue, 10 Feb 2015 08:54:33 +0000 (08:54 +0000)]
Reserve space for a fully escaped SSID in the lease filename.
Roy Marples [Tue, 10 Feb 2015 08:50:39 +0000 (08:50 +0000)]
Spaces in filenames suck hard.
Roy Marples [Mon, 9 Feb 2015 17:32:34 +0000 (17:32 +0000)]
Disallow / in the SSID when using in a lease filename.
Roy Marples [Mon, 9 Feb 2015 15:35:49 +0000 (15:35 +0000)]
Store lease files per interface per ssid.
Roy Marples [Sun, 8 Feb 2015 13:24:14 +0000 (13:24 +0000)]
Adjust comment to remove +x bit.
Roy Marples [Sun, 8 Feb 2015 12:57:38 +0000 (12:57 +0000)]
Fix Linux define.
Roy Marples [Tue, 3 Feb 2015 09:37:21 +0000 (09:37 +0000)]
Fix comment
Roy Marples [Tue, 3 Feb 2015 09:00:36 +0000 (09:00 +0000)]
Test mode removes the daemonise bit, so check for both when setting the timeout.
Roy Marples [Sat, 31 Jan 2015 01:03:24 +0000 (01:03 +0000)]
Fix cast
Roy Marples [Sat, 31 Jan 2015 01:02:07 +0000 (01:02 +0000)]
Use strtoi(3) and strtou(3) from NetBSD-8 instead of the harder to use
strtol(3) calls.
Add shims around strtoimax(3) and strtoumax(3) when these functions
are not available.
Roy Marples [Fri, 30 Jan 2015 10:46:53 +0000 (10:46 +0000)]
Bump copyright here as well.
Roy Marples [Fri, 30 Jan 2015 10:05:47 +0000 (10:05 +0000)]
Release dhcpcd-6.7.1
Roy Marples [Fri, 30 Jan 2015 10:05:21 +0000 (10:05 +0000)]
Fix compile with IPv6 disabled.
Roy Marples [Fri, 30 Jan 2015 09:23:21 +0000 (09:23 +0000)]
Release dhcpcd-6.7.0
Roy Marples [Fri, 23 Jan 2015 11:00:17 +0000 (11:00 +0000)]
Only extend temporary addresses with pltime.
If the Prefix Information Option has zero pltime, set all temporary addresses
with a pltime to zero for the prefix.
Roy Marples [Thu, 22 Jan 2015 20:10:18 +0000 (20:10 +0000)]
For Linux, keep the alias on the interface so we don't have to guess
all the time.
Roy Marples [Wed, 21 Jan 2015 21:02:39 +0000 (21:02 +0000)]
Ignore RA's from ourself for very badly configured stations.
Roy Marples [Wed, 21 Jan 2015 19:37:39 +0000 (19:37 +0000)]
Update to reflect 3.16 or older kernels and the header mismatch in ArchLinux on ARM.
Roy Marples [Tue, 20 Jan 2015 20:56:13 +0000 (20:56 +0000)]
Fix warning on FreeBSD where we don't need to use sysctlbyname(3).
Roy Marples [Tue, 20 Jan 2015 12:04:42 +0000 (12:04 +0000)]
Revert part of the prior patch and only free IPv6 if state when
freeing and not dropping so we retain IPv6 addresses we don't
generally control on carrier down.
Roy Marples [Tue, 20 Jan 2015 11:41:46 +0000 (11:41 +0000)]
Ensure memory is freed when forking.
Roy Marples [Tue, 20 Jan 2015 10:55:04 +0000 (10:55 +0000)]
Add ipv6_freedrop, similar to dhcp6_freedrop so we can easily
drop and free or just free IPv6 temporary addresses.
Roy Marples [Tue, 20 Jan 2015 10:42:47 +0000 (10:42 +0000)]
reject <option> will now reject any DHCP message that contains that option.
Roy Marples [Mon, 19 Jan 2015 13:28:26 +0000 (13:28 +0000)]
Restore IFA_F_MANAGETEMPADDR
Roy Marples [Mon, 19 Jan 2015 13:24:39 +0000 (13:24 +0000)]
Change define KERNEL_MANAGETEMPADD to IPV6_MANAGETEMPADDR.
Use this to block out actual address additions so we don't get bogus errors
about not being able to create temporary addresses.
Roy Marples [Sun, 18 Jan 2015 20:46:43 +0000 (20:46 +0000)]
Now that ipv6 has it's own eloop, ensure that we clear any interface
timeout when freeing the IPv6 state.
Roy Marples [Sun, 18 Jan 2015 20:34:57 +0000 (20:34 +0000)]
Fix which interface to test ip6_use_tempaddr on when adding.
Roy Marples [Sat, 17 Jan 2015 02:29:54 +0000 (02:29 +0000)]
Implement RFC4941, Privacy Extensions for Stateless Address Autoconfiguration
in IPv6 when dhcpcd is overriding the in-kernel RA support.
For Linux kernels (3.18+) which support IFA_F_MANAGETEMPADDR the bulk of
this changeset is compiled out and the kernel will manage the temporary
addresses entirely.
For BSD, this is a fully compliant implementation with the caveat
that when dhcpcd is restarted the last non deprecated temp address on the
interface will be treated as being created when it was last updated
rather when it was actually added. Thus this may voilate section 3.3.
As dhcpcd won't restart in normal operation, this isn't an issue.
For Linux (3.18+) which supports IFA_F_MANAGETEMPADDR, the bulk of this
changeset is compiled out as the kernel will manage the temporary addresses.
For older Linux this is a fully compliant implementation with the caveat that
when restarted new temporary addresses will be generated.
Fixes [
2ddfcb190f ]
Roy Marples [Sat, 17 Jan 2015 00:32:18 +0000 (00:32 +0000)]
Clarify the problem of identifying a bootp vs dhcp message.
Roy Marples [Fri, 16 Jan 2015 23:39:03 +0000 (23:39 +0000)]
Let packet filters name themselves to avoid confusion.
Roy Marples [Fri, 16 Jan 2015 23:11:39 +0000 (23:11 +0000)]
If we cannot open the kernel Packet Filter, give a better error message
and disable IPv4 configuration.
Roy Marples [Fri, 16 Jan 2015 23:01:29 +0000 (23:01 +0000)]
Include paths.h to get _PATH_BPF. Thanks to Joerg Sonnenberger.
Roy Marples [Fri, 16 Jan 2015 22:53:40 +0000 (22:53 +0000)]
time_t is not always unsigned.
Roy Marples [Thu, 8 Jan 2015 13:33:07 +0000 (13:33 +0000)]
Only check DaD for addresses we have actually added ourselves.
Roy Marples [Thu, 8 Jan 2015 13:31:42 +0000 (13:31 +0000)]
Add an option to disable the generation of autoconf addresses within a RA.
Roy Marples [Tue, 6 Jan 2015 14:05:26 +0000 (14:05 +0000)]
IPv6 kernel autoconf disabled is not an error condition to stop IPv6 from working if not owning the RA process and DHCPv6 is present in an RA message, but we should still warn about it never the less.
Roy Marples [Tue, 6 Jan 2015 13:53:54 +0000 (13:53 +0000)]
Warn about IPv6 kernel autoconf being disabled on BSD platforms.
Roy Marples [Tue, 6 Jan 2015 13:42:51 +0000 (13:42 +0000)]
Fix another case where we could mistakenly claim ownership of IPv6 RA.
Roy Marples [Tue, 6 Jan 2015 13:34:24 +0000 (13:34 +0000)]
Fix handling of ND6_IFF_OVERRIDE_RTADV on NetBSD.
Roy Marples [Mon, 5 Jan 2015 14:12:23 +0000 (14:12 +0000)]
OpenBSD fixed their posix_spawn(3) implementation in 5.7
Roy Marples [Fri, 2 Jan 2015 20:03:28 +0000 (20:03 +0000)]
Update copyrights to 2015.
Roy Marples [Thu, 1 Jan 2015 20:50:48 +0000 (20:50 +0000)]
Welcome to 2015!
Roy Marples [Thu, 1 Jan 2015 20:49:10 +0000 (20:49 +0000)]
Only release the DHCPv6 lease when dropping it.
Fixes [
bc15b90f7a ]
Roy Marples [Tue, 23 Dec 2014 09:46:02 +0000 (09:46 +0000)]
Add qnx* to OS detection so we can pass the __EXT define and stay using
--cstd=c99.
Roy Marples [Tue, 23 Dec 2014 09:40:14 +0000 (09:40 +0000)]
undef CMSG_SPACE and use our own define for platforms where CMSG_SPACE does
not evaluate to a compile time constant, such as QNX.
Thanks to Will Miles.
Roy Marples [Sun, 21 Dec 2014 19:00:19 +0000 (19:00 +0000)]
Fix compile warnings without INET or INET6 using gcc.
Roy Marples [Sat, 20 Dec 2014 14:11:38 +0000 (14:11 +0000)]
Fix compile on QNX. Thanks to Will Miles.
Roy Marples [Sat, 20 Dec 2014 14:09:26 +0000 (14:09 +0000)]
Guard against failure in if_discover. Thanks to Will Miles.
Roy Marples [Sat, 20 Dec 2014 12:15:07 +0000 (12:15 +0000)]
Use __restrict rather than restrict.
Thanks to Will Miles.
Roy Marples [Sat, 20 Dec 2014 11:56:27 +0000 (11:56 +0000)]
Attempt to define CMSG_SPACE for systems which lack it, like QNX.
Roy Marples [Fri, 19 Dec 2014 10:45:45 +0000 (10:45 +0000)]
Release dhcpcd-6.6.7
Roy Marples [Thu, 18 Dec 2014 11:47:09 +0000 (11:47 +0000)]
Fix build without INET
Roy Marples [Thu, 18 Dec 2014 10:09:54 +0000 (10:09 +0000)]
Don't set RA ownership in test mode.
Roy Marples [Wed, 17 Dec 2014 20:33:27 +0000 (20:33 +0000)]
Release dhcpcd-6.6.6
Roy Marples [Tue, 16 Dec 2014 22:12:16 +0000 (22:12 +0000)]
Document some BSD systems lacking the ability to announce IPv6 address flag changes.
Roy Marples [Tue, 16 Dec 2014 20:20:01 +0000 (20:20 +0000)]
Store acquired time for each IPv6 address so we can correctly offset
pltime and vltime if we need to re-add them.
Roy Marples [Tue, 16 Dec 2014 13:25:40 +0000 (13:25 +0000)]
For BSD systems stop polling for IPv6 router reachability.
This didn't work on all BSD platforms and where it did work,
it didn't work reliably.
Instead, expect for cached neighour route additions/changes/removals to be
announced by the kernel.
Currently only NetBSD-7.99.3 supports this so this is added to the README.
Roy Marples [Sat, 13 Dec 2014 13:35:18 +0000 (13:35 +0000)]
The noalias directive will now remove any IPv4 addresses existing on
the interface when we want to add our own.
Roy Marples [Fri, 12 Dec 2014 21:52:16 +0000 (21:52 +0000)]
A server should not NAK an INFORM.
Roy Marples [Fri, 12 Dec 2014 21:51:48 +0000 (21:51 +0000)]
Clarify timeout and reboot timeout, make it more sane.
Roy Marples [Thu, 11 Dec 2014 01:29:05 +0000 (01:29 +0000)]
Need net/route.h
Roy Marples [Wed, 10 Dec 2014 22:42:12 +0000 (22:42 +0000)]
Include linux/rtnetlink.h in config.h rather than each file that needs it.
Detect RTM_NEWNEIGH rather than force a define based on __linux__.
Roy Marples [Wed, 10 Dec 2014 22:39:50 +0000 (22:39 +0000)]
Spelling
Roy Marples [Tue, 9 Dec 2014 20:03:11 +0000 (20:03 +0000)]
Release dhcpcd-6.6.5
Roy Marples [Tue, 9 Dec 2014 12:52:52 +0000 (12:52 +0000)]
Allow other processes to handle the DHCP port on the wildcard address.
Roy Marples [Tue, 9 Dec 2014 09:45:56 +0000 (09:45 +0000)]
If we get another carrier event during the poll for IFF_UP, cancel the poll.
Roy Marples [Tue, 9 Dec 2014 09:39:30 +0000 (09:39 +0000)]
Instead if giving up if we receive a LINK_UP event before the kernel has set
IFF_UP, poll for it until it's set or carrier goes down.
Roy Marples [Thu, 4 Dec 2014 13:45:24 +0000 (13:45 +0000)]
If neither dig nor host are present fall back to getent.
Thanks to admiralnemo, fixes [
e0dc4c4459 ].
Roy Marples [Wed, 3 Dec 2014 09:34:45 +0000 (09:34 +0000)]
IFT type does not cleanly match to ARP type so we have to check in each.
Roy Marples [Tue, 2 Dec 2014 09:25:14 +0000 (09:25 +0000)]
Fix a coverity warning.
Roy Marples [Fri, 28 Nov 2014 15:20:01 +0000 (15:20 +0000)]
Fix prior patch
Roy Marples [Fri, 28 Nov 2014 15:18:09 +0000 (15:18 +0000)]
If STOPPED, set if_down = true when releasing, otherwise false.
Let dhcpcd-run-hooks process STOPPED.
Roy Marples [Wed, 26 Nov 2014 17:34:50 +0000 (17:34 +0000)]
Note that TEST removes the rapid_commit option from the message.
Roy Marples [Wed, 26 Nov 2014 15:34:35 +0000 (15:34 +0000)]
Report selected profile
Roy Marples [Wed, 26 Nov 2014 15:34:14 +0000 (15:34 +0000)]
Fix a memory error.
Roy Marples [Wed, 26 Nov 2014 15:01:30 +0000 (15:01 +0000)]
Release dhcpcd-6.6.4
Roy Marples [Wed, 26 Nov 2014 14:54:14 +0000 (14:54 +0000)]
Inform the hooks if we're running with debug or not.
Roy Marples [Wed, 26 Nov 2014 13:58:54 +0000 (13:58 +0000)]
Remove unused variable.
Roy Marples [Wed, 26 Nov 2014 12:45:19 +0000 (12:45 +0000)]
Release dhcpcd-6.6.3
Roy Marples [Wed, 26 Nov 2014 12:08:32 +0000 (12:08 +0000)]
If a DHCP lease has expired on reboot, don't expire it right away as that
might violate POLA. It will either be removed or renewed depending on the
DHCP server regardless.
Roy Marples [Wed, 26 Nov 2014 11:35:38 +0000 (11:35 +0000)]
With a fake added lease, we cannot assume the subnet is correct for the address, so treat as it's not there for sending DHCP messages.
Roy Marples [Wed, 26 Nov 2014 11:25:39 +0000 (11:25 +0000)]
Enter reboot state with a fake lease.
Roy Marples [Wed, 26 Nov 2014 10:41:32 +0000 (10:41 +0000)]
Flags fake routes so we can change them when we renew our lease.
Roy Marples [Wed, 26 Nov 2014 03:35:09 +0000 (03:35 +0000)]
If the IP address is still on the interface when reading a lease,
fake add the routes so the lease can be cleaned up if needed.
Roy Marples [Tue, 25 Nov 2014 21:08:34 +0000 (21:08 +0000)]
Fix wording.
Roy Marples [Tue, 25 Nov 2014 21:08:10 +0000 (21:08 +0000)]
Whitespace
Roy Marples [Tue, 25 Nov 2014 20:40:00 +0000 (20:40 +0000)]
Zero length UDP packets are not an error condition on the socket.
Thanks to Michał Kępień.
Roy Marples [Mon, 24 Nov 2014 11:03:28 +0000 (11:03 +0000)]
When not daemonising, don't exit on timeout.
Roy Marples [Mon, 24 Nov 2014 10:54:46 +0000 (10:54 +0000)]
Whitespace
Roy Marples [Tue, 18 Nov 2014 12:06:08 +0000 (12:06 +0000)]
If allowinterfaces is not specified, allow all configured interfaces
to work, such as loopback and ppp.
Roy Marples [Tue, 18 Nov 2014 11:47:45 +0000 (11:47 +0000)]
Disable IPv6RS if a loopback, pointopoint or not a multicast interface.
Roy Marples [Tue, 18 Nov 2014 11:28:14 +0000 (11:28 +0000)]
If we don't have a hwlen and no clientid has been set,
force a DUID based ClientID.
Roy Marples [Tue, 18 Nov 2014 11:07:37 +0000 (11:07 +0000)]
Check for IFF_LOOPBACK and IFF_POINTOPOINT early to avoid needless
malloc/free.
If family is not ARPHRD_ETHER, check if interface is allowed add
more tests to famlies we support.
Roy Marples [Tue, 18 Nov 2014 10:55:44 +0000 (10:55 +0000)]
Loopback interfaces have routes scoped to the host only.
Roy Marples [Tue, 18 Nov 2014 10:51:00 +0000 (10:51 +0000)]
If we don't have a hardware address, fallback to creating
a default IAID from the interface name and index as we used to.
Roy Marples [Tue, 18 Nov 2014 08:54:19 +0000 (08:54 +0000)]
This comment no longer applies.