diff options
Diffstat (limited to 'net-misc/networkmanager/files/networkmanager-0.8.1-dhcp-configure.patch')
-rw-r--r-- | net-misc/networkmanager/files/networkmanager-0.8.1-dhcp-configure.patch | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/net-misc/networkmanager/files/networkmanager-0.8.1-dhcp-configure.patch b/net-misc/networkmanager/files/networkmanager-0.8.1-dhcp-configure.patch new file mode 100644 index 0000000..be5e58a --- /dev/null +++ b/net-misc/networkmanager/files/networkmanager-0.8.1-dhcp-configure.patch @@ -0,0 +1,64 @@ +From c050e036c3d748970945195ed0fe6c914c439481 Mon Sep 17 00:00:00 2001 +From: Dan Williams <dcbw@redhat.com> +Date: Thu, 05 Aug 2010 20:25:42 +0000 +Subject: dhcp: make sure disabled DHCP clients aren't used (gentoo #330319) + +If the client was disabled with --with-dhclient=no or +--with-dhcpcd=no, then it's corresponding _PATH will be an empty +string. In that case we want to ignore that client completely +since it was disabled at build time. +--- +diff --git a/src/dhcp-manager/nm-dhcp-manager.c b/src/dhcp-manager/nm-dhcp-manager.c +index bde874f..a1e3e5e 100644 +--- a/src/dhcp-manager/nm-dhcp-manager.c ++++ b/src/dhcp-manager/nm-dhcp-manager.c +@@ -265,8 +265,13 @@ get_client_type (const char *client, GError **error) + const char *dhclient_path = NULL; + const char *dhcpcd_path = NULL; + +- dhclient_path = nm_dhcp_dhclient_get_path (DHCLIENT_PATH); +- dhcpcd_path = nm_dhcp_dhcpcd_get_path (DHCPCD_PATH); ++ /* If a client was disabled at build-time, its *_PATH define will be ++ * an empty string. ++ */ ++ if (DHCLIENT_PATH && strlen (DHCLIENT_PATH)) ++ dhclient_path = nm_dhcp_dhclient_get_path (DHCLIENT_PATH); ++ if (DHCPCD_PATH && strlen (DHCPCD_PATH)) ++ dhcpcd_path = nm_dhcp_dhcpcd_get_path (DHCPCD_PATH); + + if (!client) { + if (dhclient_path) +-- +From 91e90d9d5412223e0252ccff0e3732afae201af6 Mon Sep 17 00:00:00 2001 +From: Mike Auty <ikelos@gentoo.org> +Date: Thu, 05 Aug 2010 20:25:12 +0000 +Subject: build: fix dhcpcd client detection + +--- +diff --git a/configure.ac b/configure.ac +index 9c260fb..b1d16f2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -344,10 +344,10 @@ case "${with_dhcpcd}" in + AC_MSG_CHECKING(for dhcpcd) + # We fully work with upstream dhcpcd-4 + for path in /sbin /usr/sbin /usr/pkg/sbin /usr/local/sbin; do +- test -x "${path}/dhclient" || continue ++ test -x "${path}/dhcpcd" || continue + case `"$path/dhcpcd" --version 2>/dev/null` in + "dhcpcd "[123]*);; +- "dhcpcd "*) DHCP_CLIENT_PATH="$path/dhcpcd"; break;; ++ "dhcpcd "*) DHCPCD_PATH="$path/dhcpcd"; break;; + esac + done + if test -n "${DHCPCD_PATH}"; then +@@ -364,7 +364,7 @@ if test -z "$DHCPCD_PATH" -a -z "$DHCLIENT_PATH"; then + # in most distros, so use it. + AC_MSG_WARN([Could not find a suitable DHCP client]) + DHCLIENT_PATH=/sbin/dhclient +- AC_MSG_WARN([Falling back to ISC dhclient, ${DHCP_CLIENT_PATH}]) ++ AC_MSG_WARN([Falling back to ISC dhclient, ${DHCLIENT_PATH}]) + fi + AC_SUBST(DHCLIENT_PATH) + AC_SUBST(DHCPCD_PATH) +-- |