Commit graph

50 commits

Author SHA1 Message Date
roy
84b727c3fe Import dhcpcd-6.6.4 with the following changes:
*  Fix a compile warning in dhcpcd-6.6.3
  *  Notify dhcpcd-run-hooks if running in debug mode
  *  Report selected profile in test mode
2014-11-26 16:09:29 +00:00
roy
94ba6be2c4 Import dhcpcd-6.6.3 with the following changes:
*  Log which IP address we are ARPing.
  *  Only free other ARP states if not assinging an IPv4LL address.
  *  Reload global config when running per interface commands.
     This matches the signal behaviour.
  *  If we don't have a hardware address, fallback to creating a default
     IAID from the interface name and index as we used to.
  *  Loopback interfaces have routes scoped to the host only.
  *  If we don't have a hwlen and no clientid has been set, force a DUID
     based ClientID.
  *  Disable IPv6RS if a loopback, pointopoint or not a multicast interface.
  *  If allowinterfaces is not specified, allow all configured interfaces
     to work, such as loopback and ppp.
  *  When not daemonising, don't exit on timeout.
  *  Zero length UDP packets are not an error condition on the socket.
     Thanks to Micha? K?pie?.
  *  If the IP address is still on the interface when reading a lease,
     fake add the address and routes so the lease can be cleaned up if needed.
2014-11-26 13:38:37 +00:00
roy
e11e6d040a Update dhcpcd-6.6.2 with the following changes:
*  TAILQ macros are now pulled in via config.h only so dhcpcd compiles
     on systems where sys/queue.h does not exist at all
  *  Remove DHCP state correctly when the interface departs
  *  End the IPv4LL state when DHCP is stopped
  *  Ensure that any DHCP leased offered still exists when assigning an
     IPv4LL address
2014-11-14 11:52:50 +00:00
roy
7c80929b24 Import dhcpcd-6.6.1 with the following changes:
*  Log the address IPv4LL defends
  *  PREINIT, UNKNOWN and CARRIER are not either up nor down states
  *  ARP code re-written to allow for many ARP states
  *  IPv4LL address is now pseudo random based on HW address instead
     of really random as per RFC 3927 Section 2.1
  *  If not doing DHCP or DHCP6, disable the DNS requirement in the RA
     to fork.
  *  Treat IPv4LL as fallback and start DHCP discovery even if the prior
     lease was IPv4LL when rebooting.
  *  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.

  *  Improve handling of the IPv6LL address at startup
  *  Support old Linux kernels where IFLA_AF_SPEC may not exist
  *  When stopping interfaces, skip past pseudo interfaces instead
     of finding the master as only the masters are sorted correctly

Added another mirror site, http://cflags.cc/roy/dhcpcd
2014-11-07 20:18:06 +00:00
roy
b5386cb8e6 Import dhcpcd-6.5.1 with the following changes:
*  Use RTF_PINNED when deleting routes when available
     Allows dhcpcd to control IPv4 routing on newer FreeBSDs
  *  Don't work on bridge, or ptp interfaces unless explicitly told
  *  Poll for IFF_RUNNING again but avoid constantly sending IFF_UP
     (should now fix all carrier problems on BSD virtual interfaces)
  *  Don't crash when processing IPv6 route calls from the kernel
     when IPv6 resources have been disabled in dhcpcd
  *  Allow the same IP address to be shared across different interfaces
     Interface with the lowest metric gets the IP address, will move
     to the next highest if dropped (interface departs, carrier drops, etc)
  *  Use correct interface gateway on FreeBSD, removes need for linkaddr.c
     on kFreeBSD
  *  Delegated prefix addresses are now reported via DELEGATE6
  *  Fix copying the correct timezone file
  *  Work better with unknown delegated prefix lengths
  *  Move IPv4LL and ARP to the DHCP eloop queue to fix timing issues
  *  Add IA PD documentation update from christos@netbsd.org
2014-10-18 00:00:52 +00:00
roy
035107d980 Import dhcpcd-6.5.0 with the following changes:
*  Fix an unaligned access error on BeagleBone Black with FreeBSD.
     Thanks to Guy Yur for the patch.
  *  Remove the fast loop trying to up an interface which does not
     report carrier.
  *  Remove vis based encoding - instead validate against option type and
     stop at invalid [1]
     This removes all shell escaped encoding - dhcpcd will assume that IF
     the --script option is a shell, it will quote variables correctly.
     The stock dhcpcd-run-hooks does.
  *  dhcpcd -V now prints how the variables will be decoded.
  *  Changed some options in dhcpcd-definitions.conf to more sensible defaults.
  *  Don't daemonise on delegated address dad.
  *  Don't drop delegated reject route when forking.
  *  Fix IPv6 handling of link-local addresses on KAME stacks.
  *  Work on OpenBSD-5.6 without any special interface setup needed.
  *  Callout to handlecarrier when we don't have real carrier support and
     rely on looking at IFF_UP and IFF_RUNNING.
     This allows our hooks to know that dhcpcd thinks we have a carrier or not.

[1] DHCP option encodings defined in dhcpcd-definitions.conf
  *  domain (RFC3397)/dname (string) is strict domain name allowance
     (ie, [alnum] with _- (but not at the start or end))
  *  string is now printable ascii (1-127) until invalid
  *  ascii is all ascii (1-127) until invalid
  *  raw is all chars (1-255) until NUL
  *  binhex is a hex representation of the option including embedded NULs
  *  ssid is still escpaed octal because it's expected to be human readable
     AND can technically be all NUL
  *  everything else has strict option -> value encoding
2014-10-06 18:28:47 +00:00
roy
0cd9344a5f Roll back to dhcpcd-6.4.3 2014-10-01 00:20:37 +00:00
roy
9433afad77 Import dhcpcd-6.4.7 with the following changes:
*  make test works again
  *  Many bounds checking fixes from Tobias Stoeckmann
  *  Improve error when the authentication token cannot be found
  *  close the IPv4 specific UDP socket when done sending
  *  Implemented a write queue to the control sockets
  *  Only send interfaces to control sockets when in a BOUND state
  *  Add a sample controlgroup directive to dhcpcd.conf to make setup easier
  *  Add variables if_oneup and if_ipwaited so hook scripts know the overall
     state of dhcpcd better
  *  Pass RC_SVCNAME from enviromment to hooks so that a service hook can
     know it's name (may not be dhcpcd)
  *  Document every variable set for dhcpcd-run-hooks(8)
  *  Use the nl80211 interface on Linux to get the wireless SSID if we fail
     to get it via WEXT
  *  Allow SSIDs with non printable characters to be used in ssid selection
     in dhcpcd.conf
  *  Add an unprivileged control socket so that normal users can obtain
     dhcpcd running state
  *  Remove all instances of if_indextoname as we already know the index
  *  Only bring in linux/ipv6.h for linux AND glibc
  *  Add _DEFAULT_SOURCE #define to to make glibc-2.20 happy
  *  Check we have allocated IPv6 resources before checkings RA's
  *  configure errors are now logged to config.log
  *  Only hunt for a cross compiler if build != host
  *  Detect removal of IPv6 routes
  *  Don't add link-local addresses to POINTOPOINT interfaces
  *  Don't discard expired DHCPv6 leases when dumping them
  *  If a DHCPv6 lease has no timers, expire it right away
  *  Report delegated addresses
  *  Call dhcpcd-run-hooks correctly when delegated prefixes already exist
  *  Fix a memory error when ia_* config exists but IPv6 is disabled
  *  Ensure servername and bootfile are safely exported
  *  Sanitise the following characters using svis(3) with VIS_CTYLE and
     VIS_OCTAL:
         | ^ & ; < > ( ) $ ` \ " ' <tab> <newline>
     This allows a non buggy unvis(1) to decode it 100% and stays compatible
     with how dhcpcd used to handle encoding on most platforms.
     For systems that supply svis(3) there is a code reduction, for systems
     that do not, a slight code increase. This change mitigates systems
     affected by bash CVE-2014-6271 and CVE-2014-7169.

OK: jperkin@
2014-09-27 10:51:05 +00:00
roy
d8817f7298 Update to dhcpcd-6.4.3 with the following changes:
*  Correct DHCPv6 Prefix Delegation option decoding
  *  Ensure that a given buffer is at least BUFSIZ (for getline compat)
  *  Poll interfaces on BSD for IFF_RUNNING if link state cannot be obtained
  *  Check for an IA to use in DHCPv6 lease validation
  *  Fix compile on NetBSD-6 (and possibly earlier NetBSDs)
  *  Warn about exceeding IDGEN_RETRIES when a stable private address cannot
     be obtained
  *  Fix DHCP option overload handling, thanks to Tobias Stoeckmann
2014-07-30 15:54:04 +00:00
roy
c291fbf58e Update to dhcpcd-6.4.2 to fix a compile error. 2014-07-14 14:10:35 +00:00
roy
d682f97704 Update to dhcpcd-6.4.1 with the following changes:
*  If just given a domain and no search list, make the search list the domain
  *  Skip arpping directives if we have a profile but not parsing one
  *  Allow the request of a DHCPv6 address or prefix, a prefix length must be
     specified
  *  Add the ability to dump DHCPv6 leases
  *  Improve startup with regards to carrier checking and adding a link-local
     IPv6 address
  *  Start the correct interface reference for added devices
  *  Support
     http://datatracker.ietf.org/doc/draft-ietf-dhc-dhcpv6-stateful-issues-06
     via the ia_pd_mix option
  *  Fix link handling where kernel reported flags in LINK_UP may not be
     valid when we actually process them
  *  Fix defining new options in dhcpcd.conf and requesting them
  *  Fix a potential segfault when reloading configurations
  *  Print user defined options via -V
  *  Add support for RFC6603, Prefix Exclude option
  *  When requesting a IA_PD and another IA type, create a psuedo interface
     to handle the IA_PD
  *  Handle truncated DHCPv6 saved leases
2014-07-14 11:56:12 +00:00
jperkin
45bc40abb4 Remove example rc.d scripts from PLISTs.
These are now handled dynamically if INIT_SYSTEM is set to "rc.d", or
ignored otherwise.
2014-03-11 14:04:57 +00:00
roy
42bc6cd1fa Import dhcpcd-6.0.4 with the following changes:
* hostname is not stamped on anymore if already set
* hostname will be set to a FQDN when possible as per RFC4702 section 3.1
* a domain is derived from the FQDN if no domain option is set
* add new hostname_short command to send a short hostname for DDNS
* hostname_fqdn is now documented, along with a new server setting and the
  potential problems associated with it
* the FQDN option is no longer sent by default for DHCPv4 messages
2013-07-29 20:42:41 +00:00
asau
e059e7e469 Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-23 17:18:07 +00:00
roy
d3772707ef Import dhcpcd-5.5.4 with the following changes:
* ArchLinux SERVICESTATUS override fixed
* Shell portability fixes, including proper printf usage.
* Detect a valid ntp.conf before adjusting it
* Restart NTP correctly on Debian

* reboot timeout changed to 5 seconds
* When rebooting and not daemonized, reduce the discover timeout
  to allow for fallback or IPv4LL
* Respect each kernel carrier message
* Optimize some bitwise logic
* On Linux, pretent a bridge interface does not exist until IFF_LOWER_UP is set
* Don't remove interfaces for which commands have not been sent
* Store the assigned metric to each route so that we can change metrics on the fly
    dhcpcd -n --metric 100 iwi0
* Add SixRD support, RFC5969
* Fix SIP server support
* Only regen resolv.conf if it has changed
* Fix --reconfigure from spinning
* Add IPv6 Router Solicitation support we regards to RDNSS and DNSSL, RFC6016
* Add clang to the list of detected compilers
* Allow dhcpcd to run on a read only filesystem
* Don't attempt to tun the script if an empty string or /dev/null
* Stop truncating the netmask sockaddr on routing messages for BSD
* Prefer a DHCP lease over an IPv4LL one
* Fix carrier handling on BSD
* Fix arc4random detection on FreeBSD 7
2012-02-06 15:43:49 +00:00
shattered
26ce32cfbd PR/29576 -- Use @RCD_SCRIPTS_SHELL@ in rc.d scripts, not /bin/sh 2011-10-07 22:37:02 +00:00
roy
df9c32fcee Import dhcpcd-5.2.12 with the following changes:
* 20-resolv.conf now uses the correct variable for $IF_METRIC
* Compiles on RedHat9
* Exclude interface values when dumping the lease
* Parse static value subnet_mask when it exists instead of deriving from
  ip address
* logger calls now resemble dhcpcd calls to syslog(3)
* Reject offered IP address if INADDR_BROADCAST or INADDR_ANY
* Change the route if source address has changed
* Handle partial UDP checksums so we work in Xen domU
  Thanks to Marius Tomaschewski <mt@suse.de>
* Note the address we are requesting in the broadcast log entry
* When operating on one interface, respect the timeout for in dhcpcd.conf
* Escape | and & characters before passing the value to the shell
  Ensure we set a valid hostname, DNS domain and NIS domain.
  Document the need for input validation in dhcpcd-run-hooks(8).
  Fixes CVE-2011-996
  Based on a patch to dhcpcd-3 by Marius Tomaschewski <mt@suse.de>
2011-04-06 09:12:36 +00:00
roy
d552747a0a Update to dhcpcd-5.2.11
Change from dhcpcd-5.2.10 is support for 64-bit routing on NetBSD.
2011-02-04 15:30:53 +00:00
obache
ed8c724313 remove unwanted patches since last update. 2011-01-06 05:19:38 +00:00
roy
5c17ead925 Update to dhcpcd-5.2.10 with the following change:
* -r, --request option now works again
2011-01-03 10:59:17 +00:00
wiz
1fe158853b Add checksums for patch-a{a,b}. Hi abs! 2010-12-31 06:20:12 +00:00
abs
2bafe6a185 Fix build on OS X, bump PKGREVISION. Note dhcpcd runs but something in
OS X seems to be eating the dhcp server's responses, even with the
OS X interface config set to manual.
2010-12-07 22:53:48 +00:00
roy
8f8d064312 Update to dhcpcd-5.2.9 with the following changes:
* syntax in 50-ypbind hook has been fixed
* man page corrections
* Compile correctly on Debian kFreeBSD
* invoke-rc.d now detected by configure correctly
* report hwaddr used by dhcpcd when debug is enabled
* Fix detecting inet address for INFORM support
* document reason RELEASE in dhcpcd-run-hooks
* Support RTM_CHGADDR in the upcoming NetBSD-6
  This is used to work out if the hwaddr has changed as the interface
  does not go down/up unlike other OSes
* ntp hook no longer attempts to restart ntpd if 1st attempt failed
2010-11-27 12:59:31 +00:00
roy
f3421f990c Update to dhcpcd-5.2.7
Changes include:
* Compile on Slackware again
* Use dynamically sized buffers for reading kernel link events
  Fixes carrier status on Linux-2.6.35 64bit kernels
* Use the active link address on NetBSD-5
* Fix syslog support in dhcpcd-run-hooks
2010-08-04 07:19:06 +00:00
roy
a56f9c9b4c Update to dhcpcd-5.2.6
Changes from dhcpcd-5.2.4 include:
* Always daemonise in master mode as some interface up/downs can trigger timeout
* Improved NTP handling on Debian based systems
* dhcpcd -n will now re-read the configuration file
2010-07-07 22:03:37 +00:00
roy
a336fa3b49 Update to dhcpcd-5.2.4 with one change:
* Fix crash when using clientid and the interface re-configures
2010-06-04 09:04:18 +00:00
roy
d08a58adb6 Update to dhcpcd-5.2.3
Changes include:
* compile on FreeBSD-8 where closefrom(3) returns void
* log the pid of dhcpcd
* Indicate server IP received message from even if server ID not present
* Fix crashes on IPv4LL failure and add more logging
2010-05-26 07:54:42 +00:00
roy
e96239b909 Import dhcpcd-5.2.2 with the following changes:
* The broadcast flag is now automatically set for interfaces that require
  it, via platform detection. Currently qeth on Linux.
* Fix a file descriptor leak on Linux getting platform info.
* Don't send a maximum DHCP message size beyond what we can handle.
* ip_ip is now randomized.
* IPTOS_LOWDELAY and IP_DF flags are no longer set.
* SSID is now correctly terminated on Linux.
2010-03-31 09:11:11 +00:00
roy
301b88cf17 Impport dhcpcd-5.2.1 with a quick build fix. 2010-02-27 16:06:59 +00:00
roy
9ad22aba2a Import dhcpcd-5.2.0 with the following changes:
* VendorID is now dhcpcd-$version:$OS-$version:$machine:$platform
* IPv4LL address range can now be used in DHCP requests
* sysctl net.ipv4.conf.$iface.promote_secondaries enabled on Linux
  This resolves a long standing issue of changing ip on the same subnet.
* IPv4LL correctly resets the DHCP timer.
2010-02-27 15:46:52 +00:00
roy
fcafe06913 Update to dhcpcd-5.1.5 with the following changes:
* arc4random from OpenBSD imported for better randomness on Linux
* -h, --xidhwaddr uses the last 4 bytes of the hardware address as
  the DHCP xid
* no longer warn about InfiniBand being an unsupported family
* infinite lease times are valid when reading old leases
* discard address correctly if lease is invalid
2010-01-31 20:30:18 +00:00
abs
88ba6b51d5 Add --sysconfdir=${PKG_SYSCONFDIR} to CONFIGURE_ARGS, bump pkgrevision 2009-12-26 23:59:26 +00:00
roy
e53fe2da99 Import dhcpcd-5.1.4 with the following changes:
* dhcpcd logs even in quiet mode.
 * Sleep for 1/100th of a second to give time for kernel to send RELEASE.
 * -S option now works.
 * Only warn about using CSR on bind.
 * Fix detection of route deletion on Linux.
2009-12-23 09:34:58 +00:00
roy
a2266842d4 dhcpcd-5.1.3 has been imported with the following changes:
* waitip is enabled when running on a single interface.
* Classless Static Routes are now enabled by default in dhcpcd.conf
  instead of being always being requested.
2009-10-25 23:44:49 +00:00
roy
c10e0eedd9 Import dhcpcd-5.1.2 with these changes:
* ClientID is now reported when interface starts
* -w, --wait forces dhcpcd to wait until an interface gets a lease or
  times out
* Ensure DHCP socket is open when sending a DECLINE
* Uses new hwaddr if existing interface is downed and then changed.
* No longer works on firewire interfaces by default.

dhcpcd-5.1.2 has a new behaviour change - when starting up and at least 1
interface has a carrier then it tries to get a lease or times out.
It still daemonises regardless. This, along with the -b and -w flags
allows total control over the desired behaviour of dhcpcd.
2009-10-16 21:43:13 +00:00
roy
55fb0d739b Update to dhcpcd-5.1.1
Changes from dhcpcd-5.1.0 include:
 * Fix various typos and grammatical errors. Thanks to Stephen Borrill.
 * Don't null terminate gratuitously when handling quotes in dhcpcd.conf.
 * Improve the configure script for cross-compiles.
2009-09-22 06:32:16 +00:00
roy
34759963e7 Update to 5.1.0
Changes from 5.0.6
* get_option_addr uses struct in_addr * instead of uint32_t *
  fixes a crash on sgimips/netbsd, thanks to Tim McIntosh
* Use ssize_t which is a signed int and test if read() returns -1
  fixes a crash on some embedded systems, thanks to David Wu
* Fix -f path/to/config
* -e, --env var=value for profile specific env vars
* Many issues resolved when running in test mode
* Don't print a (null) string when there is no NAK message
* Fix compile on NetBSD-4 (PR pkg/41719)
* Only allow hardware families we know by default (over-ridable)
* Fix persistent and timeout 0 options
* Fix parsing of escape code sequencies
* Don't bring up interfaces brought down when handling new interfaces
* Allow un-encapsulated vendor option
* Build system now uses configure script and not mk stubs
2009-09-02 20:54:18 +00:00
roy
438e32d24e Update to dhcpcd-5.0.6
Changes from dhcpcd-5.0.4 include
 * Fix crash on MIPS
 * Default to requesting interface MTU
 * Save and restore interface MTU when changing
 * IP whitelist
 * Fix detecting correct dstaddr for PtP interfaces at startup
 * Ensure that the lease and pidfile directories exist at startup
2009-07-08 22:24:33 +00:00
joerg
62d1ba2bac Remove @dirrm entries from PLISTs 2009-06-14 18:03:28 +00:00
roy
5161fd200d Update to dhcpcd-5.0.4
Changes from dhcpcd-5.0.3 include
 * The requirement of the ServerID option is now configurable
 * Don't set a MTU lower than 576
 * Enforce a minimum lease time of 20 seconds
2009-05-24 21:24:56 +00:00
wiz
60f460ab01 Use standard location for LICENSE line (in MAINTAINER/HOMEPAGE/COMMENT
block). Uncomment some commented out LICENSE lines while here.
2009-05-19 08:59:00 +00:00
roy
ccc86ffc62 Update to dhcpcd-5.0.3
Changes from 5.0.2
 * getifaddrs can return NULL for ifa_addr
   We now catch this instead of crashing
2009-05-11 08:29:28 +00:00
roy
6b9768b6a8 Update dhcpcd to 5.0.2
Changes from 5.0.1 include
 * -n option now starts dhcpcd if not already started
 * 29-lookup-hostname hook installed by default, but skipped in dhcpcd.conf
 * Fix warning about missing dirs if we don't have any existing state
 * Fix compile on some Linux distros re linux/wireless.h
2009-05-10 16:35:40 +00:00
roy
e27d376a4f Update to dhcpcd-5.0.1
Changes from dhcpcd-5.0.0 include
 * Silence compile warnings on Sparc64
 * Fix address detection
2009-05-03 06:41:30 +00:00
roy
73af06c99e Update to dhcpcd-5.0.0
Changes from dhcpcd-4.99.18 include
 * Fixed existing address detection
 * Added non dhcp option variables to -V
 * Prefix some generic variable names exported to dhcpcd-run-hooks with if
   (ifmetric, ifwireless, ifflags) as they may conflict with generic var
   names when it restarts a service
2009-04-28 21:04:38 +00:00
roy
07732495f1 Update to dhcpcd-4.99.18
Changes from dhcpcd-4.99.15 include
 * Allow dhcpcd to work on any interface type when INFORMING or given a
   ClientID
 * arping ip selects a different interface profile on success
   Allows different static IP/DHCP configurations
 * DHCP messages without a ServerID are now ignored
 * If DHCP fails, allow fallback to a different interface profile
2009-04-20 06:38:19 +00:00
roy
2f62b0ef90 Update to dhcpcd-4.99.15
Changes from dhcpcd-4.99.14 include
 * Compiles on DragonFly BSD
 * Better support for 3rd party configured interfaces such as PPP
 * Blacklist now happens at the packet level
2009-03-20 15:46:00 +00:00
roy
d20b1e2d55 Use roy@NetBSD.org instead of my personal email. 2009-03-17 12:02:34 +00:00
hasso
37eaffeadc Make it build on DragonFly. 2009-03-12 08:14:16 +00:00
roy
91673c97be Import dhcpcd-4.99.14
dhcpcd is a small, bloat free DHCP client which includes these features
 * DHCP over firewire
 * User Class
 * SIP Servers
 * Domain Search
 * Classless Static Routes
 * IPv4LL aka APIPA aka Zeroconf
 * Node specific Client Identifiers
 * DHCP over Infiniband
 * Link carrier and interface addition/removal detection
 * Dynamic route management
2009-03-05 23:23:26 +00:00