Go to file
Roy Marples 6691a3fbc4 Change from _unused to __unused to match NetBSD cdefs and avoid
a compiler failure on linux-headers-3.7
2013-04-24 09:31:31 +00:00
compat Fix some valgrind errors on FreeBSD 2012-03-27 16:30:33 +00:00
dhcpcd-hooks Make this file actually work 2012-11-14 10:11:40 +00:00
.gitattributes Don't export git .gitignore file 2009-10-02 20:57:44 +00:00
.gitignore Replace the mk stubs with a autotools like configure script. 2009-07-14 13:59:30 +00:00
arp.c Change arp errno to match what we use in dhcpcd. 2013-02-19 17:00:49 +00:00
arp.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00
bind.c Always close this fd 2012-11-14 10:45:14 +00:00
bind.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00
bpf-filter.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00
bpf.c When the dhcp server is running in dom0 and the client in domU, 2011-03-24 17:59:20 +00:00
common.c Fix some more potential leaks and allow full build with dmalloc. 2012-11-14 10:32:08 +00:00
common.h Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
configure Add -h|--help option to configure 2013-02-15 12:55:38 +00:00
configure.c Ensure that nooption correctly woks for routes. 2013-01-28 09:47:40 +00:00
configure.h Fix some more copyrights 2012-02-02 16:22:40 +00:00
control.c Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
control.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00
defs.h Release dhcpcd-5.6.8 2013-04-04 20:59:26 +00:00
dhcp.c Create lease files so they are user writeable. 2013-03-27 16:05:45 +00:00
dhcp.h Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
dhcpcd-run-hooks.8.in Fix Dd and Dt arguments. 2012-03-24 10:41:40 +00:00
dhcpcd-run-hooks.in Ensure that if_up and if_down are always set 2012-05-01 21:17:44 +00:00
dhcpcd.8.in Grow -4, --ipv4only and -6, --ipv6only options. 2012-12-19 09:32:42 +00:00
dhcpcd.c Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
dhcpcd.conf Don't always request classless_static_routes, instead add it to dhcpcd.conf 2009-10-17 15:31:39 +00:00
dhcpcd.conf.5.in If we have one interface enabled for IPv6 RS, we stupidly process 2013-02-05 10:18:31 +00:00
dhcpcd.h Move the RS state into a struct in a generic data array. 2012-11-14 10:20:12 +00:00
duid.c Fix DUID support. 2012-11-14 10:12:29 +00:00
duid.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00
eloop.c Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
eloop.h Plug some memory leaks. 2012-11-14 10:31:49 +00:00
GNUmakefile Add comment about GNUMakefile 2009-07-14 21:52:43 +00:00
if-bsd.c Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
if-linux-wireless.c Fix compile issue on RedHat 9 2011-03-08 20:38:26 +00:00
if-linux.c Only accept netlink messages from the kernel. 2012-08-24 19:05:26 +00:00
if-options.c Preserve the space in static routes on the command line. 2012-12-20 19:35:26 +00:00
if-options.h Grow -4, --ipv4only and -6, --ipv6only options. 2012-12-19 09:32:42 +00:00
if-pref.c Fix some more copyrights 2012-02-02 16:22:40 +00:00
if-pref.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00
ipv4ll.c Fix copyright dates 2011-12-15 02:41:10 +00:00
ipv4ll.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00
ipv6.c Instead of opening link, ipv6, ipv6rs and ipv6ns sockets globally, 2013-02-15 20:14:32 +00:00
ipv6.h Respect AUTO and ONLINK flags for each prefix in the RA. 2012-12-11 08:45:33 +00:00
ipv6ns.c Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
ipv6ns.h Change the NS times so that we assume reachable until the reachable 2012-08-06 19:32:15 +00:00
ipv6rs.c Change from _unused to __unused to match NetBSD cdefs and avoid 2013-04-24 09:31:31 +00:00
ipv6rs.h When we receive a RA with a lifetime of 0, we should just remove 2012-11-14 10:25:04 +00:00
lpf.c Interface index should persist and be unique for the interface lifetime. 2012-03-30 09:37:21 +00:00
Makefile Improve IPv6 RA support by allowing dhcpcd to manage the address and routes 2012-07-05 16:37:41 +00:00
Makefile.inc Replace the mk stubs with a autotools like configure script. 2009-07-14 13:59:30 +00:00
net.c Improve IPv6 RA support by allowing dhcpcd to manage the address and routes 2012-07-05 16:37:41 +00:00
net.h Improve IPv6 RA support by allowing dhcpcd to manage the address and routes 2012-07-05 16:37:41 +00:00
platform-bsd.c Fix BSD restoring kernel RA. 2012-07-12 09:36:51 +00:00
platform-linux.c Disable kernel interface RA as early as possible on Linux. 2012-07-13 08:22:04 +00:00
platform.h Respect an accept_ra setting of 2, fixes #240. 2012-03-05 10:04:26 +00:00
README Fix more copyright 2012-01-31 09:51:12 +00:00
signals.c Promote bytes to size_t for sizeof comparison. 2009-07-11 15:04:13 +00:00
signals.h Add (c) to Copyright 2009-05-01 13:57:45 +00:00

dhcpcd - DHCP client daemon
Copyright (c) 2006-2012 Roy Marples <roy@marples.name>


Installation
------------
./configure; make; make install
man dhcpcd for command line options
man dhcpcd.conf for configuration options
man dhcpcd-run-hooks to learn how to hook scripts into dhcpcd events


Notes
-----
If you're cross compiling you may need set the platform if OS is different
from the host.
--target=sparc-sun-netbsd5.0

If you're building for an MMU-less system where fork() does not work, you
should ./configure --disable-fork.
This also puts the --no-background flag on and stops the --background flag
from working.

You can change the default dirs with these knobs.
For example, to satisfy FHS compliance you would do this:-
./configure --libexecdir=/lib/dhcpcd dbdir=/var/lib/dhcpcd

We now default to using -std=c99. For 64-bit linux, this always works, but
for 32-bit linux it requires either gnu99 or a patch to asm/types.h.
Most distros patch linux headers so this should work fine.
linux-2.6.24 finally ships with a working 32-bit header.
If your linux headers are older, or your distro hasn't patched them you can
set CSTD=gnu99 to work around this.

Some BSD systems do not allow the manipulation of automatically added subnet
routes. You can find discussion here:
    http://mail-index.netbsd.org/tech-net/2008/12/03/msg000896.html
BSD systems where this has been fixed are:
    NetBSD-5.0

We try and detect how dhcpcd should interact with system services during the
configure stage. If we cannot auto-detect how do to this, or it is wrong then
you can change this by passing shell commands to --service-exists,
--servicecmd and optionally --servicestatus.

To prepare dhcpcd for import into a platform source tree (like NetBSD)
you can use the make import target to create /tmp/dhcpcd-$version and
populate it with all the source files and hooks needed.
In this instance, you may wish to disable some configured tests when
the binary has to run on older versions which lack support, such as getline.
./configure --without-getline


Hooks
-----
Not all the hooks in dhcpcd-hooks are installed by default.
By default we install 01-test, 10-mtu, 20-resolv.conf,
29-lookup-hostname and 30-hostname.
The default dhcpcd.conf disables the lookup-hostname hook by default.
The configure program attempts to find hooks for systems you have installed.
To add more simply
./configure -with-hook=ntp.conf


Compatibility
-------------
dhcpcd-5.0 is only fully command line compatible with dhcpcd-4.0
For compatibility with older versions, use dhcpcd-4.0

dhcpcd no longer sends a default ClientID for ethernet interfaces.
This is so we can re-use the address the kernel DHCP client found.
To retain the old behaviour of sending a default ClientID based on the
hardware address for interface, simply add the keyword clientid to dhcpcd.conf.


ChangeLog
---------
We no longer supply a ChangeLog.
However, you're more than welcome to read the commit log at
http://roy.marples.name/projects/dhcpcd/log/