* [Buildroot] [PATCH 1/1] package/arptables: fix musl compilation issues
@ 2015-08-02 19:10 Brendan Heading
2015-08-02 20:12 ` Yann E. MORIN
0 siblings, 1 reply; 5+ messages in thread
From: Brendan Heading @ 2015-08-02 19:10 UTC (permalink / raw)
To: buildroot
Fixes http://autobuild.buildroot.net/results/841/841129b8f49df205e1dabc2c2a5be70fa266768b/
Backported two patches from upstream which had solved this problem.
Signed-off-by: Brendan Heading <brendanheading@gmail.com>
---
package/arptables/0002-src-Use-stdint-types.patch | 129 +++++++++++++++++++++
.../0003-src-Remove-support-for-libc5.patch | 64 ++++++++++
2 files changed, 193 insertions(+)
create mode 100644 package/arptables/0002-src-Use-stdint-types.patch
create mode 100644 package/arptables/0003-src-Remove-support-for-libc5.patch
diff --git a/package/arptables/0002-src-Use-stdint-types.patch b/package/arptables/0002-src-Use-stdint-types.patch
new file mode 100644
index 0000000..1c02697
--- /dev/null
+++ b/package/arptables/0002-src-Use-stdint-types.patch
@@ -0,0 +1,129 @@
+From 24957c135eaacd718f3c788285de33d64316b32e Mon Sep 17 00:00:00 2001
+From: Felix Janda <felix.janda@posteo.de>
+Date: Sat, 16 May 2015 10:31:24 +0200
+Subject: [PATCH 1/2] src: Use stdint types
+
+Backport of upstream commit 047f37b1d5d865084a435fd7594b8c5c332ccb8d
+
+Upstream-status: backport
+Signed-off-by: Felix Janda <felix.janda@posteo.de>
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+Signed-off-by: Brendan Heading <brendanheading@gmail.com>
+---
+ arptables.c | 8 ++++----
+ include/arptables.h | 3 ++-
+ include/libarptc/libarptc.h | 7 ++++---
+ libarptc/libarptc.c | 4 ++--
+ libarptc/libarptc_incl.c | 2 +-
+ 5 files changed, 13 insertions(+), 11 deletions(-)
+
+diff --git a/arptables.c b/arptables.c
+index 5535ab2..6d1377f 100644
+--- a/arptables.c
++++ b/arptables.c
+@@ -230,7 +230,7 @@ extern void dump_entries(const arptc_handle_t handle);
+ /etc/protocols */
+ struct pprot {
+ char *name;
+- u_int8_t num;
++ uint8_t num;
+ };
+
+ /* Primitive headers... */
+@@ -925,7 +925,7 @@ mask_to_dotted(const struct in_addr *mask)
+ {
+ int i;
+ static char buf[20];
+- u_int32_t maskaddr, bits;
++ uint32_t maskaddr, bits;
+
+ maskaddr = ntohl(mask->s_addr);
+
+@@ -967,7 +967,7 @@ string_to_number(const char *s, unsigned int min, unsigned int max,
+ }
+
+ static void
+-set_option(unsigned int *options, unsigned int option, u_int16_t *invflg,
++set_option(unsigned int *options, unsigned int option, uint16_t *invflg,
+ int invert)
+ {
+ if (*options & option)
+@@ -1107,7 +1107,7 @@ register_target(struct arptables_target *me)
+ }
+
+ static void
+-print_num(u_int64_t number, unsigned int format)
++print_num(uint64_t number, unsigned int format)
+ {
+ if (format & FMT_KILOMEGAGIGA) {
+ if (number > 99999) {
+diff --git a/include/arptables.h b/include/arptables.h
+index 820b664..e6a6ba6 100644
+--- a/include/arptables.h
++++ b/include/arptables.h
+@@ -1,6 +1,7 @@
+ #ifndef _ARPTABLES_USER_H
+ #define _ARPTABLES_USER_H
+
++#include <stdint.h>
+ #include "arptables_common.h"
+ #include "libarptc/libarptc.h"
+
+@@ -126,7 +127,7 @@ extern char *mask_to_dotted(const struct in_addr *mask);
+
+ extern void parse_hostnetworkmask(const char *name, struct in_addr **addrpp,
+ struct in_addr *maskp, unsigned int *naddrs);
+-extern u_int16_t parse_protocol(const char *s);
++extern uint16_t parse_protocol(const char *s);
+
+ extern int do_command(int argc, char *argv[], char **table,
+ arptc_handle_t *handle);
+diff --git a/include/libarptc/libarptc.h b/include/libarptc/libarptc.h
+index e4f1175..76fbfab 100644
+--- a/include/libarptc/libarptc.h
++++ b/include/libarptc/libarptc.h
+@@ -6,9 +6,10 @@
+ #include <linux/netfilter_arp/arp_tables.h>
+
+ #ifndef ARPT_MIN_ALIGN
+-/* arpt_entry has pointers and u_int64_t's in it, so if you align to
+- it, you'll also align to any crazy matches and targets someone
+- might write */
++/* arpt_entry has pointers and uint64_t's in it, so if you align to
++ * it, you'll also align to any crazy matches and targets someone
++ * might write.
++ */
+ #define ARPT_MIN_ALIGN (__alignof__(struct arpt_entry))
+ #endif
+
+diff --git a/libarptc/libarptc.c b/libarptc/libarptc.c
+index 2dcaaef..701bae0 100644
+--- a/libarptc/libarptc.c
++++ b/libarptc/libarptc.c
+@@ -256,8 +256,8 @@ unconditional(const struct arpt_arp *arp)
+ {
+ unsigned int i;
+
+- for (i = 0; i < sizeof(*arp)/sizeof(u_int32_t); i++)
+- if (((u_int32_t *)arp)[i])
++ for (i = 0; i < sizeof(*arp) / sizeof(uint32_t); i++)
++ if (((uint32_t *)arp)[i])
+ return 0;
+
+ return 1;
+diff --git a/libarptc/libarptc_incl.c b/libarptc/libarptc_incl.c
+index 2fa3d43..b41fcb2 100644
+--- a/libarptc/libarptc_incl.c
++++ b/libarptc/libarptc_incl.c
+@@ -1706,7 +1706,7 @@ TC_COMMIT(TC_HANDLE_T *handle)
+ /* Kernel will think that pointer should be 64-bits, and get
+ padding. So we accomodate here (assumption: alignment of
+ `counters' is on 64-bit boundary). */
+- u_int64_t *kernptr = (u_int64_t *)&newcounters->counters;
++ uint64_t *kernptr = (uint64_t *)&newcounters->counters;
+ if ((unsigned long)&newcounters->counters % 8 != 0) {
+ fprintf(stderr,
+ "counters alignment incorrect! Mail rusty!\n");
+--
+2.4.3
+
diff --git a/package/arptables/0003-src-Remove-support-for-libc5.patch b/package/arptables/0003-src-Remove-support-for-libc5.patch
new file mode 100644
index 0000000..15e893d
--- /dev/null
+++ b/package/arptables/0003-src-Remove-support-for-libc5.patch
@@ -0,0 +1,64 @@
+From 5f1379ff68bfedb56309527bee266a591b27a19e Mon Sep 17 00:00:00 2001
+From: Felix Janda <felix.janda@posteo.de>
+Date: Sat, 16 May 2015 10:31:41 +0200
+Subject: [PATCH 2/2] src: Remove support for libc5
+
+Fixes compilation with musl libc
+
+Backport of upstream commit f4ab8f63f11a72f14687a6646d04ae1bae3fa45f
+Upstream status: backport
+Signed-off-by: Felix Janda <felix.janda@posteo.de>
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+Signed-off-by: Brendan Heading <brendanheading@gmail.com>
+---
+ include/libarptc/arpt_kernel_headers.h | 12 ------------
+ libarptc/libarptc.c | 4 ----
+ 2 files changed, 16 deletions(-)
+
+diff --git a/include/libarptc/arpt_kernel_headers.h b/include/libarptc/arpt_kernel_headers.h
+index 442cc54..140e999 100644
+--- a/include/libarptc/arpt_kernel_headers.h
++++ b/include/libarptc/arpt_kernel_headers.h
+@@ -5,7 +5,6 @@
+
+ #include <limits.h>
+
+-#if defined(__GLIBC__) && __GLIBC__ == 2
+ #include <netinet/ip.h>
+ #include <netinet/in.h>
+ #include <netinet/ip_icmp.h>
+@@ -14,16 +13,5 @@
+ #include <netinet/ether.h>
+ #include <net/if.h>
+ #include <sys/types.h>
+-#else
+-#include <sys/socket.h>
+-#include <linux/ip.h>
+-#include <linux/in.h>
+-#include <linux/if.h>
+-#include <linux/icmp.h>
+-#include <linux/tcp.h>
+-#include <linux/udp.h>
+-#include <linux/types.h>
+-#include <linux/in6.h>
+-#endif
+
+ #endif
+diff --git a/libarptc/libarptc.c b/libarptc/libarptc.c
+index 701bae0..9c5a5b0 100644
+--- a/libarptc/libarptc.c
++++ b/libarptc/libarptc.c
+@@ -23,10 +23,6 @@
+ #define inline
+ #endif
+
+-#if !defined(__GLIBC__) || (__GLIBC__ < 2)
+-typedef unsigned int socklen_t;
+-#endif
+-
+ #include "libarptc/libarptc.h"
+
+ #define IP_VERSION 4
+--
+2.4.3
+
--
2.4.3
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] package/arptables: fix musl compilation issues
2015-08-02 19:10 [Buildroot] [PATCH 1/1] package/arptables: fix musl compilation issues Brendan Heading
@ 2015-08-02 20:12 ` Yann E. MORIN
2015-08-02 21:28 ` Brendan Heading
0 siblings, 1 reply; 5+ messages in thread
From: Yann E. MORIN @ 2015-08-02 20:12 UTC (permalink / raw)
To: buildroot
Brendan, All,
On 2015-08-02 20:10 +0100, Brendan Heading spake thusly:
> Fixes http://autobuild.buildroot.net/results/841/841129b8f49df205e1dabc2c2a5be70fa266768b/
>
> Backported two patches from upstream which had solved this problem.
>
> Signed-off-by: Brendan Heading <brendanheading@gmail.com>
> ---
> package/arptables/0002-src-Use-stdint-types.patch | 129 +++++++++++++++++++++
> .../0003-src-Remove-support-for-libc5.patch | 64 ++++++++++
> 2 files changed, 193 insertions(+)
> create mode 100644 package/arptables/0002-src-Use-stdint-types.patch
> create mode 100644 package/arptables/0003-src-Remove-support-for-libc5.patch
>
> diff --git a/package/arptables/0002-src-Use-stdint-types.patch b/package/arptables/0002-src-Use-stdint-types.patch
> new file mode 100644
> index 0000000..1c02697
> --- /dev/null
> +++ b/package/arptables/0002-src-Use-stdint-types.patch
> @@ -0,0 +1,129 @@
> +From 24957c135eaacd718f3c788285de33d64316b32e Mon Sep 17 00:00:00 2001
> +From: Felix Janda <felix.janda@posteo.de>
> +Date: Sat, 16 May 2015 10:31:24 +0200
> +Subject: [PATCH 1/2] src: Use stdint types
> +
> +Backport of upstream commit 047f37b1d5d865084a435fd7594b8c5c332ccb8d
> +
> +Upstream-status: backport
> +Signed-off-by: Felix Janda <felix.janda@posteo.de>
> +Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
> +Signed-off-by: Brendan Heading <brendanheading@gmail.com>
> +---
> + arptables.c | 8 ++++----
> + include/arptables.h | 3 ++-
> + include/libarptc/libarptc.h | 7 ++++---
> + libarptc/libarptc.c | 4 ++--
> + libarptc/libarptc_incl.c | 2 +-
> + 5 files changed, 13 insertions(+), 11 deletions(-)
> +
[--SNIP--]
> +diff --git a/include/arptables.h b/include/arptables.h
> +index 820b664..e6a6ba6 100644
> +--- a/include/arptables.h
> ++++ b/include/arptables.h
> +@@ -1,6 +1,7 @@
> + #ifndef _ARPTABLES_USER_H
> + #define _ARPTABLES_USER_H
> +
> ++#include <stdint.h>
> + #include "arptables_common.h"
> + #include "libarptc/libarptc.h"
> +
> +@@ -126,7 +127,7 @@ extern char *mask_to_dotted(const struct in_addr *mask);
> +
> + extern void parse_hostnetworkmask(const char *name, struct in_addr **addrpp,
> + struct in_addr *maskp, unsigned int *naddrs);
> +-extern u_int16_t parse_protocol(const char *s);
> ++extern uint16_t parse_protocol(const char *s);
> +
> + extern int do_command(int argc, char *argv[], char **table,
> + arptc_handle_t *handle);
This is not exactly the patch that was applied by upstream:
http://git.netfilter.org/arptables/commit/?id=047f37b1d5d865084a435fd7594b8c5c332ccb8d
The patch you provide is missing two hunks which are upstream...
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] package/arptables: fix musl compilation issues
2015-08-02 20:12 ` Yann E. MORIN
@ 2015-08-02 21:28 ` Brendan Heading
2015-08-02 21:33 ` Yann E. MORIN
0 siblings, 1 reply; 5+ messages in thread
From: Brendan Heading @ 2015-08-02 21:28 UTC (permalink / raw)
To: buildroot
> This is not exactly the patch that was applied by upstream:
> http://git.netfilter.org/arptables/commit/?id=047f37b1d5d865084a435fd7594b8c5c332ccb8d
>
> The patch you provide is missing two hunks which are upstream...
Yann,
That is correct - I had to rebase the patch against the 0.14 release
(it did not apply cleanly).
Brendan
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] package/arptables: fix musl compilation issues
2015-08-02 21:28 ` Brendan Heading
@ 2015-08-02 21:33 ` Yann E. MORIN
2015-08-02 21:36 ` Brendan Heading
0 siblings, 1 reply; 5+ messages in thread
From: Yann E. MORIN @ 2015-08-02 21:33 UTC (permalink / raw)
To: buildroot
Brendan, All,
On 2015-08-02 22:28 +0100, Brendan Heading spake thusly:
> > This is not exactly the patch that was applied by upstream:
> > http://git.netfilter.org/arptables/commit/?id=047f37b1d5d865084a435fd7594b8c5c332ccb8d
> > The patch you provide is missing two hunks which are upstream...
> That is correct - I had to rebase the patch against the 0.14 release
> (it did not apply cleanly).
Ah, OK, you should have said so, then.
Care to resend with that comment added to the patch' commit log, plesae?
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH 1/1] package/arptables: fix musl compilation issues
2015-08-02 21:33 ` Yann E. MORIN
@ 2015-08-02 21:36 ` Brendan Heading
0 siblings, 0 replies; 5+ messages in thread
From: Brendan Heading @ 2015-08-02 21:36 UTC (permalink / raw)
To: buildroot
> Ah, OK, you should have said so, then.
>
> Care to resend with that comment added to the patch' commit log, plesae?
Sure. In my defence, I'd always assumed the term "backport" to mean
the backported feature/fix plus whatever changes were needed to make
it work on the backported version. But I appreciate that clarity is
important. :)
regards
Brendan
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-08-02 21:36 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-02 19:10 [Buildroot] [PATCH 1/1] package/arptables: fix musl compilation issues Brendan Heading
2015-08-02 20:12 ` Yann E. MORIN
2015-08-02 21:28 ` Brendan Heading
2015-08-02 21:33 ` Yann E. MORIN
2015-08-02 21:36 ` Brendan Heading
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.