commit 9f69eb2
Michael Forney
·
2026-04-02 06:14:48 +0000 UTC
parent d276038
strace: Update to 6.19
16 files changed,
+228,
-81
+1,
-1
1@@ -31,7 +31,7 @@
2 /source-sans-3.028R.tar.gz
3 /source-serif-4.004R.tar.gz
4 /src.tar.gz
5-/strace-6.12.tar.xz
6+/strace-6.19.tar.xz
7 /sys.tar.gz
8 /syslinux-6.03.tar.xz
9 /terminus-font-4.49.1.tar.gz
+63,
-11
1@@ -7,7 +7,7 @@
2 #define ASM_SIGRTMIN 32
3 /* #undef AVR32 */
4 /* #undef BFIN */
5-#define COPYRIGHT_YEAR "2024"
6+#define COPYRIGHT_YEAR "2026"
7 /* #undef CSKY */
8 #define ENABLE_ARM_OABI 0
9 /* #undef ENABLE_SECONTEXT */
10@@ -172,7 +172,10 @@
11 #define HAVE_STRUCT_BPF_MAP_INFO_BTF_ID 1
12 #define HAVE_STRUCT_BPF_MAP_INFO_BTF_KEY_TYPE_ID 1
13 #define HAVE_STRUCT_BPF_MAP_INFO_BTF_VALUE_TYPE_ID 1
14+#define HAVE_STRUCT_BPF_MAP_INFO_BTF_VMLINUX_ID 1
15 #define HAVE_STRUCT_BPF_MAP_INFO_BTF_VMLINUX_VALUE_TYPE_ID 1
16+/* #undef HAVE_STRUCT_BPF_MAP_INFO_HASH */
17+/* #undef HAVE_STRUCT_BPF_MAP_INFO_HASH_SIZE */
18 #define HAVE_STRUCT_BPF_MAP_INFO_ID 1
19 #define HAVE_STRUCT_BPF_MAP_INFO_IFINDEX 1
20 #define HAVE_STRUCT_BPF_MAP_INFO_KEY_SIZE 1
21@@ -180,10 +183,11 @@
22 #define HAVE_STRUCT_BPF_MAP_INFO_MAP_FLAGS 1
23 #define HAVE_STRUCT_BPF_MAP_INFO_MAX_ENTRIES 1
24 #define HAVE_STRUCT_BPF_MAP_INFO_NAME 1
25-/* #undef HAVE_STRUCT_BPF_MAP_INFO_PAD */
26 #define HAVE_STRUCT_BPF_MAP_INFO_TYPE 1
27 #define HAVE_STRUCT_BPF_MAP_INFO_VALUE_SIZE 1
28 #define HAVE_STRUCT_BPF_PROG_INFO 1
29+#define HAVE_STRUCT_BPF_PROG_INFO_ATTACH_BTF_ID 1
30+#define HAVE_STRUCT_BPF_PROG_INFO_ATTACH_BTF_OBJ_ID 1
31 #define HAVE_STRUCT_BPF_PROG_INFO_BTF_ID 1
32 #define HAVE_STRUCT_BPF_PROG_INFO_CREATED_BY_UID 1
33 #define HAVE_STRUCT_BPF_PROG_INFO_FUNC_INFO 1
34@@ -224,11 +228,12 @@
35 #define HAVE_STRUCT_KBDIACRUC 1
36 #define HAVE_STRUCT_KVM_CPUID2 1
37 #define HAVE_STRUCT_KVM_REGS 1
38+#define HAVE_STRUCT_KVM_RUN_FLAGS 1
39+#define HAVE_STRUCT_KVM_RUN_IMMEDIATE_EXIT 1
40 #define HAVE_STRUCT_KVM_SREGS 1
41 #define HAVE_STRUCT_KVM_USERSPACE_MEMORY_REGION 1
42 #define HAVE_STRUCT_MMSGHDR 1
43 /* #undef HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS */
44-#define HAVE_STRUCT_PTRACE_SYSCALL_INFO 1
45 /* #undef HAVE_STRUCT_PT_ALL_USER_REGS */
46 #define HAVE_STRUCT_SIGCONTEXT 1
47 #define HAVE_STRUCT_SOCKADDR_ALG_NEW 1
48@@ -265,7 +270,6 @@
49 #define HAVE_STRUCT___KERNEL_SOCK_TIMEVAL 1
50 #define HAVE_STRUCT___KERNEL_TIMESPEC 1
51 #define HAVE_STRUCT___OLD_KERNEL_STAT 1
52-#define HAVE_STRUCT___PTRACE_SYSCALL_INFO 1
53 #define HAVE_SYNC_FILE_RANGE 1
54 #define HAVE_SYS_EVENTFD_H 1
55 #define HAVE_SYS_FANOTIFY_H 1
56@@ -292,18 +296,29 @@
57 #define HAVE_UNION_BPF_ATTR_BPF_FD 1
58 #define HAVE_UNION_BPF_ATTR_BTF 1
59 #define HAVE_UNION_BPF_ATTR_BTF_FD 1
60+#define HAVE_UNION_BPF_ATTR_BTF_FLAGS 1
61 #define HAVE_UNION_BPF_ATTR_BTF_ID 1
62 #define HAVE_UNION_BPF_ATTR_BTF_KEY_TYPE_ID 1
63 #define HAVE_UNION_BPF_ATTR_BTF_LOG_BUF 1
64 #define HAVE_UNION_BPF_ATTR_BTF_LOG_LEVEL 1
65 #define HAVE_UNION_BPF_ATTR_BTF_LOG_SIZE 1
66+#define HAVE_UNION_BPF_ATTR_BTF_LOG_TRUE_SIZE 1
67 #define HAVE_UNION_BPF_ATTR_BTF_SIZE 1
68+#define HAVE_UNION_BPF_ATTR_BTF_TOKEN_FD 1
69 #define HAVE_UNION_BPF_ATTR_BTF_VALUE_TYPE_ID 1
70 #define HAVE_UNION_BPF_ATTR_BTF_VMLINUX_VALUE_TYPE_ID 1
71+#define HAVE_UNION_BPF_ATTR_CORE_RELOS 1
72+#define HAVE_UNION_BPF_ATTR_CORE_RELO_CNT 1
73+#define HAVE_UNION_BPF_ATTR_CORE_RELO_REC_SIZE 1
74 /* #undef HAVE_UNION_BPF_ATTR_DUMMY */
75 #define HAVE_UNION_BPF_ATTR_ENABLE_STATS_TYPE 1
76+/* #undef HAVE_UNION_BPF_ATTR_EXCL_PROG_HASH */
77+/* #undef HAVE_UNION_BPF_ATTR_EXCL_PROG_HASH_SIZE */
78 #define HAVE_UNION_BPF_ATTR_EXPECTED_ATTACH_TYPE 1
79+#define HAVE_UNION_BPF_ATTR_EXPECTED_REVISION 1
80 #define HAVE_UNION_BPF_ATTR_FD_ARRAY 1
81+/* #undef HAVE_UNION_BPF_ATTR_FD_ARRAY_CNT */
82+/* #undef HAVE_UNION_BPF_ATTR_FD_BY_ID_TOKEN_FD */
83 #define HAVE_UNION_BPF_ATTR_FILE_FLAGS 1
84 #define HAVE_UNION_BPF_ATTR_FLAGS 1
85 #define HAVE_UNION_BPF_ATTR_FUNC_INFO 1
86@@ -319,6 +334,7 @@
87 #define HAVE_UNION_BPF_ATTR_ITER_CREATE_LINK_FD 1
88 #define HAVE_UNION_BPF_ATTR_KERN_VERSION 1
89 #define HAVE_UNION_BPF_ATTR_KEY 1
90+/* #undef HAVE_UNION_BPF_ATTR_KEYRING_ID */
91 #define HAVE_UNION_BPF_ATTR_KEY_SIZE 1
92 #define HAVE_UNION_BPF_ATTR_LICENSE 1
93 #define HAVE_UNION_BPF_ATTR_LINE_INFO 1
94@@ -329,15 +345,28 @@
95 /* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_BPF_COOKIE */
96 /* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_CNT */
97 /* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_COOKIES */
98+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_EXPECTED_REVISION */
99 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_FLAGS 1
100+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_HOOKNUM */
101 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_ITER_INFO 1
102 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_ITER_INFO_LEN 1
103 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_KPROBE_MULTI 1
104+#define HAVE_UNION_BPF_ATTR_LINK_CREATE_NETFILTER 1
105+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_OFFSETS */
106+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_PATH */
107 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_PERF_EVENT 1
108+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_PF */
109+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_PID */
110+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_PRIORITY */
111 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_PROG_FD 1
112+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_REF_CTR_OFFSETS */
113+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_RELATIVE_FD */
114+/* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_RELATIVE_ID */
115 /* #undef HAVE_UNION_BPF_ATTR_LINK_CREATE_SYMS */
116 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_TARGET_BTF_ID 1
117 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_TARGET_FD 1
118+#define HAVE_UNION_BPF_ATTR_LINK_CREATE_TARGET_IFINDEX 1
119+#define HAVE_UNION_BPF_ATTR_LINK_CREATE_UPROBE_MULTI 1
120 #define HAVE_UNION_BPF_ATTR_LINK_DETACH_LINK_FD 1
121 #define HAVE_UNION_BPF_ATTR_LINK_ID 1
122 #define HAVE_UNION_BPF_ATTR_LINK_UPDATE_FLAGS 1
123@@ -347,19 +376,20 @@
124 #define HAVE_UNION_BPF_ATTR_LOG_BUF 1
125 #define HAVE_UNION_BPF_ATTR_LOG_LEVEL 1
126 #define HAVE_UNION_BPF_ATTR_LOG_SIZE 1
127+#define HAVE_UNION_BPF_ATTR_LOG_TRUE_SIZE 1
128 #define HAVE_UNION_BPF_ATTR_MAP_EXTRA 1
129 #define HAVE_UNION_BPF_ATTR_MAP_FD 1
130 #define HAVE_UNION_BPF_ATTR_MAP_FLAGS 1
131 #define HAVE_UNION_BPF_ATTR_MAP_ID 1
132 #define HAVE_UNION_BPF_ATTR_MAP_IFINDEX 1
133 #define HAVE_UNION_BPF_ATTR_MAP_NAME 1
134+#define HAVE_UNION_BPF_ATTR_MAP_TOKEN_FD 1
135 #define HAVE_UNION_BPF_ATTR_MAP_TYPE 1
136 #define HAVE_UNION_BPF_ATTR_MAX_ENTRIES 1
137 #define HAVE_UNION_BPF_ATTR_NEXT_ID 1
138 #define HAVE_UNION_BPF_ATTR_NEXT_KEY 1
139 #define HAVE_UNION_BPF_ATTR_NUMA_NODE 1
140 #define HAVE_UNION_BPF_ATTR_OPEN_FLAGS 1
141-/* #undef HAVE_UNION_BPF_ATTR_PAD */
142 #define HAVE_UNION_BPF_ATTR_PATHNAME 1
143 #define HAVE_UNION_BPF_ATTR_PATH_FD 1
144 #define HAVE_UNION_BPF_ATTR_PROG_BIND_MAP_FLAGS 1
145@@ -370,20 +400,36 @@
146 #define HAVE_UNION_BPF_ATTR_PROG_ID 1
147 #define HAVE_UNION_BPF_ATTR_PROG_IFINDEX 1
148 #define HAVE_UNION_BPF_ATTR_PROG_NAME 1
149+/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_PROG_FD */
150+/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_BUF */
151+/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_BUF_LEN */
152+/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_ID */
153+#define HAVE_UNION_BPF_ATTR_PROG_TOKEN_FD 1
154 #define HAVE_UNION_BPF_ATTR_PROG_TYPE 1
155 #define HAVE_UNION_BPF_ATTR_QUERY_ATTACH_FLAGS 1
156 #define HAVE_UNION_BPF_ATTR_QUERY_ATTACH_TYPE 1
157+/* #undef HAVE_UNION_BPF_ATTR_QUERY_DUMMY */
158+#define HAVE_UNION_BPF_ATTR_QUERY_LINK_ATTACH_FLAGS 1
159+#define HAVE_UNION_BPF_ATTR_QUERY_LINK_IDS 1
160+#define HAVE_UNION_BPF_ATTR_QUERY_PROG_ATTACH_FLAGS 1
161 #define HAVE_UNION_BPF_ATTR_QUERY_PROG_CNT 1
162 #define HAVE_UNION_BPF_ATTR_QUERY_PROG_IDS 1
163 #define HAVE_UNION_BPF_ATTR_QUERY_QUERY_FLAGS 1
164+#define HAVE_UNION_BPF_ATTR_QUERY_REVISION 1
165 #define HAVE_UNION_BPF_ATTR_QUERY_TARGET_FD 1
166+#define HAVE_UNION_BPF_ATTR_QUERY_TARGET_IFINDEX 1
167 #define HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_COOKIE 1
168 /* #undef HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_DUMMY */
169 #define HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_NAME 1
170 #define HAVE_UNION_BPF_ATTR_RAW_TRACEPOINT_PROG_FD 1
171+#define HAVE_UNION_BPF_ATTR_RELATIVE_FD 1
172+#define HAVE_UNION_BPF_ATTR_RELATIVE_ID 1
173 #define HAVE_UNION_BPF_ATTR_REPLACE_BPF_FD 1
174+/* #undef HAVE_UNION_BPF_ATTR_SIGNATURE */
175+/* #undef HAVE_UNION_BPF_ATTR_SIGNATURE_SIZE */
176 #define HAVE_UNION_BPF_ATTR_START_ID 1
177 #define HAVE_UNION_BPF_ATTR_TARGET_FD 1
178+#define HAVE_UNION_BPF_ATTR_TARGET_IFINDEX 1
179 #define HAVE_UNION_BPF_ATTR_TASK_FD_QUERY_BUF 1
180 #define HAVE_UNION_BPF_ATTR_TASK_FD_QUERY_BUF_LEN 1
181 #define HAVE_UNION_BPF_ATTR_TASK_FD_QUERY_FD 1
182@@ -412,6 +458,7 @@
183 #define HAVE_UNION_BPF_ATTR_TOKEN_CREATE_FLAGS 1
184 #define HAVE_UNION_BPF_ATTR_VALUE 1
185 #define HAVE_UNION_BPF_ATTR_VALUE_SIZE 1
186+#define HAVE_UNION_BPF_ATTR_VALUE_TYPE_BTF_OBJ_FD 1
187 #define HAVE_UNISTD_H 1
188 /* #undef HAVE_USTAT_H */
189 #define HAVE_WCHAR_H 1
190@@ -441,10 +488,10 @@
191 #define PACKAGE "strace"
192 #define PACKAGE_BUGREPORT "strace-devel@lists.strace.io"
193 #define PACKAGE_NAME "strace"
194-#define PACKAGE_STRING "strace 6.12"
195+#define PACKAGE_STRING "strace 6.19"
196 #define PACKAGE_TARNAME "strace"
197 #define PACKAGE_URL "https://strace.io"
198-#define PACKAGE_VERSION "6.12"
199+#define PACKAGE_VERSION "6.19"
200 /* #undef POWERPC */
201 /* #undef POWERPC64 */
202 /* #undef POWERPC64LE */
203@@ -459,11 +506,11 @@
204 #define SIZEOF_OFF_T 8
205 #define SIZEOF_STRUCT_I64_I32 16
206 #define SIZEOF_STRUCT_MSQID64_DS 120
207-#define SLM_MANPAGE_DATE "2022-01-01"
208+#define SLM_MANPAGE_DATE "2025-07-02"
209 /* #undef SPARC */
210 /* #undef SPARC64 */
211 #define STDC_HEADERS 1
212-#define STRACE_MANPAGE_DATE "2024-06-30"
213+#define STRACE_MANPAGE_DATE "2025-11-13"
214 /* #undef TILE */
215 /* #undef USE_DEMANGLE */
216 /* #undef USE_LIBDW */
217@@ -510,6 +557,9 @@
218 #ifndef __STDC_WANT_IEC_60559_DFP_EXT__
219 # define __STDC_WANT_IEC_60559_DFP_EXT__ 1
220 #endif
221+#ifndef __STDC_WANT_IEC_60559_EXT__
222+# define __STDC_WANT_IEC_60559_EXT__ 1
223+#endif
224 #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
225 # define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
226 #endif
227@@ -529,7 +579,7 @@
228 /* # undef _XOPEN_SOURCE */
229 #endif
230 /* #undef USE_UNWINDER */
231-#define VERSION "6.12"
232+#define VERSION "6.19"
233 #if defined AC_APPLE_UNIVERSAL_BUILD
234 # if defined __BIG_ENDIAN__
235 # define WORDS_BIGENDIAN 1
236@@ -540,7 +590,9 @@
237 # endif
238 #endif
239 /* #undef X32 */
240-#define X86_64 1
241+#ifdef __x86_64__
242+# define X86_64 1
243+#endif
244 /* #undef XTENSA */
245 /* #undef gid_t */
246 /* #undef typeof */
+10,
-3
1@@ -86,6 +86,7 @@ local srcs = paths[[src/(
2 access.c
3 affinity.c
4 aio.c
5+ alarm.c
6 alpha.c
7 basic_filters.c
8 bind.c
9@@ -121,6 +122,7 @@ local srcs = paths[[src/(
10 evdev_mpers.c
11 eventfd.c
12 execve.c
13+ exit.c
14 exitkill.c
15 fadvise.c
16 fallocate.c
17@@ -138,10 +140,12 @@ local srcs = paths[[src/(
18 fetch_struct_stat64.c
19 fetch_struct_statfs.c
20 fetch_struct_xfs_quotastat.c
21+ file_attr.c
22 file_handle.c
23 filter_qualify.c
24 filter_seccomp.c
25 flock.c
26+ fs_0x15_ioctl.c
27 fs_0x94_ioctl.c
28 fs_f_ioctl.c
29 fs_x_ioctl.c
30@@ -170,6 +174,7 @@ local srcs = paths[[src/(
31 io_uring.c
32 ioctl.c
33 ioperm.c
34+ iopl.c
35 ioprio.c
36 ipc.c
37 ipc_msg.c
38@@ -190,6 +195,7 @@ local srcs = paths[[src/(
39 lirc_ioctl.c
40 listen.c
41 listmount.c
42+ listns.c
43 lookup_dcookie.c
44 loop.c
45 lseek.c
46@@ -225,13 +231,13 @@ local srcs = paths[[src/(
47 netlink_smc_diag.c
48 netlink_sock_diag.c
49 netlink_unix_diag.c
50+ nice.c
51 nlattr.c
52 nsfs.c
53 numa.c
54 number_set.c
55 oldstat.c
56 open.c
57- open_tree.c
58 or1k_atomic.c
59 pathtrace.c
60 perf.c
61@@ -306,6 +312,7 @@ local srcs = paths[[src/(
62 seccomp.c
63 seccomp_ioctl.c
64 sendfile.c
65+ set_tid_address.c
66 sg_io_v3.c
67 sg_io_v4.c
68 shutdown.c
69@@ -390,8 +397,8 @@ file('bin/strace', '755', '$outdir/strace')
70
71 build('sed', '$outdir/strace.1', '$srcdir/doc/strace.1.in', {
72 expr={
73- [[-e 's,@STRACE_MANPAGE_DATE@,2024-06-30,']],
74- [[-e 's,@VERSION@,6.12,']],
75+ [[-e 's,@STRACE_MANPAGE_DATE@,2025-11-13,']],
76+ [[-e 's,@VERSION@,6.19,']],
77 [[-e 's,@ENABLE_STACKTRACE_TRUE@,#,']],
78 [[-e 's,@ENABLE_STACKTRACE_FALSE@,,']],
79 [[-e 's,@ENABLE_SECONTEXT_TRUE@,#,']],
1@@ -1,4 +1,4 @@
2-From 79aac49a3d3953b6e62b477bd488c3b7237a5aee Mon Sep 17 00:00:00 2001
3+From 31ffe0d9dfed05dd5524a91a6f0125c87f3d626c Mon Sep 17 00:00:00 2001
4 From: Michael Forney <mforney@mforney.org>
5 Date: Fri, 5 Jul 2019 20:52:24 -0700
6 Subject: [PATCH] Don't return expression in void function
7@@ -8,10 +8,10 @@ Subject: [PATCH] Don't return expression in void function
8 1 file changed, 1 insertion(+), 1 deletion(-)
9
10 diff --git a/src/defs.h b/src/defs.h
11-index 89ec13fc5..465d58139 100644
12+index a22f1c99a..47e1c71f6 100644
13 --- a/src/defs.h
14 +++ b/src/defs.h
15-@@ -824,7 +824,7 @@ extern bool pathtrace_match_set(struct tcb *, struct path_set *,
16+@@ -838,7 +838,7 @@ extern bool pathtrace_match_set(struct tcb *, struct path_set *,
17 static inline void
18 pathtrace_select(const char *path)
19 {
20@@ -21,5 +21,5 @@ index 89ec13fc5..465d58139 100644
21
22 static inline bool
23 --
24-2.44.0
25+2.49.0
26
R pkg/strace/patch/0003-Avoid-pointer-arithmetic-on-void.patch =>
pkg/strace/patch/0002-Avoid-pointer-arithmetic-on-void.patch
+18,
-9
1@@ -1,4 +1,4 @@
2-From c154f9dfaaccabc52af12ccabc86e9d0c6c18ada Mon Sep 17 00:00:00 2001
3+From 1bd3c3baab04866e76014412c839e3f954485207 Mon Sep 17 00:00:00 2001
4 From: Michael Forney <mforney@mforney.org>
5 Date: Sun, 7 Jul 2019 21:25:13 -0700
6 Subject: [PATCH] Avoid pointer arithmetic on `void *`
7@@ -6,10 +6,10 @@ Subject: [PATCH] Avoid pointer arithmetic on `void *`
8 ---
9 src/netlink_smc_diag.c | 4 ++--
10 src/print_timespec.h | 6 ++++--
11- src/sockaddr.c | 4 ++--
12+ src/sockaddr.c | 6 +++---
13 src/tee.c | 2 +-
14 src/ucopy.c | 12 ++++++------
15- 5 files changed, 15 insertions(+), 13 deletions(-)
16+ 5 files changed, 16 insertions(+), 14 deletions(-)
17
18 diff --git a/src/netlink_smc_diag.c b/src/netlink_smc_diag.c
19 index 74e78b966..c3a28a839 100644
20@@ -60,10 +60,19 @@ index dc5f9d10c..87f7ff973 100644
21
22 tprint_array_end();
23 diff --git a/src/sockaddr.c b/src/sockaddr.c
24-index ee1ce8828..c1f9b1740 100644
25+index 874821c60..98220288d 100644
26 --- a/src/sockaddr.c
27 +++ b/src/sockaddr.c
28-@@ -583,7 +583,7 @@ print_sockaddr_data_ll(struct tcb *tcp, const void *const buf,
29+@@ -605,7 +605,7 @@ print_sockaddr_data_tipc(struct tcb *tcp, const void *const buf,
30+ tprint_struct_next();
31+ tprints_field_name("addr");
32+
33+- const void *const addr_buf = buf + offsetof(struct sockaddr_tipc, addr);
34++ const void *const addr_buf = (char *)buf + offsetof(struct sockaddr_tipc, addr);
35+ const int addr_len = sizeof(struct sockaddr_tipc) - offsetof(struct sockaddr_tipc, addr);
36+
37+ switch (sa->addrtype) {
38+@@ -657,7 +657,7 @@ print_sockaddr_data_tipc(struct tcb *tcp, const void *const buf,
39 static void
40 print_sockaddr_data_raw(const void *const buf, const int addrlen)
41 {
42@@ -72,7 +81,7 @@ index ee1ce8828..c1f9b1740 100644
43 const int datalen = addrlen - SIZEOF_SA_FAMILY;
44
45 tprints_field_name("sa_data");
46-@@ -780,7 +780,7 @@ print_sockaddr_data_rxrpc(struct tcb *tcp, const void *const buf,
47+@@ -854,7 +854,7 @@ print_sockaddr_data_rxrpc(struct tcb *tcp, const void *const buf,
48 tprints_field_name("transport");
49 tprint_struct_begin();
50
51@@ -82,10 +91,10 @@ index ee1ce8828..c1f9b1740 100644
52 const int transport_len = MIN(sa->transport_len,
53 len - offsetof(struct sockaddr_rxrpc,
54 diff --git a/src/tee.c b/src/tee.c
55-index c62566800..1596a5095 100644
56+index 08754212a..dca390adb 100644
57 --- a/src/tee.c
58 +++ b/src/tee.c
59-@@ -69,7 +69,7 @@ tee_fetch_buf_data(struct tcb *const tcp,
60+@@ -56,7 +56,7 @@ tee_fetch_buf_data(struct tcb *const tcp,
61 tee_print_buf(buf);
62 return RVAL_IOCTL_DECODED;
63 }
64@@ -148,5 +157,5 @@ index b4e746b0b..007b5373e 100644
65 }
66
67 --
68-2.44.0
69+2.49.0
70
1@@ -1,33 +0,0 @@
2-From 75a23af067ff5390a47df1e877f68834241009b9 Mon Sep 17 00:00:00 2001
3-From: Michael Forney <mforney@mforney.org>
4-Date: Sat, 6 Jul 2019 01:40:36 -0700
5-Subject: [PATCH] Make tcp_sysent a static inline function
6-
7-This way we can include the second operand to the conditional
8-operator without evaluating the macro argument multiple times.
9----
10- src/defs.h | 8 ++++++--
11- 1 file changed, 6 insertions(+), 2 deletions(-)
12-
13-diff --git a/src/defs.h b/src/defs.h
14-index ae1d1d1dc..bbd8f6748 100644
15---- a/src/defs.h
16-+++ b/src/defs.h
17-@@ -402,8 +402,12 @@ struct tcb {
18- # define syscall_tampered_nofail(tcp) ((tcp)->flags & TCB_TAMPERED_NO_FAIL)
19- # define has_seccomp_filter(tcp) ((tcp)->flags & TCB_SECCOMP_FILTER)
20-
21--extern const struct_sysent stub_sysent;
22--# define tcp_sysent(tcp) (tcp->s_ent ?: &stub_sysent)
23-+static inline const struct_sysent *
24-+tcp_sysent(struct tcb *tcp)
25-+{
26-+ extern const struct_sysent stub_sysent;
27-+ return tcp->s_ent ? tcp->s_ent : &stub_sysent;
28-+}
29- # define n_args(tcp) (tcp_sysent(tcp)->nargs)
30-
31- # include "xlat.h"
32---
33-2.44.0
34-
R pkg/strace/patch/0004-Avoid-empty-struct-definition.patch =>
pkg/strace/patch/0003-Avoid-empty-struct-definition.patch
+0,
-0
R pkg/strace/patch/0005-Don-t-omit-second-operand-to-operator.patch =>
pkg/strace/patch/0004-Don-t-omit-second-operand-to-operator.patch
+44,
-17
1@@ -1,18 +1,32 @@
2-From e245f2d71d44d2a858517321a01d3ca71147042f Mon Sep 17 00:00:00 2001
3+From 2a87525db61778ad915273dea37a17ae88e7a1f1 Mon Sep 17 00:00:00 2001
4 From: Michael Forney <mforney@mforney.org>
5 Date: Sun, 7 Jul 2019 21:53:16 -0700
6 Subject: [PATCH] Don't omit second operand to '?' operator
7
8 ---
9- src/open.c | 5 +++--
10- src/prctl.c | 8 ++++----
11- src/strace.c | 8 ++++----
12- src/strauss.c | 4 +++-
13- src/util.c | 2 +-
14- 5 files changed, 15 insertions(+), 12 deletions(-)
15+ src/defs.h | 2 +-
16+ src/open.c | 5 +++--
17+ src/prctl.c | 8 ++++----
18+ src/strace.c | 10 +++++-----
19+ src/strauss.c | 4 +++-
20+ src/util.c | 4 ++--
21+ 6 files changed, 18 insertions(+), 15 deletions(-)
22
23+diff --git a/src/defs.h b/src/defs.h
24+index 47e1c71f6..cd63f9d35 100644
25+--- a/src/defs.h
26++++ b/src/defs.h
27+@@ -404,7 +404,7 @@ struct tcb {
28+ # define has_seccomp_filter(tcp) ((tcp)->flags & TCB_SECCOMP_FILTER)
29+
30+ extern const struct_sysent stub_sysent;
31+-# define tcp_sysent(tcp) (tcp->s_ent ?: &stub_sysent)
32++# define tcp_sysent(tcp) (tcp->s_ent ? tcp->s_ent : &stub_sysent)
33+ # define n_args(tcp) MIN(tcp_sysent(tcp)->nargs, MAX_ARGS)
34+
35+ # include "xlat.h"
36 diff --git a/src/open.c b/src/open.c
37-index 6356c5831..df59ea999 100644
38+index 00bb697d0..77e6b2d9a 100644
39 --- a/src/open.c
40 +++ b/src/open.c
41 @@ -88,8 +88,9 @@ sprint_open_modes64(uint64_t flags)
42@@ -28,10 +42,10 @@ index 6356c5831..df59ea999 100644
43
44 const char *
45 diff --git a/src/prctl.c b/src/prctl.c
46-index dbabb3a18..712715b98 100644
47+index e4d6de888..89101e5cd 100644
48 --- a/src/prctl.c
49 +++ b/src/prctl.c
50-@@ -98,10 +98,10 @@ sprint_sve_val(kernel_ulong_t arg, bool aux)
51+@@ -99,10 +99,10 @@ sprint_sve_val(kernel_ulong_t arg, bool aux)
52 if (!aux && flags && xlat_verbose(xlat_verbosity) == XLAT_STYLE_VERBOSE)
53 {
54 xsprintf(out, "%#" PRI_klx " /* %s%s%#" PRI_klx " */",
55@@ -44,7 +58,7 @@ index dbabb3a18..712715b98 100644
56 }
57
58 return out;
59-@@ -134,10 +134,10 @@ sprint_sme_val(kernel_ulong_t arg, bool aux)
60+@@ -135,10 +135,10 @@ sprint_sme_val(kernel_ulong_t arg, bool aux)
61 if (!aux && flags && xlat_verbose(xlat_verbosity) == XLAT_STYLE_VERBOSE)
62 {
63 xsprintf(out, "%#" PRI_klx " /* %s%s%#" PRI_klx " */",
64@@ -58,10 +72,10 @@ index dbabb3a18..712715b98 100644
65
66 return out;
67 diff --git a/src/strace.c b/src/strace.c
68-index 1a9d53bc8..9ac16c8c3 100644
69+index ee80de0bc..74a09dc7a 100644
70 --- a/src/strace.c
71 +++ b/src/strace.c
72-@@ -2649,7 +2649,7 @@ init(int argc, char *argv[])
73+@@ -2636,7 +2636,7 @@ init(int argc, char *argv[])
74 break;
75 case GETOPT_TS:
76 tflag_long_set = true;
77@@ -70,7 +84,7 @@ index 1a9d53bc8..9ac16c8c3 100644
78 error_opt_arg(c, lopt, optarg);
79 break;
80 case 'T':
81-@@ -2723,7 +2723,7 @@ init(int argc, char *argv[])
82+@@ -2710,7 +2710,7 @@ init(int argc, char *argv[])
83 error_opt_arg(c, lopt, optarg);
84 break;
85 case GETOPT_TIPS:
86@@ -79,9 +93,13 @@ index 1a9d53bc8..9ac16c8c3 100644
87 error_opt_arg(c, lopt, optarg);
88 break;
89 case GETOPT_ARGV0:
90-@@ -2772,10 +2772,10 @@ init(int argc, char *argv[])
91+@@ -2759,13 +2759,13 @@ init(int argc, char *argv[])
92 qualify_kvm(optarg);
93 break;
94+ case GETOPT_QUAL_NAMESPACE:
95+- qualify_namespace(optarg ?: namespace_qual);
96++ qualify_namespace(optarg ? optarg : namespace_qual);
97+ break;
98 case GETOPT_QUAL_QUIET:
99 - qualify_quiet(optarg ?: qflag_qual);
100 + qualify_quiet(optarg ? optarg : qflag_qual);
101@@ -117,7 +135,7 @@ index bec85021b..5d49f950a 100644
102 strauss[MIN(3 + i, strauss_lines - 1)]);
103 }
104 diff --git a/src/util.c b/src/util.c
105-index ada3ba76a..a88dd008d 100644
106+index 0d6d7da45..e6d6ee667 100644
107 --- a/src/util.c
108 +++ b/src/util.c
109 @@ -640,7 +640,7 @@ printsocket(struct tcb *tcp, int fd, const char *path)
110@@ -129,6 +147,15 @@ index ada3ba76a..a88dd008d 100644
111
112 return true;
113 }
114+@@ -1394,7 +1394,7 @@ printpathn(struct tcb *const tcp, const kernel_ulong_t addr, unsigned int n)
115+ if (nul_seen < 0)
116+ printaddr(addr);
117+ else {
118+- print_quoted_cstring(path, (unsigned int) nul_seen ?: n);
119++ print_quoted_cstring(path, nul_seen ? (unsigned int) nul_seen : n);
120+
121+ if (nul_seen)
122+ selinux_printfilecon(tcp, path);
123 --
124-2.44.0
125+2.49.0
126
R pkg/strace/patch/0006-Avoid-unnecessary-VLAs.patch =>
pkg/strace/patch/0005-Avoid-unnecessary-VLAs.patch
+0,
-0
R pkg/strace/patch/0007-Avoid-index-ranges-and-empty-initializer-lists-in-sy.patch =>
pkg/strace/patch/0006-Avoid-index-ranges-and-empty-initializer-lists-in-sy.patch
+0,
-0
R pkg/strace/patch/0008-Use-alloca-when-VLAs-aren-t-available.patch =>
pkg/strace/patch/0007-Use-alloca-when-VLAs-aren-t-available.patch
+0,
-0
R pkg/strace/patch/0009-Avoid-index-ranges.patch =>
pkg/strace/patch/0008-Avoid-index-ranges.patch
+0,
-0
1@@ -0,0 +1,85 @@
2+From 8fbfd70d38e4dbff3c4ec6c9362ad7c765e5089f Mon Sep 17 00:00:00 2001
3+From: Michael Forney <mforney@mforney.org>
4+Date: Wed, 1 Apr 2026 23:28:49 -0700
5+Subject: [PATCH] Use ISO C alignment and attribute syntax
6+
7+---
8+ src/gcc_compat.h | 4 ++--
9+ src/quota.c | 4 ++--
10+ src/rtnl_link.c | 4 ++--
11+ src/sockaddr.c | 4 ++--
12+ 4 files changed, 8 insertions(+), 8 deletions(-)
13+
14+diff --git a/src/gcc_compat.h b/src/gcc_compat.h
15+index 35291b747..7e576d35c 100644
16+--- a/src/gcc_compat.h
17++++ b/src/gcc_compat.h
18+@@ -54,8 +54,8 @@
19+ # define ATTRIBUTE_PACKED __attribute__((__packed__))
20+ # else
21+ # define ATTRIBUTE_FORMAT(args) /* empty */
22+-# define ATTRIBUTE_ALIGNED(arg) /* empty */
23+-# define ATTRIBUTE_PACKED /* empty */
24++# define ATTRIBUTE_ALIGNED(arg) _Alignas(arg)
25++# define ATTRIBUTE_PACKED [[gnu::packed]]
26+ # endif
27+
28+ /*
29+diff --git a/src/quota.c b/src/quota.c
30+index c3aeda229..bf6ca186c 100644
31+--- a/src/quota.c
32++++ b/src/quota.c
33+@@ -36,7 +36,7 @@
34+ * leads to problems when it is used on 32-bit tracee which does not have such
35+ * padding.
36+ */
37+-struct if_dqblk {
38++struct ATTRIBUTE_PACKED if_dqblk {
39+ uint64_t dqb_bhardlimit;
40+ uint64_t dqb_bsoftlimit;
41+ uint64_t dqb_curspace;
42+@@ -46,7 +46,7 @@ struct if_dqblk {
43+ uint64_t dqb_btime;
44+ uint64_t dqb_itime;
45+ uint32_t dqb_valid;
46+-} ATTRIBUTE_PACKED;
47++};
48+
49+ struct if_nextdqblk {
50+ uint64_t dqb_bhardlimit;
51+diff --git a/src/rtnl_link.c b/src/rtnl_link.c
52+index acc244560..e345e87d3 100644
53+--- a/src/rtnl_link.c
54++++ b/src/rtnl_link.c
55+@@ -926,10 +926,10 @@ decode_ifla_vf_guid(struct tcb *const tcp,
56+ * aligned; trying to handle both possible attribute sizes.
57+ */
58+ union {
59+- struct {
60++ struct ATTRIBUTE_PACKED {
61+ uint32_t vf;
62+ uint64_t guid;
63+- } ATTRIBUTE_PACKED ivg_32;
64++ } ivg_32;
65+ struct {
66+ uint32_t vf;
67+ uint64_t ATTRIBUTE_ALIGNED(8) guid;
68+diff --git a/src/sockaddr.c b/src/sockaddr.c
69+index 98220288d..afa2fd6a8 100644
70+--- a/src/sockaddr.c
71++++ b/src/sockaddr.c
72+@@ -757,9 +757,9 @@ print_sockaddr_data_bt(struct tcb *tcp, const void *const buf,
73+ uint16_t hci_channel;
74+ };
75+
76+- struct bdaddr {
77++ struct ATTRIBUTE_PACKED bdaddr {
78+ uint8_t b[6];
79+- } ATTRIBUTE_PACKED;
80++ };
81+
82+ struct sockaddr_sco {
83+ /* sa_family_t */ uint16_t sco_family;
84+--
85+2.49.0
86+
+1,
-1
1@@ -1 +1 @@
2-c47da93be45b6055f4dc741d7f20efaf50ca10160a5b100c109b294fd9c0bdfe strace-6.12.tar.xz
3+e076c851eec0972486ec842164fdc54547f9d17abd3d1449de8b120f5d299143 strace-6.19.tar.xz
+1,
-1
1@@ -1 +1 @@
2-url = "https://github.com/strace/strace/releases/download/v6.12/strace-6.12.tar.xz"
3+url = "https://github.com/strace/strace/releases/download/v6.19/strace-6.19.tar.xz"
+1,
-1
1@@ -1 +1 @@
2-6.12 r1
3+6.19