summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoy Marples <uberlord@gentoo.org>2007-10-17 15:52:13 +0000
committerRoy Marples <uberlord@gentoo.org>2007-10-17 15:52:13 +0000
commita13193df29c86fbb65011294cc40f0ede34c91ff (patch)
treec388dc8deb047dac8b884fce39bec8674d522ce2 /net-misc/dhcpcd/files
parentVersion bump. (diff)
downloadhistorical-a13193df29c86fbb65011294cc40f0ede34c91ff.tar.gz
historical-a13193df29c86fbb65011294cc40f0ede34c91ff.tar.bz2
historical-a13193df29c86fbb65011294cc40f0ede34c91ff.zip
Allow -zeroconf to actually work, #196718
Package-Manager: portage-2.1.3.13
Diffstat (limited to 'net-misc/dhcpcd/files')
-rw-r--r--net-misc/dhcpcd/files/dhcpcd-3.1.6-zeroconf.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/net-misc/dhcpcd/files/dhcpcd-3.1.6-zeroconf.patch b/net-misc/dhcpcd/files/dhcpcd-3.1.6-zeroconf.patch
new file mode 100644
index 000000000000..2b76e1c3f72c
--- /dev/null
+++ b/net-misc/dhcpcd/files/dhcpcd-3.1.6-zeroconf.patch
@@ -0,0 +1,67 @@
+Index: interface.h
+===================================================================
+--- interface.h (revision 289)
++++ interface.h (working copy)
+@@ -53,6 +53,14 @@
+
+ #define HWADDR_LEN 20
+
++#define LINKLOCAL_ADDR 0xa9fe0000
++#define LINKLOCAL_MASK 0xffff0000
++#define LINKLOCAL_BRDC 0xa9feffff
++
++#ifndef IN_LINKLOCAL
++# define IN_LINKLOCAL(addr) ((ntohl (addr) & IN_CLASSB_NET) == LINKLOCAL_ADDR)
++#endif
++
+ typedef struct route_t
+ {
+ struct in_addr destination;
+Index: client.c
+===================================================================
+--- client.c (revision 289)
++++ client.c (working copy)
+@@ -489,9 +489,7 @@
+ switch (state) {
+ case STATE_INIT:
+ if (iface->previous_address.s_addr != 0 &&
+-#ifdef ENABLE_IPV4LL
+ ! IN_LINKLOCAL (iface->previous_address.s_addr) &&
+-#endif
+ ! options->doinform) {
+ logger (LOG_ERR, "lost lease");
+ xid = 0;
+@@ -598,14 +596,12 @@
+ break;
+ case STATE_BOUND:
+ case STATE_RENEW_REQUESTED:
+-#ifdef ENABLE_IPV4LL
+ if (IN_LINKLOCAL (dhcp->address.s_addr)) {
+ memset (&dhcp->address, 0, sizeof (struct in_addr));
+ state = STATE_INIT;
+ xid = 0;
+ break;
+ }
+-#endif
+ state = STATE_RENEWING;
+ xid = random ();
+ case STATE_RENEWING:
+Index: ipv4ll.h
+===================================================================
+--- ipv4ll.h (revision 289)
++++ ipv4ll.h (working copy)
+@@ -25,14 +25,6 @@
+ #include "dhcp.h"
+ #include "interface.h"
+
+-#define LINKLOCAL_ADDR 0xa9fe0000
+-#define LINKLOCAL_MASK 0xffff0000
+-#define LINKLOCAL_BRDC 0xa9feffff
+-
+-#ifndef IN_LINKLOCAL
+-# define IN_LINKLOCAL(addr) ((ntohl (addr) & IN_CLASSB_NET) == LINKLOCAL_ADDR)
+-#endif
+-
+ int ipv4ll_get_address (interface_t *iface, dhcp_t *dhcp);
+
+ #endif