summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorChris Packham <judge.packham@gmail.com>2021-11-03 08:28:10 (GMT)
committerChris Packham <judge.packham@gmail.com>2021-11-16 09:11:03 (GMT)
commitc55c826dc09c490fbb9463d52a5450d3635ff456 (patch)
tree831d4d05e80f6907747333783ba9274a44053995 /packages
parentfac5020ae0163c754939ff1c1f7e4d0fe547ae65 (diff)
strace: add 5.14
https://lists.strace.io/pipermail/strace-devel/2021-September/010674.html Bring in upstream patch to deal with removal of linux/ipx.h in the linux 5.15. Signed-off-by: Chris Packham <judge.packham@gmail.com>
Diffstat (limited to 'packages')
-rw-r--r--packages/strace/5.14/0001-Avoid-relying-on-presence-of-ipx.h.patch148
-rw-r--r--packages/strace/5.14/chksum4
-rw-r--r--packages/strace/5.14/version.desc0
3 files changed, 152 insertions, 0 deletions
diff --git a/packages/strace/5.14/0001-Avoid-relying-on-presence-of-ipx.h.patch b/packages/strace/5.14/0001-Avoid-relying-on-presence-of-ipx.h.patch
new file mode 100644
index 0000000..93955eb
--- /dev/null
+++ b/packages/strace/5.14/0001-Avoid-relying-on-presence-of-ipx.h.patch
@@ -0,0 +1,148 @@
+From d8eb6a06192d982977b3ff12b6d1ca69beaa7bb3 Mon Sep 17 00:00:00 2001
+From: Eugene Syromyatnikov <evgsyr@gmail.com>
+Date: Wed, 3 Nov 2021 00:48:59 +0100
+Subject: [PATCH] Avoid relying on presence of ipx.h
+
+After Linux has broken UAPI in commit v5.15-rc1~157^2~207, it is well
+possible that neither kernel nor libc (such as musl, for example)
+provides an IPX-related header. Avoid relying on its presence
+in the strace's code and conditionalise the relevant checks in the tests.
+
+* configure.ac (AC_CHECK_HEADERS): Add linux/ipx.h.
+* src/net.c: Remove <netipx/ipx.h>/<linux/ipx.h> includes.
+* src/sockaddr.c: Likewise.
+(IPX_NODE_LEN): New macro constant.
+(struct sockaddr_ipx): New type definition.
+* src/xlat/sock_ipx_options.in (IPX_TYPE): Provide a fallback value.
+* tests/net-sockaddr.c [!HAVE_LINUX_IPX_H]: Do not include
+<linux/ipx.h>.
+[!HAVE_LINUX_IPX_H && HAVE_NETIPX_IPX_H]: Include <netipx/ipx.h>.
+[!(HAVE_LINUX_IPX_H || defined HAVE_NETIPX_IPX_H)] (check_ipx): Do not
+define.
+(main) [!(HAVE_LINUX_IPX_H || defined HAVE_NETIPX_IPX_H)]: Do not call
+check_ipx.
+
+Closes: https://github.com/strace/strace/issues/201
+---
+ configure.ac | 1 +
+ src/net.c | 5 -----
+ src/sockaddr.c | 16 ++++++++++------
+ src/xlat/sock_ipx_options.in | 2 +-
+ tests/net-sockaddr.c | 10 +++++++++-
+ 5 files changed, 21 insertions(+), 13 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 2771c0f82..3c7fcb91e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -423,6 +423,7 @@ AC_CHECK_HEADERS(m4_normalize([
+ elf.h
+ gcov.h
+ iconv.h
++ linux/ipx.h
+ mqueue.h
+ netinet/sctp.h
+ netipx/ipx.h
+diff --git a/src/net.c b/src/net.c
+index b23911a97..bbc52e15f 100644
+--- a/src/net.c
++++ b/src/net.c
+@@ -28,11 +28,6 @@
+ #include <arpa/inet.h>
+ #include <net/if.h>
+ #include <asm/types.h>
+-#ifdef HAVE_NETIPX_IPX_H
+-# include <netipx/ipx.h>
+-#else
+-# include <linux/ipx.h>
+-#endif
+
+ #include <linux/ip_vs.h>
+ #include "netlink.h"
+diff --git a/src/sockaddr.c b/src/sockaddr.c
+index 8b2b0afaf..66aa04d59 100644
+--- a/src/sockaddr.c
++++ b/src/sockaddr.c
+@@ -24,12 +24,6 @@
+ #include <linux/if_ether.h>
+ #include <linux/x25.h>
+
+-#ifdef HAVE_NETIPX_IPX_H
+-# include <netipx/ipx.h>
+-#else
+-# include <linux/ipx.h>
+-#endif
+-
+ #include "xlat/addrfams.h"
+ #include "xlat/arp_hardware_types.h"
+ #include "xlat/ethernet_protocols.h"
+@@ -42,6 +36,16 @@
+
+ #define SIZEOF_SA_FAMILY sizeof_field(struct sockaddr, sa_family)
+
++#define IPX_NODE_LEN 6
++struct sockaddr_ipx {
++ uint16_t sipx_family;
++ uint16_t sipx_port;
++ uint32_t sipx_network;
++ unsigned char sipx_node[IPX_NODE_LEN];
++ uint8_t sipx_type;
++ unsigned char sipx_zero;
++};
++
+ const size_t arp_hardware_types_size = ARRAY_SIZE(arp_hardware_types) - 1;
+ const size_t ethernet_protocols_size = ARRAY_SIZE(ethernet_protocols) - 1;
+
+diff --git a/src/xlat/sock_ipx_options.in b/src/xlat/sock_ipx_options.in
+index eba97fd71..b09be117e 100644
+--- a/src/xlat/sock_ipx_options.in
++++ b/src/xlat/sock_ipx_options.in
+@@ -1 +1 @@
+-IPX_TYPE
++IPX_TYPE 1
+diff --git a/tests/net-sockaddr.c b/tests/net-sockaddr.c
+index f1f9b01cd..c8049fd68 100644
+--- a/tests/net-sockaddr.c
++++ b/tests/net-sockaddr.c
+@@ -24,7 +24,11 @@
+ #include <linux/if_ether.h>
+ #include <linux/if_packet.h>
+ #include <linux/x25.h>
+-#include <linux/ipx.h>
++#if defined HAVE_LINUX_IPX_H
++# include <linux/ipx.h>
++#elif defined HAVE_NETIPX_IPX_H
++# include <netipx/ipx.h>
++#endif
+ #ifdef HAVE_BLUETOOTH_BLUETOOTH_H
+ # include <bluetooth/bluetooth.h>
+ # include <bluetooth/hci.h>
+@@ -269,6 +273,7 @@ check_in6(void)
+ printf("connect(-1, %p, %u) = %d EBADF (%m)\n", in6, len, ret);
+ }
+
++#if defined HAVE_LINUX_IPX_H || defined HAVE_NETIPX_IPX_H
+ static void
+ check_ipx(void)
+ {
+@@ -295,6 +300,7 @@ check_ipx(void)
+ c_ipx.sipx_node[4], c_ipx.sipx_node[5],
+ c_ipx.sipx_type, len, ret);
+ }
++#endif /* HAVE_LINUX_IPX_H || defined HAVE_NETIPX_IPX_H */
+
+ /* for a bit more compact AX.25 address definitions */
+ #define AX25_ADDR(c_, s_) \
+@@ -773,7 +779,9 @@ main(void)
+ check_un();
+ check_in();
+ check_in6();
++#if defined HAVE_LINUX_IPX_H || defined HAVE_NETIPX_IPX_H
+ check_ipx();
++#endif
+ check_ax25();
+ check_x25();
+ check_nl();
+--
+2.33.1
+
diff --git a/packages/strace/5.14/chksum b/packages/strace/5.14/chksum
new file mode 100644
index 0000000..4797e24
--- /dev/null
+++ b/packages/strace/5.14/chksum
@@ -0,0 +1,4 @@
+md5 strace-5.14.tar.xz 36c1c17f31855617b7898d2fd5abb9e2
+sha1 strace-5.14.tar.xz 6625b01b18c3940cd926c85e4d1feb10f162973d
+sha256 strace-5.14.tar.xz 901bee6db5e17debad4530dd9ffb4dc9a96c4a656edbe1c3141b7cb307b11e73
+sha512 strace-5.14.tar.xz 3e147521773d900167809db9feeb148e8ba116f90dd634311941ea335eb7bd8b73ab9e641bd2dcfe899ab41c19a841e203dc771ec3000ae01452d22ecdc43c5a
diff --git a/packages/strace/5.14/version.desc b/packages/strace/5.14/version.desc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/strace/5.14/version.desc