]>
git.ipfire.org Git - thirdparty/dhcpcd.git/log
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.
Roy Marples [Tue, 18 Nov 2014 04:23:40 +0000 (04:23 +0000)]
Reload global config when running per interface commands.
This matches the signal behaviour.
Roy Marples [Sun, 16 Nov 2014 18:43:02 +0000 (18:43 +0000)]
Only free other ARP states if not assinging an IPv4LL address.
Roy Marples [Sun, 16 Nov 2014 18:42:01 +0000 (18:42 +0000)]
Log which IP address we are ARPing
Roy Marples [Fri, 14 Nov 2014 11:45:09 +0000 (11:45 +0000)]
Release dhcpcd-6.6.2
Roy Marples [Fri, 14 Nov 2014 07:16:49 +0000 (07:16 +0000)]
Add a guard to IPv4LL probed in case of an ARP race.
Roy Marples [Thu, 13 Nov 2014 18:45:04 +0000 (18:45 +0000)]
Backup and restore any DHCP lease offered during the binding
of the IPv4LL address.
Roy Marples [Tue, 11 Nov 2014 11:26:32 +0000 (11:26 +0000)]
Stop clang complaing about a more complex variant on a long standing TAILQ bug.
Roy Marples [Tue, 11 Nov 2014 10:33:28 +0000 (10:33 +0000)]
If we don't include sys/queue.h directly the clang analyzer complains
about using freed memory.
That seems to be a workaround for this upstream bug:
http://llvm.org/bugs/show_bug.cgi?id=18222
Roy Marples [Tue, 11 Nov 2014 10:02:17 +0000 (10:02 +0000)]
Align config.h contents better
Roy Marples [Tue, 11 Nov 2014 09:17:06 +0000 (09:17 +0000)]
When closing the IPv4LL state, close any timers as well.
Roy Marples [Mon, 10 Nov 2014 19:23:52 +0000 (19:23 +0000)]
Reset DHCP state when the interface is departing.
Roy Marples [Mon, 10 Nov 2014 19:23:22 +0000 (19:23 +0000)]
Remove all interface timers when stopping.
Roy Marples [Mon, 10 Nov 2014 19:22:43 +0000 (19:22 +0000)]
eloop queue 0 is all queues, respect it.
Roy Marples [Mon, 10 Nov 2014 17:30:29 +0000 (17:30 +0000)]
Remove the direct include for cdefs.h - it's not needed for supported
platforms.
Roy Marples [Mon, 10 Nov 2014 16:56:32 +0000 (16:56 +0000)]
TAILQ is now inlcuded via config.h either via sys/queue.h or compat/queue.h.
This allows dhcpcd to compile on systems that do not even supply sys/queue.h,
such as the musl C library.
Thanks to Juan RP.
Roy Marples [Fri, 7 Nov 2014 21:08:48 +0000 (21:08 +0000)]
Remove dead store
Roy Marples [Fri, 7 Nov 2014 20:56:47 +0000 (20:56 +0000)]
Remove RCSIDs from dhcpcd, they belong in the upstream project only.
Roy Marples [Fri, 7 Nov 2014 20:03:19 +0000 (20:03 +0000)]
Release dhcpcd-6.6.1
Roy Marples [Fri, 7 Nov 2014 18:57:35 +0000 (18:57 +0000)]
When stopping interfaces, skip past pseudo interfaces instead of finding
the master as only the masters are sorted correctly.
Roy Marples [Fri, 7 Nov 2014 09:59:53 +0000 (09:59 +0000)]
Support old Linux kernels where IFLA_AF_SPEC may not exist.
Roy Marples [Mon, 3 Nov 2014 11:58:10 +0000 (11:58 +0000)]
If the IPv6 LL address is duplicated and using SLAAC private addressing,
increament the DAD counter and get a new address.
Otherwise return a suitable error.
Roy Marples [Mon, 3 Nov 2014 11:50:11 +0000 (11:50 +0000)]
Fix disabling IPv6 on start error.
Roy Marples [Wed, 29 Oct 2014 00:53:02 +0000 (00:53 +0000)]
Release dhcpcd-6.6.0
Roy Marples [Sat, 25 Oct 2014 09:54:11 +0000 (09:54 +0000)]
Reset DHCP state when carrier goes down.
Roy Marples [Sat, 25 Oct 2014 09:52:21 +0000 (09:52 +0000)]
Set IPv4LL ARP state to NULL if freeing it.
Roy Marples [Fri, 24 Oct 2014 20:30:38 +0000 (20:30 +0000)]
When we transition from REQUEST to DISCOVER in a reboot, start
IPv4LL at the same time as discover to ensure we have an address quicker.
Roy Marples [Fri, 24 Oct 2014 19:30:24 +0000 (19:30 +0000)]
Free other ARP states in a better way.
Roy Marples [Fri, 24 Oct 2014 19:25:04 +0000 (19:25 +0000)]
When binding a non IPv4LL address, kill the IPV4LL state.
Roy Marples [Fri, 24 Oct 2014 19:24:29 +0000 (19:24 +0000)]
We should not use a DHCP lease for IPV4LL.
Roy Marples [Fri, 24 Oct 2014 12:24:27 +0000 (12:24 +0000)]
Close arp explicity as well.
Roy Marples [Fri, 24 Oct 2014 11:00:03 +0000 (11:00 +0000)]
Improve IPv4LL -> DHCP state transitions
Roy Marples [Fri, 24 Oct 2014 09:14:16 +0000 (09:14 +0000)]
Fix transition from IPv4LL to a valid DHCP state.
Roy Marples [Thu, 23 Oct 2014 20:24:29 +0000 (20:24 +0000)]
Is really 5
Roy Marples [Thu, 23 Oct 2014 19:58:36 +0000 (19:58 +0000)]
Add a helper function to report conflicts to shrink the binary.
Roy Marples [Thu, 23 Oct 2014 19:50:37 +0000 (19:50 +0000)]
Fix timeout
Roy Marples [Thu, 23 Oct 2014 19:07:35 +0000 (19:07 +0000)]
Rework the ARP code so that we can have multiple ARP states.
Split the ARP resolution code to dhcp or ipv4ll where it belongs.
This allows us to probe IPv4LL while still DISCOVERing a DHCP lease.
Roy Marples [Wed, 22 Oct 2014 08:59:01 +0000 (08:59 +0000)]
Treat IPv4LL as fallback and start DHCP discovery even if the prior lease
was IPv4LL when rebooting.
Roy Marples [Wed, 22 Oct 2014 08:54:09 +0000 (08:54 +0000)]
If not doing DHCP or DHCP6, disable the DNS requirement in the RA to fork.
Roy Marples [Wed, 22 Oct 2014 04:17:25 +0000 (04:17 +0000)]
Simplfy
Roy Marples [Tue, 21 Oct 2014 22:55:30 +0000 (22:55 +0000)]
RFC 3927 Section 2.1 states that the random number generator should be
seeded with a known value derived from the IEEE 802 MAC address and that
the first 256 and last 256 addresses are reserved for future use.
Roy Marples [Tue, 21 Oct 2014 22:35:09 +0000 (22:35 +0000)]
Don't reset the last failed address needlessly.
Roy Marples [Tue, 21 Oct 2014 18:33:44 +0000 (18:33 +0000)]
Fix off by one MAX_CONFLICTS error.
Roy Marples [Tue, 21 Oct 2014 18:16:28 +0000 (18:16 +0000)]
PREINIT, UNKNOWN and CARRIER are not up or down states.
Roy Marples [Tue, 21 Oct 2014 13:04:06 +0000 (13:04 +0000)]
Check local interfaces for a duplicate IPv4LL address before ARP.
Roy Marples [Tue, 21 Oct 2014 11:06:36 +0000 (11:06 +0000)]
Only reset the IPv4LL conflict counter after we have finished
announcing our address or we bind a non IPv4LL address.
Roy Marples [Tue, 21 Oct 2014 10:23:08 +0000 (10:23 +0000)]
Reset defend when adding address.
Roy Marples [Mon, 20 Oct 2014 19:15:36 +0000 (19:15 +0000)]
Fix recovering from a failed defeat of an IPv4LL address.
Roy Marples [Mon, 20 Oct 2014 15:50:32 +0000 (15:50 +0000)]
Log the address IPv4LL defends.