From 95bb97aeb652bfe9fdd775ebda6036dc9d6770f0 Mon Sep 17 00:00:00 2001 From: Qing He Date: Wed, 14 Jul 2010 22:09:26 +0800 Subject: dhcp: upgrade to 4.1.1-P1 from version 4.1.0 changes: original .bb file is based on dhcp3, whose build system differs from dhcp 4.x, add a new dhcp4.inc and preserve dhcp3.inc for reference, this should fix the conf file location bug of dhclient/dhcpd 4.1.0 - defining _PATH_DHC{LIENT,PD}_CONF in make parameter no longer works, put these definition to includes/site.h - delete upstream version of conf files, which are not used, and with an installation path hardcoded to ${sysconfdir} - similar thing happen for leases file, use new configure option to specify - RANLIB, LIBDIR, etc. as make parameter are no longer necessary Signed-off-by: Qing He --- .../dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch | 84 ++++++++++++++++++++++ meta/packages/dhcp/dhcp-4.1.1-P1/fixincludes.patch | 10 +++ meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch | 20 ++++++ meta/packages/dhcp/dhcp-4.1.1-P1/site.h | 21 ++++++ 4 files changed, 135 insertions(+) create mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch create mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/fixincludes.patch create mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch create mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/site.h (limited to 'meta/packages/dhcp/dhcp-4.1.1-P1') diff --git a/meta/packages/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch b/meta/packages/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch new file mode 100644 index 0000000000..579d72f484 --- /dev/null +++ b/meta/packages/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch @@ -0,0 +1,84 @@ +--- client/scripts/bsdos ++++ client/scripts/bsdos +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/freebsd ++++ client/scripts/freebsd +@@ -57,6 +57,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/linux ++++ client/scripts/linux +@@ -69,6 +69,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/netbsd ++++ client/scripts/netbsd +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/openbsd ++++ client/scripts/openbsd +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/solaris ++++ client/scripts/solaris +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + diff --git a/meta/packages/dhcp/dhcp-4.1.1-P1/fixincludes.patch b/meta/packages/dhcp/dhcp-4.1.1-P1/fixincludes.patch new file mode 100644 index 0000000000..91d99cce22 --- /dev/null +++ b/meta/packages/dhcp/dhcp-4.1.1-P1/fixincludes.patch @@ -0,0 +1,10 @@ +--- dhcp-3.0.2/common/tr.c~compile 2005-10-13 14:23:37.000000000 +0200 ++++ dhcp-3.0.2/common/tr.c 2005-10-13 14:23:45.000000000 +0200 +@@ -39,6 +39,7 @@ + #include "includes/netinet/udp.h" + #include "includes/netinet/if_ether.h" + #include "netinet/if_tr.h" ++#include + #include + + /* diff --git a/meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch b/meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch new file mode 100644 index 0000000000..5c766d6c06 --- /dev/null +++ b/meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch @@ -0,0 +1,20 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- dhcp-3.0.1/includes/dhcpd.h~compile ++++ dhcp-3.0.1/includes/dhcpd.h +@@ -306,9 +306,9 @@ + # define EPHEMERAL_FLAGS (MS_NULL_TERMINATION | \ + UNICAST_BROADCAST_HACK) + +- binding_state_t __attribute__ ((mode (__byte__))) binding_state; +- binding_state_t __attribute__ ((mode (__byte__))) next_binding_state; +- binding_state_t __attribute__ ((mode (__byte__))) desired_binding_state; ++ binding_state_t binding_state; ++ binding_state_t next_binding_state; ++ binding_state_t desired_binding_state; + + struct lease_state *state; + diff --git a/meta/packages/dhcp/dhcp-4.1.1-P1/site.h b/meta/packages/dhcp/dhcp-4.1.1-P1/site.h new file mode 100644 index 0000000000..2289554ef3 --- /dev/null +++ b/meta/packages/dhcp/dhcp-4.1.1-P1/site.h @@ -0,0 +1,21 @@ +/* + * define config file location in ${S}/includes/site.h + * still need to take care of installation path (${sysconfdir}/dhcpd.conf) + * + * 7/22/2010 - qhe + */ + +/* Define this if you want DNS update functionality to be available. */ + +#define NSUPDATE + +/* Define this if you aren't debugging and you want to save memory + (potentially a _lot_ of memory) by allocating leases in chunks rather + than one at a time. */ + +#define COMPACT_LEASES + + +/* local */ +#define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" +#define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" -- cgit v1.2.3-54-g00ecf