summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity/ppp
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2015-11-21 00:12:33 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-01-24 09:40:26 +0000
commit68f88a5a88f0e3ecc962fc1b03fec8e7fd98b7e8 (patch)
treea225cdb66908141470e931b432beb6c281d05fb9 /meta/recipes-connectivity/ppp
parent4972eddecde755045ec9598812f8c6c2b4fd243d (diff)
downloadpoky-68f88a5a88f0e3ecc962fc1b03fec8e7fd98b7e8.tar.gz
ppp: Fix build with musl
Therer are assumptions about glibc headers and features which needs to be addressed for musl (From OE-Core rev: 1949b128b87f89a56a2794ad056f2e4f4dbf6a3c) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-connectivity/ppp')
-rw-r--r--meta/recipes-connectivity/ppp/ppp/0001-Fix-build-with-musl.patch163
-rw-r--r--meta/recipes-connectivity/ppp/ppp_2.4.7.bb3
2 files changed, 166 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/ppp/ppp/0001-Fix-build-with-musl.patch b/meta/recipes-connectivity/ppp/ppp/0001-Fix-build-with-musl.patch
new file mode 100644
index 0000000000..763e374488
--- /dev/null
+++ b/meta/recipes-connectivity/ppp/ppp/0001-Fix-build-with-musl.patch
@@ -0,0 +1,163 @@
1From 52a1e41d7541b2c936285844c59bd1be21797860 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 29 May 2015 14:57:05 -0700
4Subject: [PATCH] Fix build with musl
5
6There are several assumption about glibc
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10Upstream-Status: Pending
11
12 include/net/ppp_defs.h | 2 ++
13 pppd/Makefile.linux | 2 +-
14 pppd/magic.h | 6 +++---
15 pppd/plugins/rp-pppoe/config.h | 5 ++++-
16 pppd/plugins/rp-pppoe/plugin.c | 1 -
17 pppd/plugins/rp-pppoe/pppoe-discovery.c | 8 ++++----
18 pppd/plugins/rp-pppoe/pppoe.h | 2 +-
19 pppd/sys-linux.c | 3 ++-
20 8 files changed, 17 insertions(+), 12 deletions(-)
21
22diff --git a/include/net/ppp_defs.h b/include/net/ppp_defs.h
23index b06eda5..dafa36c 100644
24--- a/include/net/ppp_defs.h
25+++ b/include/net/ppp_defs.h
26@@ -38,6 +38,8 @@
27 #ifndef _PPP_DEFS_H_
28 #define _PPP_DEFS_H_
29
30+#include <sys/time.h>
31+
32 /*
33 * The basic PPP frame.
34 */
35diff --git a/pppd/Makefile.linux b/pppd/Makefile.linux
36index 8ab2102..d7e2564 100644
37--- a/pppd/Makefile.linux
38+++ b/pppd/Makefile.linux
39@@ -126,7 +126,7 @@ LIBS += -lcrypt
40 #endif
41
42 ifdef USE_LIBUTIL
43-CFLAGS += -DHAVE_LOGWTMP=1
44+#CFLAGS += -DHAVE_LOGWTMP=1
45 LIBS += -lutil
46 endif
47
48diff --git a/pppd/magic.h b/pppd/magic.h
49index c81213b..9d399e3 100644
50--- a/pppd/magic.h
51+++ b/pppd/magic.h
52@@ -42,8 +42,8 @@
53 * $Id: magic.h,v 1.5 2003/06/11 23:56:26 paulus Exp $
54 */
55
56-void magic_init __P((void)); /* Initialize the magic number generator */
57-u_int32_t magic __P((void)); /* Returns the next magic number */
58+void magic_init (void); /* Initialize the magic number generator */
59+u_int32_t magic (void); /* Returns the next magic number */
60
61 /* Fill buffer with random bytes */
62-void random_bytes __P((unsigned char *buf, int len));
63+void random_bytes (unsigned char *buf, int len);
64diff --git a/pppd/plugins/rp-pppoe/config.h b/pppd/plugins/rp-pppoe/config.h
65index 5703087..fff032e 100644
66--- a/pppd/plugins/rp-pppoe/config.h
67+++ b/pppd/plugins/rp-pppoe/config.h
68@@ -78,8 +78,9 @@
69 #define HAVE_NET_IF_ARP_H 1
70
71 /* Define if you have the <net/ethernet.h> header file. */
72+#ifdef __GLIBC__
73 #define HAVE_NET_ETHERNET_H 1
74-
75+#endif
76 /* Define if you have the <net/if.h> header file. */
77 #define HAVE_NET_IF_H 1
78
79@@ -102,7 +103,9 @@
80 #define HAVE_NETPACKET_PACKET_H 1
81
82 /* Define if you have the <sys/cdefs.h> header file. */
83+#ifdef __GLIBC__
84 #define HAVE_SYS_CDEFS_H 1
85+#endif
86
87 /* Define if you have the <sys/dlpi.h> header file. */
88 /* #undef HAVE_SYS_DLPI_H */
89diff --git a/pppd/plugins/rp-pppoe/plugin.c b/pppd/plugins/rp-pppoe/plugin.c
90index a8c2bb4..ca34d79 100644
91--- a/pppd/plugins/rp-pppoe/plugin.c
92+++ b/pppd/plugins/rp-pppoe/plugin.c
93@@ -46,7 +46,6 @@ static char const RCSID[] =
94 #include <unistd.h>
95 #include <fcntl.h>
96 #include <signal.h>
97-#include <net/ethernet.h>
98 #include <net/if_arp.h>
99 #include <linux/ppp_defs.h>
100 #include <linux/if_pppox.h>
101diff --git a/pppd/plugins/rp-pppoe/pppoe-discovery.c b/pppd/plugins/rp-pppoe/pppoe-discovery.c
102index 3d3bf4e..d42f619 100644
103--- a/pppd/plugins/rp-pppoe/pppoe-discovery.c
104+++ b/pppd/plugins/rp-pppoe/pppoe-discovery.c
105@@ -27,10 +27,6 @@
106 #include <linux/if_packet.h>
107 #endif
108
109-#ifdef HAVE_NET_ETHERNET_H
110-#include <net/ethernet.h>
111-#endif
112-
113 #ifdef HAVE_ASM_TYPES_H
114 #include <asm/types.h>
115 #endif
116@@ -47,6 +43,10 @@
117 #include <net/if_arp.h>
118 #endif
119
120+#ifndef __GLIBC__
121+#define error(x...) fprintf(stderr, x)
122+#endif
123+
124 char *xstrdup(const char *s);
125 void usage(void);
126
127diff --git a/pppd/plugins/rp-pppoe/pppoe.h b/pppd/plugins/rp-pppoe/pppoe.h
128index 9ab2eee..75b9004 100644
129--- a/pppd/plugins/rp-pppoe/pppoe.h
130+++ b/pppd/plugins/rp-pppoe/pppoe.h
131@@ -92,7 +92,7 @@ typedef unsigned long UINT32_t;
132 #ifdef HAVE_SYS_SOCKET_H
133 #include <sys/socket.h>
134 #endif
135-#ifndef HAVE_SYS_DLPI_H
136+#if !defined HAVE_SYS_DLPI_H && defined HAVE_NET_ETHERNET_H
137 #include <netinet/if_ether.h>
138 #endif
139 #endif
140diff --git a/pppd/sys-linux.c b/pppd/sys-linux.c
141index a105505..49b0273 100644
142--- a/pppd/sys-linux.c
143+++ b/pppd/sys-linux.c
144@@ -112,7 +112,7 @@
145 #include <linux/types.h>
146 #include <linux/if.h>
147 #include <linux/if_arp.h>
148-#include <linux/route.h>
149+/* #include <linux/route.h> */
150 #include <linux/if_ether.h>
151 #endif
152 #include <netinet/in.h>
153@@ -145,6 +145,7 @@
154 #endif
155
156 #ifdef INET6
157+#include <net/route.h>
158 #ifndef _LINUX_IN6_H
159 /*
160 * This is in linux/include/net/ipv6.h.
161--
1622.1.4
163
diff --git a/meta/recipes-connectivity/ppp/ppp_2.4.7.bb b/meta/recipes-connectivity/ppp/ppp_2.4.7.bb
index 5f06034727..4437b5c519 100644
--- a/meta/recipes-connectivity/ppp/ppp_2.4.7.bb
+++ b/meta/recipes-connectivity/ppp/ppp_2.4.7.bb
@@ -32,6 +32,9 @@ SRC_URI = "http://ppp.samba.org/ftp/ppp/ppp-${PV}.tar.gz \
32 file://fix-CVE-2015-3310.patch \ 32 file://fix-CVE-2015-3310.patch \
33" 33"
34 34
35SRC_URI_append_libc-musl = "\
36 file://0001-Fix-build-with-musl.patch \
37"
35SRC_URI[md5sum] = "78818f40e6d33a1d1de68a1551f6595a" 38SRC_URI[md5sum] = "78818f40e6d33a1d1de68a1551f6595a"
36SRC_URI[sha256sum] = "02e0a3dd3e4799e33103f70ec7df75348c8540966ee7c948e4ed8a42bbccfb30" 39SRC_URI[sha256sum] = "02e0a3dd3e4799e33103f70ec7df75348c8540966ee7c948e4ed8a42bbccfb30"
37 40