]>
git.ipfire.org Git - thirdparty/dhcpcd.git/log
Roy Marples [Fri, 2 Sep 2016 14:02:45 +0000 (14:02 +0000)]
Don't call snprintf needlessly.
Roy Marples [Fri, 2 Sep 2016 13:57:42 +0000 (13:57 +0000)]
Check valid netmask changes.
Roy Marples [Fri, 2 Sep 2016 13:37:07 +0000 (13:37 +0000)]
Don't add host routes for the IPv4LL default route.
Roy Marples [Fri, 2 Sep 2016 13:10:39 +0000 (13:10 +0000)]
When deleting routes, delete the stored kernel route as well.
This enables IPv4LL default routes to be re-added if a DHCP lease expires.
Roy Marples [Fri, 2 Sep 2016 12:36:33 +0000 (12:36 +0000)]
Only log errors about getting address flags if the error is not address
unavailable.
Roy Marples [Fri, 2 Sep 2016 11:34:09 +0000 (11:34 +0000)]
Remove the need for statically sized receive buffers for IPv6 ND and DHCPv6
messages.
Roy Marples [Fri, 2 Sep 2016 10:42:09 +0000 (10:42 +0000)]
Provide better commentary.
Roy Marples [Fri, 2 Sep 2016 10:20:30 +0000 (10:20 +0000)]
Optimise recvmsg_realloc.
Roy Marples [Fri, 2 Sep 2016 09:01:21 +0000 (09:01 +0000)]
bytes -> len
Roy Marples [Fri, 2 Sep 2016 08:16:31 +0000 (08:16 +0000)]
If more than one iovec then realloc the last one.
Roy Marples [Fri, 2 Sep 2016 08:09:47 +0000 (08:09 +0000)]
Rework the recvmsg_realloc function to handle flags.
Commit also includes mistakenly added ifam_pid patch for BSD.
It does no harm being here, even though no BSD supports this yet.
Roy Marples [Thu, 1 Sep 2016 17:12:37 +0000 (17:12 +0000)]
Use recvmsg_alloc on Solaris too.
Roy Marples [Thu, 1 Sep 2016 17:01:26 +0000 (17:01 +0000)]
Linux now uses recvmsg_alloc as well, reducing duplicated code.
Roy Marples [Thu, 1 Sep 2016 14:50:28 +0000 (14:50 +0000)]
Remove debug added accidently in last commit.
Roy Marples [Thu, 1 Sep 2016 14:37:48 +0000 (14:37 +0000)]
Use a dynamically sized buffer for reading route(4) messages on BSD
instead of a fixed 2048 byte buffer.
Roy Marples [Thu, 1 Sep 2016 13:17:07 +0000 (13:17 +0000)]
FreeBSD emits RTM_DELADDR for INET addresses that still exit,
for example when dowing the interface.
This is totally bogus, so we ignore it.
While here, only set LINK_UP for RTM_IFINFO messges when IFF_UP is also set.
This should fix dhcpcd working on FreeBSD when downing interfaces and
link is lost.
Roy Marples [Thu, 1 Sep 2016 11:48:21 +0000 (11:48 +0000)]
Clear LL callbacks when dropping or freeing addresses.
Roy Marples [Thu, 1 Sep 2016 11:46:51 +0000 (11:46 +0000)]
Fix a dropping leases when the ip address is removed by a 3rd party.
Roy Marples [Wed, 24 Aug 2016 19:32:41 +0000 (19:32 +0000)]
Fix processing of hex and octal strings.
Roy Marples [Mon, 22 Aug 2016 19:52:11 +0000 (19:52 +0000)]
OpenBSD does not refresh address lifetimes on subsequent calls.
Luckily dhcpcd will expire the address regardless, so just se
infinite lifetimes, except for privacy addresses.
Fixes [
277e6848da ].
Roy Marples [Thu, 18 Aug 2016 14:38:49 +0000 (14:38 +0000)]
Stop setting RA override becuse it only makes sense when we want the kernel
to listen to RA's which we don't want.
Roy Marples [Thu, 18 Aug 2016 14:37:53 +0000 (14:37 +0000)]
Check if we loaded options or not.
Roy Marples [Thu, 18 Aug 2016 11:28:16 +0000 (11:28 +0000)]
Only stop_interface() if it's active instead of checking if options exist.
Thanks to Koichi Okamoto.
Roy Marples [Tue, 16 Aug 2016 16:27:02 +0000 (16:27 +0000)]
Note that the IPv6 address lifetime issue is now fixed in NetBSD.
Roy Marples [Mon, 15 Aug 2016 10:53:49 +0000 (10:53 +0000)]
Fix formatting.
Roy Marples [Mon, 15 Aug 2016 10:34:22 +0000 (10:34 +0000)]
Release dhcpcd-6.11.3
Roy Marples [Sun, 14 Aug 2016 09:06:41 +0000 (09:06 +0000)]
Ensure we have an active interface (which we always will).
Roy Marples [Sun, 14 Aug 2016 08:51:19 +0000 (08:51 +0000)]
Bind to the local-link address rather than directly to the interface to allow
many DHCPv6 clients on many interfaces.
This works on all platforms.
Roy Marples [Sun, 14 Aug 2016 08:30:13 +0000 (08:30 +0000)]
If not running in master mode, allow dhcpcd to bind directly to the interface
for DHCPv6. This allows more than once dhcpcd instance to work with DHCPv6.
Roy Marples [Sun, 14 Aug 2016 08:25:32 +0000 (08:25 +0000)]
We no longer need this as we don't alias anymore.
Roy Marples [Sat, 13 Aug 2016 15:11:10 +0000 (15:11 +0000)]
Ensure offer_len is 0 after making offer NULL.
Set offer_len before each memcpy to aid debugging.
Roy Marples [Fri, 12 Aug 2016 16:34:01 +0000 (16:34 +0000)]
Only mask off the signals we are interested in catching.
Roy Marples [Sun, 7 Aug 2016 21:06:39 +0000 (21:06 +0000)]
Add more notes about BSD OS issues with prefix lifetimes.
Roy Marples [Sun, 7 Aug 2016 20:47:57 +0000 (20:47 +0000)]
Set route flags for IPv6 routes, allowing RTF_REJECT to work again.
Thanks to Guy Yur.
Roy Marples [Sat, 6 Aug 2016 23:00:50 +0000 (23:00 +0000)]
Fix the gateway to the route interface for IPv6 routes.
Thanks to Guy Yur.
Roy Marples [Fri, 5 Aug 2016 12:56:02 +0000 (12:56 +0000)]
Note that the prior issue was fixed in OpenBSD-5.9
Roy Marples [Fri, 5 Aug 2016 09:41:51 +0000 (09:41 +0000)]
Workaround an issue on BSD where the kernel pretends a freshly added address is from a RA and uses it's liftetime for the prefix route.
See comments in the changeset for more details.
Roy Marples [Wed, 3 Aug 2016 20:38:31 +0000 (20:38 +0000)]
Expire IPv6 RA Prefix routes.
Roy Marples [Wed, 3 Aug 2016 20:31:09 +0000 (20:31 +0000)]
Change wording on non dhcpcd removed addresses and routes.
Roy Marples [Fri, 29 Jul 2016 09:35:48 +0000 (09:35 +0000)]
Release dhcpcd-6.11.2
Roy Marples [Thu, 28 Jul 2016 13:10:20 +0000 (13:10 +0000)]
When deactivating an interface, set the carrier to unknown as it's no longer being tracked.
Thanks to Koichi Okamoto.
Roy Marples [Thu, 28 Jul 2016 10:58:22 +0000 (10:58 +0000)]
Ensure sockaddrs are zero's correctly.
Roy Marples [Thu, 28 Jul 2016 10:51:36 +0000 (10:51 +0000)]
Simplify BSD routing by having a common function to make the message
and the IP specific routines just generating the sockaddrs and flags.
Roy Marples [Thu, 28 Jul 2016 10:02:42 +0000 (10:02 +0000)]
Allow resolvconf to be user tunable.
Roy Marples [Wed, 27 Jul 2016 16:47:34 +0000 (16:47 +0000)]
Add --inactive which makes all interfaces inactive on initial start.
Subsequent dhcpcd commands will start each interface.
Roy Marples [Wed, 27 Jul 2016 15:46:53 +0000 (15:46 +0000)]
Add some commentary for ALIAS_ADDR remove and unused define.
Roy Marples [Wed, 27 Jul 2016 15:39:29 +0000 (15:39 +0000)]
When aliasing to an existing address, check it is already aliased.
Add debug to say which alias will use the address.
Fixes Solaris.
Roy Marples [Wed, 27 Jul 2016 08:55:42 +0000 (08:55 +0000)]
Always check if_addrflags{,6}() error of -1.
While here, fix compile on OpenBSD.
Roy Marples [Wed, 27 Jul 2016 08:09:34 +0000 (08:09 +0000)]
Fix compile
Roy Marples [Wed, 27 Jul 2016 05:29:09 +0000 (05:29 +0000)]
Fix expiration of a single default router with static routes.
Roy Marples [Wed, 27 Jul 2016 04:59:32 +0000 (04:59 +0000)]
Fix aliasing on Solaris.
Roy Marples [Wed, 27 Jul 2016 04:11:00 +0000 (04:11 +0000)]
#undef RTF_CLONING for Solaris in if.h so it's picked up everywhere.
Roy Marples [Wed, 27 Jul 2016 03:57:52 +0000 (03:57 +0000)]
Solaris can disable LL generation, so we can add our own view.
Roy Marples [Wed, 27 Jul 2016 03:54:22 +0000 (03:54 +0000)]
Juggle #define ordering.
Note that Solaris does not support routes from the ip address to localhost.
Roy Marples [Tue, 26 Jul 2016 21:18:03 +0000 (21:18 +0000)]
Sync Solaris driver to latest API.
Simplify generating route messages and address management.
As of now, this should mostly work :)
Roy Marples [Tue, 26 Jul 2016 21:11:32 +0000 (21:11 +0000)]
Solaris doesn't really have a machine/arch afaik.
Roy Marples [Tue, 26 Jul 2016 21:09:35 +0000 (21:09 +0000)]
Remove Solaris IN6_IFF_* defines from configure and add the to ipv6.h,
similar to Linux.
While here, add IN_IFF_* counter-parts in ipv4.h.
Roy Marples [Tue, 26 Jul 2016 21:05:18 +0000 (21:05 +0000)]
Fix a crash accidently introduced prior patch.
Roy Marples [Tue, 26 Jul 2016 20:55:42 +0000 (20:55 +0000)]
Fix compile on BSD.
Roy Marples [Tue, 26 Jul 2016 20:52:31 +0000 (20:52 +0000)]
Simplify handling of IPv6 address from kernel messages, similar to IPv4.
While here, drop the flags argument from the ifa routines.
Instead, grab it in the main ifa handler - it was only for IPv6 addresses
in Linux anyway.
Roy Marples [Tue, 26 Jul 2016 19:12:21 +0000 (19:12 +0000)]
Fix compile on BSD.
Roy Marples [Tue, 26 Jul 2016 19:06:54 +0000 (19:06 +0000)]
Because struct rt has src addr, we no longer need ipv4_srcaddr.
While here, add src to struct rt6 as well for future use.
Roy Marples [Tue, 26 Jul 2016 15:52:15 +0000 (15:52 +0000)]
uname always returns -1 on error on all supported platforms, so test for that.
Roy Marples [Sat, 23 Jul 2016 13:36:51 +0000 (13:36 +0000)]
Add support for adding/deleting routes in Solaris.
This currently failes with EINVAL, and am unsure why.
Roy Marples [Fri, 22 Jul 2016 21:01:24 +0000 (21:01 +0000)]
Match if_address
Roy Marples [Fri, 22 Jul 2016 20:59:04 +0000 (20:59 +0000)]
Add initial support for aliased addresses on Solaris.
Roy Marples [Thu, 21 Jul 2016 08:50:48 +0000 (08:50 +0000)]
Free after logging error incase free generates an error.
Roy Marples [Thu, 21 Jul 2016 08:45:00 +0000 (08:45 +0000)]
Release option memory if there is a problem allocating a large
enough buffer to read the file.
Thanks to Koichi Okamoto for the initial patch.
Roy Marples [Thu, 21 Jul 2016 08:40:43 +0000 (08:40 +0000)]
Need this header for strtoi.
Roy Marples [Mon, 18 Jul 2016 13:13:40 +0000 (13:13 +0000)]
Fix BYTE_ORDER for Solaris which does not define it readily.
Roy Marples [Mon, 18 Jul 2016 10:53:45 +0000 (10:53 +0000)]
Add if_nametospec helper to decode and interface name such as bge1:2 into
device name, lun, ppa and driver name.
Use this function when discovering addresesses and when they arrive
via the kernel listening socket so they can be assigned to the correct
physical interface.
This change does also stop `dhcpcd eth0:1` working on Linux, but is needed
for basic Solaris support.
Roy Marples [Sun, 17 Jul 2016 14:35:11 +0000 (14:35 +0000)]
Fix API for sun.
Roy Marples [Fri, 8 Jul 2016 19:44:18 +0000 (19:44 +0000)]
Apply command line options to profile.
Fixes [
87d9d6b583 ].
Roy Marples [Thu, 30 Jun 2016 10:39:28 +0000 (10:39 +0000)]
Don't add our own IPv6 LLADDR if the OS doesn't allow us turning the OS doing it off.
Roy Marples [Tue, 28 Jun 2016 12:32:16 +0000 (12:32 +0000)]
Clarify udp_len being out of bounds checked.
Roy Marples [Tue, 28 Jun 2016 12:22:51 +0000 (12:22 +0000)]
Revert [
da213b6490 ] because the fd we're reading from could be a generic
file descriptor and have no concept of packet boundaries
(this is true for BPF).
Re-implement, but cleaner and with more commentary.
Roy Marples [Mon, 27 Jun 2016 15:40:57 +0000 (15:40 +0000)]
Fix spelling mistakes, [
944ac40b82 ].
Roy Marples [Sat, 25 Jun 2016 11:43:58 +0000 (11:43 +0000)]
Check we have an assigned address when an ARP conflict occurs to avoid a NULL
pointer deference. Fixes [
61803be50b ].
Roy Marples [Tue, 21 Jun 2016 08:39:19 +0000 (08:39 +0000)]
Allow pkg-config to be host selectable like the compiler.
Tjhanks to Heiko Becker <heirecka@exherbo.org>.
Roy Marples [Mon, 20 Jun 2016 13:02:35 +0000 (13:02 +0000)]
Rework prior so it works.
Roy Marples [Mon, 20 Jun 2016 12:34:27 +0000 (12:34 +0000)]
Allow the possibility to exclude the vendor class option.
Roy Marples [Fri, 17 Jun 2016 19:08:33 +0000 (19:08 +0000)]
Release dhcpcd-6.11.1
Roy Marples [Thu, 16 Jun 2016 08:28:34 +0000 (08:28 +0000)]
Remove mistakenly added debug.
Roy Marples [Tue, 14 Jun 2016 21:54:24 +0000 (21:54 +0000)]
Hostname documentation fixes, thanks to Olaf Seibert.
Roy Marples [Fri, 10 Jun 2016 09:15:12 +0000 (09:15 +0000)]
Remove debug mistakenly added, [
c4df3c6b97 ].
Roy Marples [Fri, 10 Jun 2016 09:01:25 +0000 (09:01 +0000)]
Always set the aquired time for renewed delegated addreses, fixes [
c4df3c6b97 ].
Roy Marples [Fri, 10 Jun 2016 08:56:00 +0000 (08:56 +0000)]
Only log the once we have logged the delegated prefix.
Roy Marples [Wed, 8 Jun 2016 11:30:38 +0000 (11:30 +0000)]
Always show the prefix we are delegated in debug, aids [
c4df3c6b97 ].
Roy Marples [Tue, 7 Jun 2016 19:09:39 +0000 (19:09 +0000)]
Reserve enough space for a fully escaped SSID.
Roy Marples [Wed, 1 Jun 2016 06:21:04 +0000 (06:21 +0000)]
Allow an SLA 0 and prefix length of 0 to delegate the whole prefix which
allows the following config:
ia_pd 1 wm1/0
Roy Marples [Wed, 1 Jun 2016 05:44:47 +0000 (05:44 +0000)]
Add lastlease informational message.
Roy Marples [Wed, 1 Jun 2016 05:44:22 +0000 (05:44 +0000)]
We can work with saved leases without a full vendor area.
Roy Marples [Thu, 26 May 2016 08:54:45 +0000 (08:54 +0000)]
Don't drop DHCPv6 if we have a delegated address on router expiry.
Roy Marples [Wed, 25 May 2016 19:58:00 +0000 (19:58 +0000)]
Remove debug
Roy Marples [Wed, 25 May 2016 19:54:07 +0000 (19:54 +0000)]
Report the first non requested address.
Roy Marples [Wed, 25 May 2016 13:50:05 +0000 (13:50 +0000)]
Ensure mask and bcast as always set.
Roy Marples [Wed, 25 May 2016 10:35:52 +0000 (10:35 +0000)]
Calc requested netmask at start rather than in get_lease.
If we didn't request a specific address, use the existing address
netmask and broadcast addresses rather than any given by DHCP.
Roy Marples [Wed, 25 May 2016 10:32:39 +0000 (10:32 +0000)]
Fix some routing issues for POINTOPOINT interfaces.
Roy Marples [Wed, 25 May 2016 09:38:51 +0000 (09:38 +0000)]
Disable ARP for POINTOPOINT.
Roy Marples [Tue, 24 May 2016 13:02:31 +0000 (13:02 +0000)]
We need to store INADDR_ANY addresses for Solaris.