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@,#,']],
+4, -4
 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 
+0, -33
 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
+85, -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