summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYauhen Kharuzhy <yauhen.kharuzhy@promwad.com>2012-02-21 17:04:38 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-02-23 23:59:16 +0000
commitbc2581aff2a859b414c8097514527a9b5b0ab2a6 (patch)
treed76d5199255ab074ce8f7d7ce1324ca850ce0aa9
parent6ebbeeb0bcd29aec25e2c437d0bc95dd78d62f82 (diff)
downloadopenembedded-core-bc2581aff2a859b414c8097514527a9b5b0ab2a6.tar.gz
openembedded-core-bc2581aff2a859b414c8097514527a9b5b0ab2a6.tar.bz2
openembedded-core-bc2581aff2a859b414c8097514527a9b5b0ab2a6.zip
ppp: Fix rp-pppoe plugin compilation
rp-pppoe plugin was broken due linux headers changes: pppd has own copy of if_pppol2tp.h file which is included from <linux/if_pppox.h>. Add patch from Debian for struct pppol2tpv3_addr definition. Signed-off-by: Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com>
-rw-r--r--meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch54
-rw-r--r--meta/recipes-connectivity/ppp/ppp_2.4.5.bb3
2 files changed, 56 insertions, 1 deletions
diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch b/meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch
new file mode 100644
index 0000000000..e034f19d81
--- /dev/null
+++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch
@@ -0,0 +1,54 @@
+Upstream-Status: Pending
+diff --git a/include/linux/if_pppol2tp.h b/include/linux/if_pppol2tp.h
+index 4113d6a..7ee86b2 100644
+--- a/include/linux/if_pppol2tp.h
++++ b/include/linux/if_pppol2tp.h
+@@ -2,7 +2,7 @@
+ * Linux PPP over L2TP (PPPoL2TP) Socket Implementation (RFC 2661)
+ *
+ * This file supplies definitions required by the PPP over L2TP driver
+- * (pppol2tp.c). All version information wrt this file is located in pppol2tp.c
++ * (l2tp_ppp.c). All version information wrt this file is located in l2tp_ppp.c
+ *
+ * License:
+ * This program is free software; you can redistribute it and/or
+@@ -15,14 +15,14 @@
+ #ifndef __LINUX_IF_PPPOL2TP_H
+ #define __LINUX_IF_PPPOL2TP_H
+
+-#include <asm/types.h>
++#include <linux/types.h>
++
+
+ /* Structure used to connect() the socket to a particular tunnel UDP
+ * socket.
+ */
+-struct pppol2tp_addr
+-{
+- pid_t pid; /* pid that owns the fd.
++struct pppol2tp_addr {
++ __kernel_pid_t pid; /* pid that owns the fd.
+ * 0 => current */
+ int fd; /* FD of UDP socket to use */
+
+@@ -32,6 +32,20 @@ struct pppol2tp_addr
+ __u16 d_tunnel, d_session; /* For sending outgoing packets */
+ };
+
++/* The L2TPv3 protocol changes tunnel and session ids from 16 to 32
++ * bits. So we need a different sockaddr structure.
++ */
++struct pppol2tpv3_addr {
++ pid_t pid; /* pid that owns the fd.
++ * 0 => current */
++ int fd; /* FD of UDP or IP socket to use */
++
++ struct sockaddr_in addr; /* IP address and port to send to */
++
++ __u32 s_tunnel, s_session; /* For matching incoming packets */
++ __u32 d_tunnel, d_session; /* For sending outgoing packets */
++};
++
+ /* Socket options:
+ * DEBUG - bitmask of debug message categories
+ * SENDSEQ - 0 => don't send packets with sequence numbers
diff --git a/meta/recipes-connectivity/ppp/ppp_2.4.5.bb b/meta/recipes-connectivity/ppp/ppp_2.4.5.bb
index 72464bffa0..80f91e6ff7 100644
--- a/meta/recipes-connectivity/ppp/ppp_2.4.5.bb
+++ b/meta/recipes-connectivity/ppp/ppp_2.4.5.bb
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://pppd/ccp.c;beginline=1;endline=29;md5=e2c43fe6e81ff77
file://pppd/plugins/passprompt.c;beginline=1;endline=10;md5=3bcbcdbf0e369c9a3e0b8c8275b065d8 \
file://pppd/tdb.c;beginline=1;endline=27;md5=4ca3a9991b011038d085d6675ae7c4e6 \
file://chat/chat.c;beginline=1;endline=15;md5=0d374b8545ee5c62d7aff1acbd38add2"
-PR = "r2"
+PR = "r3"
SRC_URI = "http://ppp.samba.org/ftp/ppp/ppp-${PV}.tar.gz \
file://makefile.patch \
@@ -18,6 +18,7 @@ SRC_URI = "http://ppp.samba.org/ftp/ppp/ppp-${PV}.tar.gz \
file://pppd-resolv-varrun.patch \
file://enable-ipv6.patch \
file://makefile-remove-hard-usr-reference.patch \
+ file://update_if_pppol2tp.patch \
file://pon \
file://poff \
file://init \