Skip to content

Andproject/platform_external_dhcpcd

 
 

Repository files navigation

dhcpcd-4 - DHCP client daemon
Copyright 2006-2008 Roy Marples <roy@marples.name>


Installation
------------
Edit config.h to match your building requirements.
Then just make; make install
man dhcpcd for command line options


Notes
-----
If you're cross compiling you may need to set the below knobs to avoid
automatic tests.
OS=BSD | Linux

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

You can change the default dir with these knobs.
For example, to satisfy FHS compliance you would do this:-
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.


Hooks
-----
Not all the hooks in dhcpcd-hooks are installed by default.
By default we install 01-test, 10-mtu, 20-resolv.conf and 30-hostname.
To add more simply add them in the HOOKSCRIPTS variable.
make HOOKSCRIPTS=50-ntp install


Compatibility
-------------
If you require compatibility with dhcpcd-3 and older style variables,
you can install 50-dhcpcd-compat into the directory $LIBEXECDIR/dhcpcd-hooks
We don't install this by default.
You should also add -DCMDLINE_COMPAT to your CPPFLAGS if you need to be fully
commandline compatible with prior versions.

dhcpcd-3 enabled DUID support by default - this has changed in dhcpcd-4.
You can enable it via the --duid, -D command line option or by using the
duid directive in dhcpcd.conf.
If CMDLINE_COMPAT is defined the we renable DUID support by default IF
the dhcpcd.duid file exits. This keeps the clients working as they were,
which is good.

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.
If CMDLINE_COMPAT is defined, we renable the sending of ClientID by default
AND adding clientid to dhcpcd.conf causes it NOT to be sent.

dhcpcd-4 is NOT fully commandline compatible with dhcpcd-2 and older and
changes the meaning of some options.


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/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published