mirror of
https://git.yoctoproject.org/poky
synced 2026-06-02 01:19:52 +00:00
ppp: include netinet/in.h before linux/in.h in pppoe.h
The patch ppp-fix-building-with-linux-4.8.patch tries to fix build error with 4.8 or newer linux headers, but it would break building with kernel < 4.8. There is a better solution to fix this issue in upstream. Backport the upstream patch and replace the old one. [YOCTO #10457] (From OE-Core rev: 6e50f316db897c1d64026b3d21acec7712e4cc09) Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
+54
@@ -0,0 +1,54 @@
|
|||||||
|
From 50a2997b256e0e0ef7a46fae133f56f60fce539c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 9 Jan 2017 13:34:23 +0000
|
||||||
|
Subject: [PATCH] pppoe: include netinet/in.h before linux/in.h
|
||||||
|
|
||||||
|
This fixes builds with newer kernels. Basically, <netinet/in.h> needs to be
|
||||||
|
included before <linux/in.h> otherwise the earlier, unaware of the latter,
|
||||||
|
tries to redefine symbols and structures. Also, <linux/if_pppox.h> doesn't work
|
||||||
|
alone anymore, since it pulls the headers in the wrong order, so we better
|
||||||
|
include <netinet/in.h> early.
|
||||||
|
|
||||||
|
Upstream-Status: Backport
|
||||||
|
[https://github.com/paulusmack/ppp/commit/50a2997b256e0e0ef7a46fae133f56f60fce539c]
|
||||||
|
|
||||||
|
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||||
|
---
|
||||||
|
pppd/plugins/rp-pppoe/pppoe.h | 7 ++++---
|
||||||
|
1 file changed, 4 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/pppd/plugins/rp-pppoe/pppoe.h b/pppd/plugins/rp-pppoe/pppoe.h
|
||||||
|
index 9ab2eee..c4aaa6e 100644
|
||||||
|
--- a/pppd/plugins/rp-pppoe/pppoe.h
|
||||||
|
+++ b/pppd/plugins/rp-pppoe/pppoe.h
|
||||||
|
@@ -47,6 +47,10 @@
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+/* This has to be included before Linux 4.8's linux/in.h
|
||||||
|
+ * gets dragged in. */
|
||||||
|
+#include <netinet/in.h>
|
||||||
|
+
|
||||||
|
/* Ugly header files on some Linux boxes... */
|
||||||
|
#if defined(HAVE_LINUX_IF_H)
|
||||||
|
#include <linux/if.h>
|
||||||
|
@@ -84,8 +88,6 @@ typedef unsigned long UINT32_t;
|
||||||
|
#include <linux/if_ether.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#include <netinet/in.h>
|
||||||
|
-
|
||||||
|
#ifdef HAVE_NETINET_IF_ETHER_H
|
||||||
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -98,7 +100,6 @@ typedef unsigned long UINT32_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
-
|
||||||
|
/* Ethernet frame types according to RFC 2516 */
|
||||||
|
#define ETH_PPPOE_DISCOVERY 0x8863
|
||||||
|
#define ETH_PPPOE_SESSION 0x8864
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
From 3da19af53e2eee2e77b456cfbb9d633b06656d38 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jackie Huang <jackie.huang@windriver.com>
|
|
||||||
Date: Thu, 13 Oct 2016 13:41:43 +0800
|
|
||||||
Subject: [PATCH] ppp: fix building with linux-4.8
|
|
||||||
|
|
||||||
Fix a build error when using the linux-4.8 headers that results in:
|
|
||||||
|
|
||||||
In file included from pppoe.h:87:0,
|
|
||||||
from plugin.c:29:
|
|
||||||
../usr/include/netinet/in.h:211:8: note: originally defined here
|
|
||||||
struct in6_addr
|
|
||||||
^~~~~~~~
|
|
||||||
In file included from ../usr/include/linux/if_pppol2tp.h:20:0,
|
|
||||||
from ../usr/include/linux/if_pppox.h:26,
|
|
||||||
from plugin.c:52:
|
|
||||||
../usr/include/linux/in6.h:49:8: error: redefinition of 'struct sockaddr_in6'
|
|
||||||
struct sockaddr_in6 {
|
|
||||||
^~~~~~~~~~~~
|
|
||||||
|
|
||||||
Upstream-Status: Submitted [1]
|
|
||||||
|
|
||||||
[1] https://github.com/paulusmack/ppp/pull/69
|
|
||||||
|
|
||||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
|
||||||
---
|
|
||||||
pppd/plugins/rp-pppoe/pppoe.h | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/pppd/plugins/rp-pppoe/pppoe.h b/pppd/plugins/rp-pppoe/pppoe.h
|
|
||||||
index 9ab2eee..96d2794 100644
|
|
||||||
--- a/pppd/plugins/rp-pppoe/pppoe.h
|
|
||||||
+++ b/pppd/plugins/rp-pppoe/pppoe.h
|
|
||||||
@@ -84,7 +84,7 @@ typedef unsigned long UINT32_t;
|
|
||||||
#include <linux/if_ether.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#include <netinet/in.h>
|
|
||||||
+#include <linux/in.h>
|
|
||||||
|
|
||||||
#ifdef HAVE_NETINET_IF_ETHER_H
|
|
||||||
#include <sys/types.h>
|
|
||||||
--
|
|
||||||
2.8.3
|
|
||||||
|
|
||||||
@@ -30,7 +30,7 @@ SRC_URI = "http://ppp.samba.org/ftp/ppp/ppp-${PV}.tar.gz \
|
|||||||
file://0001-ppp-Fix-compilation-errors-in-Makefile.patch \
|
file://0001-ppp-Fix-compilation-errors-in-Makefile.patch \
|
||||||
file://ppp@.service \
|
file://ppp@.service \
|
||||||
file://fix-CVE-2015-3310.patch \
|
file://fix-CVE-2015-3310.patch \
|
||||||
file://ppp-fix-building-with-linux-4.8.patch \
|
file://0001-pppoe-include-netinet-in.h-before-linux-in.h.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
SRC_URI_append_libc-musl = "\
|
SRC_URI_append_libc-musl = "\
|
||||||
|
|||||||
Reference in New Issue
Block a user