logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: 131aab560632f3b8ce9fe1833050e6a31c9531fd
parent b30c6df557bdc5340f22bb9af03df52b3bd3d27f
Author: Michael Forney <mforney@mforney.org>
Date:   Fri, 18 Feb 2022 01:57:12 -0800

strace: Update to 5.16

Diffstat:

Mpkg/strace/.gitignore2+-
Mpkg/strace/config.h108+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
Mpkg/strace/gen.lua28++++++++++++++++++++++++++--
Mpkg/strace/mpers.txt3+++
Mpkg/strace/patch/0001-Don-t-return-expression-in-void-function.patch8++++----
Mpkg/strace/patch/0002-Use-__typeof__-spelling-of-typeof.patch99+++++++++++++++++++++++++++++++++++++++++++++++++------------------------------
Mpkg/strace/patch/0003-Make-tcp_sysent-a-static-inline-function.patch8++++----
Mpkg/strace/patch/0004-Avoid-empty-initializer-lists.patch54+++++++++++++++++++++++++++---------------------------
Mpkg/strace/patch/0005-Avoid-pointer-arithmetic-on-void.patch64++++++++++++++++++++++++++++++++++++++++++++++++----------------
Mpkg/strace/patch/0006-Avoid-empty-struct-definition.patch4++--
Mpkg/strace/patch/0007-Don-t-omit-second-operand-to-operator.patch44+++++++++++++++++++++++++++++---------------
Mpkg/strace/patch/0008-Avoid-unnecessary-VLAs.patch28++++++++++++++--------------
Mpkg/strace/patch/0009-Avoid-index-ranges-and-empty-initializer-lists-in-sy.patch67++++++++++++++++++++++++++++++-------------------------------------
Mpkg/strace/patch/0010-Use-alloca-when-VLAs-aren-t-available.patch8++++----
Mpkg/strace/patch/0011-Avoid-index-ranges.patch12++++++------
Mpkg/strace/patch/1001-Prevent-zero-sized-arrays.patch67+++++++++++++++++++++++--------------------------------------------
Mpkg/strace/sha2562+-
Mpkg/strace/url2+-
Mpkg/strace/ver2+-
19 files changed, 386 insertions(+), 224 deletions(-)

diff --git a/pkg/strace/.gitignore b/pkg/strace/.gitignore @@ -1,3 +1,3 @@ /src -/strace-5.12.tar.xz +/strace-5.16.tar.xz /tools.ninja diff --git a/pkg/strace/config.h b/pkg/strace/config.h @@ -7,7 +7,7 @@ #define ASM_SIGRTMIN 32 /* #undef AVR32 */ /* #undef BFIN */ -#define COPYRIGHT_YEAR "2021" +#define COPYRIGHT_YEAR "2022" /* #undef CSKY */ #define ENABLE_ARM_OABI 0 /* #undef ENABLE_SECONTEXT */ @@ -19,8 +19,8 @@ /* #undef HAVE_ASM_SYSMIPS_H */ /* #undef HAVE_BE64TOH */ /* #undef HAVE_BLUETOOTH_BLUETOOTH_H */ -#define HAVE_BROKEN_CC 1 #define HAVE_DECL_CTL_ABI 1 +#define HAVE_DECL_CTL_APPLDATA 0 #define HAVE_DECL_CTL_ARLAN 1 #define HAVE_DECL_CTL_BUS 1 #define HAVE_DECL_CTL_CPU 1 @@ -28,6 +28,7 @@ #define HAVE_DECL_CTL_DEV 1 #define HAVE_DECL_CTL_FRV 1 #define HAVE_DECL_CTL_FS 1 +#define HAVE_DECL_CTL_INOTIFY 0 #define HAVE_DECL_CTL_KERN 1 #define HAVE_DECL_CTL_NET 1 #define HAVE_DECL_CTL_PM 1 @@ -35,10 +36,14 @@ #define HAVE_DECL_CTL_S390DBF 1 #define HAVE_DECL_CTL_SUNRPC 1 #define HAVE_DECL_CTL_VM 1 +#define HAVE_DECL_IEEE802154_ADDR_LONG 0 +#define HAVE_DECL_IEEE802154_ADDR_NONE 0 +#define HAVE_DECL_IEEE802154_ADDR_SHORT 0 #define HAVE_DECL_KERN_ACCT 1 #define HAVE_DECL_KERN_ACPI_VIDEO_FLAGS 1 #define HAVE_DECL_KERN_BOOTLOADER_TYPE 1 #define HAVE_DECL_KERN_CADPID 1 +#define HAVE_DECL_KERN_CAP_BSET 0 #define HAVE_DECL_KERN_COMPAT_LOG 1 #define HAVE_DECL_KERN_CORE_PATTERN 1 #define HAVE_DECL_KERN_CORE_USES_PID 1 @@ -50,6 +55,11 @@ #define HAVE_DECL_KERN_HZ_TIMER 1 #define HAVE_DECL_KERN_IA64_UNALIGNED 1 #define HAVE_DECL_KERN_IEEE_EMULATION_WARNINGS 1 +#define HAVE_DECL_KERN_JAVA_APPLETVIEWER 0 +#define HAVE_DECL_KERN_JAVA_INTERPRETER 0 +#define HAVE_DECL_KERN_MAXFILE 0 +#define HAVE_DECL_KERN_MAXID 0 +#define HAVE_DECL_KERN_MAXINODE 0 #define HAVE_DECL_KERN_MAX_LOCK_DEPTH 1 #define HAVE_DECL_KERN_MAX_THREADS 1 #define HAVE_DECL_KERN_MODPROBE 1 @@ -58,9 +68,13 @@ #define HAVE_DECL_KERN_MSGMNI 1 #define HAVE_DECL_KERN_MSGPOOL 1 #define HAVE_DECL_KERN_NAMETRANS 1 +#define HAVE_DECL_KERN_NFSRADDRS 0 +#define HAVE_DECL_KERN_NFSRNAME 0 #define HAVE_DECL_KERN_NGROUPS_MAX 1 #define HAVE_DECL_KERN_NMI_WATCHDOG 1 #define HAVE_DECL_KERN_NODENAME 1 +#define HAVE_DECL_KERN_NRFILE 0 +#define HAVE_DECL_KERN_NRINODE 0 #define HAVE_DECL_KERN_OSRELEASE 1 #define HAVE_DECL_KERN_OSREV 1 #define HAVE_DECL_KERN_OSTYPE 1 @@ -70,7 +84,6 @@ #define HAVE_DECL_KERN_PANIC_ON_NMI 1 #define HAVE_DECL_KERN_PANIC_ON_OOPS 1 #define HAVE_DECL_KERN_PANIC_ON_WARN 1 -#define HAVE_DECL_KERN_PANIC_PRINT 1 #define HAVE_DECL_KERN_PIDMAX 1 #define HAVE_DECL_KERN_PPC_HTABRECLAIM 1 #define HAVE_DECL_KERN_PPC_L2CR 1 @@ -147,6 +160,7 @@ #define HAVE_DECL_NET_IPV4_ALWAYS_DEFRAG 1 #define HAVE_DECL_NET_IPV4_AUTOCONFIG 1 #define HAVE_DECL_NET_IPV4_CONF 1 +#define HAVE_DECL_NET_IPV4_CONF_ACCEPT_LOCAL 0 #define HAVE_DECL_NET_IPV4_CONF_ACCEPT_REDIRECTS 1 #define HAVE_DECL_NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE 1 #define HAVE_DECL_NET_IPV4_CONF_ARPFILTER 1 @@ -164,10 +178,12 @@ #define HAVE_DECL_NET_IPV4_CONF_NOXFRM 1 #define HAVE_DECL_NET_IPV4_CONF_PROMOTE_SECONDARIES 1 #define HAVE_DECL_NET_IPV4_CONF_PROXY_ARP 1 +#define HAVE_DECL_NET_IPV4_CONF_PROXY_ARP_PVLAN 0 #define HAVE_DECL_NET_IPV4_CONF_RP_FILTER 1 #define HAVE_DECL_NET_IPV4_CONF_SECURE_REDIRECTS 1 #define HAVE_DECL_NET_IPV4_CONF_SEND_REDIRECTS 1 #define HAVE_DECL_NET_IPV4_CONF_SHARED_MEDIA 1 +#define HAVE_DECL_NET_IPV4_CONF_SRC_VMARK 0 #define HAVE_DECL_NET_IPV4_CONF_TAG 1 #define HAVE_DECL_NET_IPV4_DEFAULT_TTL 1 #define HAVE_DECL_NET_IPV4_DYNADDR 1 @@ -270,7 +286,10 @@ #define HAVE_DECL_NET_TCP_APP_WIN 1 #define HAVE_DECL_NET_TCP_AVAIL_CONG_CONTROL 1 #define HAVE_DECL_NET_TCP_BASE_MSS 1 +#define HAVE_DECL_NET_TCP_BIC 0 #define HAVE_DECL_NET_TCP_BIC_BETA 1 +#define HAVE_DECL_NET_TCP_BIC_FAST_CONVERGENCE 0 +#define HAVE_DECL_NET_TCP_BIC_LOW_WINDOW 0 #define HAVE_DECL_NET_TCP_CONG_CONTROL 1 #define HAVE_DECL_NET_TCP_DEFAULT_WIN_SCALE 1 #define HAVE_DECL_NET_TCP_DMA_COPYBREAK 1 @@ -300,6 +319,11 @@ #define HAVE_DECL_NET_TCP_TSO_WIN_DIVISOR 1 #define HAVE_DECL_NET_TCP_TW_RECYCLE 1 #define HAVE_DECL_NET_TCP_TW_REUSE 1 +#define HAVE_DECL_NET_TCP_VEGAS 0 +#define HAVE_DECL_NET_TCP_VEGAS_ALPHA 0 +#define HAVE_DECL_NET_TCP_VEGAS_BETA 0 +#define HAVE_DECL_NET_TCP_VEGAS_GAMMA 0 +#define HAVE_DECL_NET_TCP_WESTWOOD 0 #define HAVE_DECL_NET_TCP_WMEM 1 #define HAVE_DECL_NET_TR 1 #define HAVE_DECL_NET_UNIX 1 @@ -325,10 +349,14 @@ #define HAVE_DECL_TCA_ACT_UNSPEC 1 #define HAVE_DECL_TCA_ACT_USED_HW_STATS 1 #define HAVE_DECL_VM_BLOCK_DUMP 1 +#define HAVE_DECL_VM_CMM_PAGES 0 +#define HAVE_DECL_VM_CMM_TIMED_PAGES 0 +#define HAVE_DECL_VM_CMM_TIMEOUT 0 #define HAVE_DECL_VM_DIRTY_BACKGROUND 1 #define HAVE_DECL_VM_DIRTY_EXPIRE_CS 1 #define HAVE_DECL_VM_DIRTY_RATIO 1 #define HAVE_DECL_VM_DIRTY_WB_CS 1 +#define HAVE_DECL_VM_DROP_PAGECACHE 1 #define HAVE_DECL_VM_HUGETLB_GROUP 1 #define HAVE_DECL_VM_HUGETLB_PAGES 1 #define HAVE_DECL_VM_LAPTOP_MODE 1 @@ -336,14 +364,53 @@ #define HAVE_DECL_VM_LOWMEM_RESERVE_RATIO 1 #define HAVE_DECL_VM_MAX_MAP_COUNT 1 #define HAVE_DECL_VM_MIN_FREE_KBYTES 1 +#define HAVE_DECL_VM_MIN_SLAB 1 +#define HAVE_DECL_VM_MIN_UNMAPPED 1 #define HAVE_DECL_VM_NR_PDFLUSH_THREADS 1 #define HAVE_DECL_VM_OVERCOMMIT_MEMORY 1 #define HAVE_DECL_VM_OVERCOMMIT_RATIO 1 #define HAVE_DECL_VM_PAGEBUF 1 #define HAVE_DECL_VM_PAGE_CLUSTER 1 +#define HAVE_DECL_VM_PANIC_ON_OOM 1 +#define HAVE_DECL_VM_PERCPU_PAGELIST_FRACTION 1 #define HAVE_DECL_VM_SWAPPINESS 1 #define HAVE_DECL_VM_SWAP_TOKEN_TIMEOUT 1 +#define HAVE_DECL_VM_UNUSED1 1 +#define HAVE_DECL_VM_UNUSED2 1 +#define HAVE_DECL_VM_UNUSED3 1 +#define HAVE_DECL_VM_UNUSED4 1 +#define HAVE_DECL_VM_UNUSED5 1 +#define HAVE_DECL_VM_UNUSED7 1 +#define HAVE_DECL_VM_UNUSED8 1 +#define HAVE_DECL_VM_UNUSED9 1 +#define HAVE_DECL_VM_VDSO_ENABLED 1 #define HAVE_DECL_VM_VFS_CACHE_PRESSURE 1 +#define HAVE_DECL_VM_ZONE_RECLAIM_MODE 1 +#define HAVE_DECL_XFRM_MSG_ACQUIRE 1 +#define HAVE_DECL_XFRM_MSG_ALLOCSPI 1 +#define HAVE_DECL_XFRM_MSG_DELPOLICY 1 +#define HAVE_DECL_XFRM_MSG_DELSA 1 +#define HAVE_DECL_XFRM_MSG_EXPIRE 1 +#define HAVE_DECL_XFRM_MSG_FLUSHPOLICY 1 +#define HAVE_DECL_XFRM_MSG_FLUSHSA 1 +#define HAVE_DECL_XFRM_MSG_GETAE 1 +#define HAVE_DECL_XFRM_MSG_GETDEFAULT 1 +#define HAVE_DECL_XFRM_MSG_GETPOLICY 1 +#define HAVE_DECL_XFRM_MSG_GETSA 1 +#define HAVE_DECL_XFRM_MSG_GETSADINFO 1 +#define HAVE_DECL_XFRM_MSG_GETSPDINFO 1 +#define HAVE_DECL_XFRM_MSG_MAPPING 1 +#define HAVE_DECL_XFRM_MSG_MIGRATE 1 +#define HAVE_DECL_XFRM_MSG_NEWAE 1 +#define HAVE_DECL_XFRM_MSG_NEWPOLICY 1 +#define HAVE_DECL_XFRM_MSG_NEWSA 1 +#define HAVE_DECL_XFRM_MSG_NEWSADINFO 1 +#define HAVE_DECL_XFRM_MSG_NEWSPDINFO 1 +#define HAVE_DECL_XFRM_MSG_POLEXPIRE 1 +#define HAVE_DECL_XFRM_MSG_REPORT 1 +#define HAVE_DECL_XFRM_MSG_SETDEFAULT 1 +#define HAVE_DECL_XFRM_MSG_UPDPOLICY 1 +#define HAVE_DECL_XFRM_MSG_UPDSA 1 /* #undef HAVE_DEMANGLE_H */ #define HAVE_DLADDR 1 /* #undef HAVE_ELFUTILS_LIBDWFL_H */ @@ -368,20 +435,30 @@ /* #undef HAVE_LIBIBERTY_DEMANGLE_H */ /* #undef HAVE_LIBUNWIND_PTRACE_H */ #define HAVE_LINUX_BPF_H 1 +#define HAVE_LINUX_IF_ALG_H 1 +#define HAVE_LINUX_IF_XDP_H 1 #define HAVE_LINUX_IPC_H 1 +/* #undef HAVE_LINUX_IPX_H */ #define HAVE_LINUX_KVM_H 1 #define HAVE_LINUX_NETFILTER_ARP_ARP_TABLES_H 1 #define HAVE_LINUX_NETFILTER_BRIDGE_EBTABLES_H 1 #define HAVE_LINUX_NETFILTER_IPV4_IP_TABLES_H 1 #define HAVE_LINUX_NETFILTER_IPV6_IP6_TABLES_H 1 +#define HAVE_LINUX_NFC_H 1 +#define HAVE_LINUX_QRTR_H 1 +#define HAVE_LINUX_RXRPC_H 1 +#define HAVE_LINUX_VM_SOCKETS_H 1 /* #undef HAVE_M32_MPERS */ +/* #undef HAVE_M32_SELINUX_RUNTIME */ /* #undef HAVE_M32_STRUCT_STAT */ /* #undef HAVE_M32_STRUCT_STAT64 */ /* #undef HAVE_M32_STRUCT_STAT64_ST_MTIME_NSEC */ /* #undef HAVE_M32_STRUCT_STAT_ST_MTIME_NSEC */ #define HAVE_MEMORY_H 1 +#define HAVE_MEMPCPY 1 #define HAVE_MQUEUE_H 1 /* #undef HAVE_MX32_MPERS */ +/* #undef HAVE_MX32_SELINUX_RUNTIME */ /* #undef HAVE_MX32_STRUCT_STAT */ /* #undef HAVE_MX32_STRUCT_STAT64 */ /* #undef HAVE_MX32_STRUCT_STAT64_ST_MTIME_NSEC */ @@ -425,9 +502,11 @@ #define HAVE_STRUCT_BPF_MAP_INFO_ID 1 #define HAVE_STRUCT_BPF_MAP_INFO_IFINDEX 1 #define HAVE_STRUCT_BPF_MAP_INFO_KEY_SIZE 1 +#define HAVE_STRUCT_BPF_MAP_INFO_MAP_EXTRA 1 #define HAVE_STRUCT_BPF_MAP_INFO_MAP_FLAGS 1 #define HAVE_STRUCT_BPF_MAP_INFO_MAX_ENTRIES 1 #define HAVE_STRUCT_BPF_MAP_INFO_NAME 1 +/* #undef HAVE_STRUCT_BPF_MAP_INFO_PAD */ #define HAVE_STRUCT_BPF_MAP_INFO_TYPE 1 #define HAVE_STRUCT_BPF_MAP_INFO_VALUE_SIZE 1 #define HAVE_STRUCT_BPF_PROG_INFO 1 @@ -456,15 +535,19 @@ #define HAVE_STRUCT_BPF_PROG_INFO_NR_MAP_IDS 1 #define HAVE_STRUCT_BPF_PROG_INFO_NR_PROG_TAGS 1 #define HAVE_STRUCT_BPF_PROG_INFO_PROG_TAGS 1 +#define HAVE_STRUCT_BPF_PROG_INFO_RECURSION_MISSES 1 #define HAVE_STRUCT_BPF_PROG_INFO_RUN_CNT 1 #define HAVE_STRUCT_BPF_PROG_INFO_RUN_TIME_NS 1 #define HAVE_STRUCT_BPF_PROG_INFO_TAG 1 #define HAVE_STRUCT_BPF_PROG_INFO_TYPE 1 +#define HAVE_STRUCT_BPF_PROG_INFO_VERIFIED_INSNS 1 #define HAVE_STRUCT_BPF_PROG_INFO_XLATED_PROG_INSNS 1 #define HAVE_STRUCT_BPF_PROG_INFO_XLATED_PROG_LEN 1 /* #undef HAVE_STRUCT_IA64_FPREG */ #define HAVE_STRUCT_IOCB_AIO_FLAGS 1 #define HAVE_STRUCT_IOCB_AIO_RW_FLAGS 1 +#define HAVE_STRUCT_KBDIACRSUC 1 +#define HAVE_STRUCT_KBDIACRUC 1 #define HAVE_STRUCT_KVM_CPUID2 1 #define HAVE_STRUCT_KVM_REGS 1 #define HAVE_STRUCT_KVM_SREGS 1 @@ -474,9 +557,13 @@ #define HAVE_STRUCT_PTRACE_SYSCALL_INFO 1 /* #undef HAVE_STRUCT_PT_ALL_USER_REGS */ #define HAVE_STRUCT_SIGCONTEXT 1 +#define HAVE_STRUCT_SOCKADDR_ALG_NEW 1 /* #undef HAVE_STRUCT_SOCKADDR_HCI_HCI_CHANNEL */ /* #undef HAVE_STRUCT_SOCKADDR_L2_L2_BDADDR_TYPE */ #define HAVE_STRUCT_SOCKADDR_STORAGE 1 +#define HAVE_STRUCT_SOCKADDR_VM 1 +#define HAVE_STRUCT_SOCKADDR_VM_SVM_FLAGS 1 +#define HAVE_STRUCT_SOCKADDR_XDP 1 /* #undef HAVE_STRUCT_STAT64 */ /* #undef HAVE_STRUCT_STAT64_ST_MTIME_NSEC */ #define HAVE_STRUCT_STATFS 1 @@ -534,6 +621,7 @@ #define HAVE_UNION_BPF_ATTR_BTF_VMLINUX_VALUE_TYPE_ID 1 /* #undef HAVE_UNION_BPF_ATTR_DUMMY */ #define HAVE_UNION_BPF_ATTR_EXPECTED_ATTACH_TYPE 1 +#define HAVE_UNION_BPF_ATTR_FD_ARRAY 1 #define HAVE_UNION_BPF_ATTR_FILE_FLAGS 1 #define HAVE_UNION_BPF_ATTR_FLAGS 1 #define HAVE_UNION_BPF_ATTR_FUNC_INFO 1 @@ -556,6 +644,7 @@ #define HAVE_UNION_BPF_ATTR_LINK_CREATE_FLAGS 1 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_PROG_FD 1 #define HAVE_UNION_BPF_ATTR_LINK_CREATE_TARGET_FD 1 +#define HAVE_UNION_BPF_ATTR_LINK_ID 1 #define HAVE_UNION_BPF_ATTR_LINK_UPDATE_FLAGS 1 #define HAVE_UNION_BPF_ATTR_LINK_UPDATE_LINK_FD 1 #define HAVE_UNION_BPF_ATTR_LINK_UPDATE_NEW_PROG_FD 1 @@ -563,6 +652,7 @@ #define HAVE_UNION_BPF_ATTR_LOG_BUF 1 #define HAVE_UNION_BPF_ATTR_LOG_LEVEL 1 #define HAVE_UNION_BPF_ATTR_LOG_SIZE 1 +#define HAVE_UNION_BPF_ATTR_MAP_EXTRA 1 #define HAVE_UNION_BPF_ATTR_MAP_FD 1 #define HAVE_UNION_BPF_ATTR_MAP_FLAGS 1 #define HAVE_UNION_BPF_ATTR_MAP_ID 1 @@ -574,6 +664,7 @@ #define HAVE_UNION_BPF_ATTR_NEXT_KEY 1 #define HAVE_UNION_BPF_ATTR_NUMA_NODE 1 #define HAVE_UNION_BPF_ATTR_OPEN_FLAGS 1 +/* #undef HAVE_UNION_BPF_ATTR_PAD */ #define HAVE_UNION_BPF_ATTR_PATHNAME 1 #define HAVE_UNION_BPF_ATTR_PROG_BTF_FD 1 #define HAVE_UNION_BPF_ATTR_PROG_FLAGS 1 @@ -601,6 +692,7 @@ #define HAVE_UNION_BPF_ATTR_TASK_FD_QUERY_PROBE_ADDR 1 #define HAVE_UNION_BPF_ATTR_TASK_FD_QUERY_PROBE_OFFSET 1 #define HAVE_UNION_BPF_ATTR_TASK_FD_QUERY_PROG_ID 1 +#define HAVE_UNION_BPF_ATTR_TEST_CPU 1 #define HAVE_UNION_BPF_ATTR_TEST_CTX_IN 1 #define HAVE_UNION_BPF_ATTR_TEST_CTX_OUT 1 #define HAVE_UNION_BPF_ATTR_TEST_CTX_SIZE_IN 1 @@ -610,6 +702,7 @@ #define HAVE_UNION_BPF_ATTR_TEST_DATA_SIZE_IN 1 #define HAVE_UNION_BPF_ATTR_TEST_DATA_SIZE_OUT 1 #define HAVE_UNION_BPF_ATTR_TEST_DURATION 1 +#define HAVE_UNION_BPF_ATTR_TEST_FLAGS 1 #define HAVE_UNION_BPF_ATTR_TEST_PROG_FD 1 #define HAVE_UNION_BPF_ATTR_TEST_REPEAT 1 #define HAVE_UNION_BPF_ATTR_TEST_RETVAL 1 @@ -631,7 +724,6 @@ /* #undef M32_SIZEOF_LONG */ /* #undef M32_SIZEOF_STRUCT_MSQID64_DS */ /* #undef M68K */ -#define MANPAGE_DATE "2021-04-04" /* #undef METAG */ /* #undef MICROBLAZE */ /* #undef MIPS */ @@ -643,10 +735,10 @@ #define PACKAGE "strace" #define PACKAGE_BUGREPORT "strace-devel@lists.strace.io" #define PACKAGE_NAME "strace" -#define PACKAGE_STRING "strace 5.12" +#define PACKAGE_STRING "strace 5.16" #define PACKAGE_TARNAME "strace" #define PACKAGE_URL "https://strace.io" -#define PACKAGE_VERSION "5.12" +#define PACKAGE_VERSION "5.16" /* #undef POWERPC */ /* #undef POWERPC64 */ /* #undef POWERPC64LE */ @@ -661,9 +753,11 @@ #define SIZEOF_OFF_T 8 #define SIZEOF_STRUCT_I64_I32 16 #define SIZEOF_STRUCT_MSQID64_DS 120 +#define SLM_MANPAGE_DATE "2022-01-01" /* #undef SPARC */ /* #undef SPARC64 */ #define STDC_HEADERS 1 +#define STRACE_MANPAGE_DATE "2022-01-04" /* #undef TILE */ /* #undef USE_DEMANGLE */ /* #undef USE_LIBDW */ @@ -684,7 +778,7 @@ # define __EXTENSIONS__ 1 #endif /* #undef USE_UNWINDER */ -#define VERSION "5.12" +#define VERSION "5.16" #if defined AC_APPLE_UNIVERSAL_BUILD # if defined __BIG_ENDIAN__ # define WORDS_BIGENDIAN 1 diff --git a/pkg/strace/gen.lua b/pkg/strace/gen.lua @@ -126,6 +126,7 @@ local srcs = paths[[src/( fetch_bpf_fprog.c fetch_indirect_syscall_args.c fetch_struct_flock.c + fetch_struct_iovec.c fetch_struct_keyctl_kdf_params.c fetch_struct_mmsghdr.c fetch_struct_msghdr.c @@ -147,6 +148,8 @@ local srcs = paths[[src/( fstatfs.c fstatfs64.c futex.c + futex_waitv.c + gen/gen_hdio.c get_personality.c get_robust_list.c getcpu.c @@ -172,9 +175,12 @@ local srcs = paths[[src/( ipc_shm.c ipc_shmctl.c kcmp.c + kd_ioctl.c + kd_mpers_ioctl.c kexec.c keyctl.c kvm.c + landlock.c ldt.c link.c listen.c @@ -184,6 +190,7 @@ local srcs = paths[[src/( mem.c membarrier.c memfd_create.c + memfd_secret.c mknod.c mmap_cache.c mmap_notify.c @@ -250,15 +257,16 @@ local srcs = paths[[src/( printmode.c printrusage.c printsiginfo.c - process.c process_vm.c ptp.c + ptrace.c ptrace_syscall_info.c quota.c random_ioctl.c readahead.c readlink.c reboot.c + regset.c renameat.c resource.c retval.c @@ -268,21 +276,25 @@ local srcs = paths[[src/( rtc.c rtnl_addr.c rtnl_addrlabel.c + rtnl_cachereport.c rtnl_dcb.c rtnl_link.c rtnl_mdb.c rtnl_neigh.c rtnl_neightbl.c rtnl_netconf.c + rtnl_nh.c rtnl_nsid.c rtnl_route.c rtnl_rule.c + rtnl_stats.c rtnl_tc.c rtnl_tc_action.c s390.c sched.c scsi.c seccomp.c + seccomp_ioctl.c sendfile.c sg_io_v3.c sg_io_v4.c @@ -308,6 +320,7 @@ local srcs = paths[[src/( sync_file_range.c sync_file_range2.c syscall.c + syscall_name.c sysctl.c sysinfo.c syslog.c @@ -362,6 +375,17 @@ pkg.deps = { lib('libstrace.a', srcs) exe('strace', {'src/strace.c', 'libstrace.a'}) file('bin/strace', '755', '$outdir/strace') -man{'doc/strace.1'} + +build('sed', '$outdir/strace.1', '$srcdir/doc/strace.1.in', { + expr={ + [[-e 's,@STRACE_MANPAGE_DATE@,2022-01-04,']], + [[-e 's,@VERSION@,5.16,']], + [[-e 's,@ENABLE_STACKTRACE_TRUE@,#,']], + [[-e 's,@ENABLE_STACKTRACE_FALSE@,,']], + [[-e 's,@ENABLE_SECONTEXT_TRUE@,#,']], + [[-e 's,@ENABLE_SECONTEXT_FALSE@,,']], + }, +}) +man{'$outdir/strace.1'} fetch 'curl' diff --git a/pkg/strace/mpers.txt b/pkg/strace/mpers.txt @@ -5,6 +5,7 @@ dirent.c evdev_mpers.c fetch_bpf_fprog.c fetch_struct_flock.c +fetch_struct_iovec.c fetch_struct_keyctl_kdf_params.c fetch_struct_mmsghdr.c fetch_struct_msghdr.c @@ -16,6 +17,7 @@ hdio.c ipc_msgctl.c ipc_semctl.c ipc_shmctl.c +kd_mpers_ioctl.c loop.c mtd.c perf_ioctl.c @@ -29,6 +31,7 @@ print_time.c print_timeval.c printrusage.c printsiginfo.c +regset.c rt_sigreturn.c rtc.c sg_io_v3.c diff --git a/pkg/strace/patch/0001-Don-t-return-expression-in-void-function.patch b/pkg/strace/patch/0001-Don-t-return-expression-in-void-function.patch @@ -1,4 +1,4 @@ -From 2d644a73ecf46c454a40a78c1db0ab4ec76760bf Mon Sep 17 00:00:00 2001 +From ea3a66eaff044dcdbf29062d771f931e0777430e Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Fri, 5 Jul 2019 20:52:24 -0700 Subject: [PATCH] Don't return expression in void function @@ -8,10 +8,10 @@ Subject: [PATCH] Don't return expression in void function 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/defs.h b/src/defs.h -index 5c369eceb..bbc8aa38f 100644 +index b95f6bdd3..fd11d60c3 100644 --- a/src/defs.h +++ b/src/defs.h -@@ -726,7 +726,7 @@ extern bool pathtrace_match_set(struct tcb *, struct path_set *); +@@ -784,7 +784,7 @@ extern bool pathtrace_match_set(struct tcb *, struct path_set *); static inline void pathtrace_select(const char *path) { @@ -21,5 +21,5 @@ index 5c369eceb..bbc8aa38f 100644 static inline bool -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0002-Use-__typeof__-spelling-of-typeof.patch b/pkg/strace/patch/0002-Use-__typeof__-spelling-of-typeof.patch @@ -1,4 +1,4 @@ -From eeb1e797fc52a2a7fc470420ddd57344362c2c2e Mon Sep 17 00:00:00 2001 +From deb58e1542286779d0bd95482ae3e4e7e7ce7fb7 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sat, 6 Jul 2019 01:33:01 -0700 Subject: [PATCH] Use __typeof__ spelling of typeof @@ -8,20 +8,21 @@ Subject: [PATCH] Use __typeof__ spelling of typeof src/defs.h | 6 +++--- src/fs_0x94_ioctl.c | 2 +- src/fs_f_ioctl.c | 2 +- - src/gcc_compat.h | 2 +- + src/landlock.c | 4 ++-- src/list.h | 10 +++++----- src/macros.h | 2 +- src/net.c | 2 +- + src/tee.c | 2 +- src/ubi.c | 2 +- tests/btrfs.c | 2 +- tests/fcntl-common.c | 2 +- - 11 files changed, 22 insertions(+), 22 deletions(-) + 12 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/btrfs.c b/src/btrfs.c -index df2b35a7f..2c49dcc67 100644 +index 349fee657..c641d2408 100644 --- a/src/btrfs.c +++ b/src/btrfs.c -@@ -214,7 +214,7 @@ btrfs_print_logical_ino_container(struct tcb *tcp, +@@ -216,7 +216,7 @@ btrfs_print_logical_ino_container(struct tcb *tcp, tprint_more_data_follows(); } else { const uint64_t val_addr = @@ -30,7 +31,7 @@ index df2b35a7f..2c49dcc67 100644 uint64_t record[3]; tprint_struct_next(); tprints_field_name("val"); -@@ -255,7 +255,7 @@ btrfs_print_ino_path_container(struct tcb *tcp, +@@ -257,7 +257,7 @@ btrfs_print_ino_path_container(struct tcb *tcp, tprint_more_data_follows(); } else { uint64_t val_addr = @@ -39,16 +40,16 @@ index df2b35a7f..2c49dcc67 100644 uint64_t offset; tprint_struct_next(); tprints_field_name("val"); -@@ -296,7 +296,7 @@ btrfs_print_qgroup_inherit(struct tcb *const tcp, const kernel_ulong_t qgi_addr) +@@ -298,7 +298,7 @@ btrfs_print_qgroup_inherit(struct tcb *const tcp, const kernel_ulong_t qgi_addr) uint64_t record; tprint_struct_next(); tprints_field_name("qgroups"); - print_array(tcp, qgi_addr + offsetof(typeof(inherit), qgroups), + print_array(tcp, qgi_addr + offsetof(__typeof__(inherit), qgroups), inherit.num_qgroups, &record, sizeof(record), - tfetch_mem, print_uint64_array_member, 0); + tfetch_mem, print_uint_array_member, 0); } -@@ -1149,7 +1149,7 @@ MPERS_PRINTER_DECL(int, btrfs_ioctl, +@@ -1169,7 +1169,7 @@ MPERS_PRINTER_DECL(int, btrfs_ioctl, PRINT_FIELD_OBJ_PTR(args, key, print_btrfs_ioctl_search_key, entering(tcp), !abbrev(tcp)); @@ -57,7 +58,7 @@ index df2b35a7f..2c49dcc67 100644 sizeof(args.buf), args.key.nr_items); tprint_struct_end(); if (entering(tcp)) -@@ -1185,7 +1185,7 @@ MPERS_PRINTER_DECL(int, btrfs_ioctl, +@@ -1205,7 +1205,7 @@ MPERS_PRINTER_DECL(int, btrfs_ioctl, entering(tcp), !abbrev(tcp)); tprint_struct_next(); PRINT_FIELD_U(args, buf_size); @@ -66,7 +67,7 @@ index df2b35a7f..2c49dcc67 100644 args.buf_size, args.key.nr_items); tprint_struct_end(); if (entering(tcp)) -@@ -1263,7 +1263,7 @@ MPERS_PRINTER_DECL(int, btrfs_ioctl, +@@ -1283,7 +1283,7 @@ MPERS_PRINTER_DECL(int, btrfs_ioctl, struct btrfs_ioctl_space_info info; tprint_struct_next(); tprints_field_name("spaces"); @@ -76,10 +77,10 @@ index df2b35a7f..2c49dcc67 100644 &info, sizeof(info), tfetch_mem, print_btrfs_ioctl_space_info, 0); diff --git a/src/defs.h b/src/defs.h -index bbc8aa38f..d8f84b32b 100644 +index fd11d60c3..71cec62b4 100644 --- a/src/defs.h +++ b/src/defs.h -@@ -1047,7 +1047,7 @@ print_local_array_ex(struct tcb *tcp, +@@ -1089,7 +1089,7 @@ print_local_array_ex(struct tcb *tcp, # define print_local_array_upto(tcp_, start_addr_, upto_, print_func_) \ print_local_array_ex((tcp_), (start_addr_), \ CLAMP((upto_), 0, \ @@ -88,7 +89,7 @@ index bbc8aa38f..d8f84b32b 100644 sizeof((start_addr_)[0]), (print_func_), \ NULL, 0, NULL, NULL) -@@ -1793,8 +1793,8 @@ scno_is_valid(kernel_ulong_t scno) +@@ -1926,8 +1926,8 @@ scno_is_valid(kernel_ulong_t scno) # define ILOG2_ITER_(val_, ret_, bit_) \ do { \ @@ -125,19 +126,28 @@ index 7b51bc9f9..ee9a42754 100644 args.fm_mapped_extents, &fe, sizeof(fe), tfetch_mem, print_fiemap_extent, 0); } -diff --git a/src/gcc_compat.h b/src/gcc_compat.h -index 9b9bc9389..65f47f73f 100644 ---- a/src/gcc_compat.h -+++ b/src/gcc_compat.h -@@ -59,7 +59,7 @@ - # endif +diff --git a/src/landlock.c b/src/landlock.c +index d3ddb4edb..151bea7af 100644 +--- a/src/landlock.c ++++ b/src/landlock.c +@@ -19,7 +19,7 @@ print_landlock_ruleset_attr(struct tcb *tcp, const kernel_ulong_t addr, + { + struct landlock_ruleset_attr attr; + +- if (size < offsetofend(typeof(attr), handled_access_fs)) { ++ if (size < offsetofend(__typeof__(attr), handled_access_fs)) { + printaddr(addr); + return; + } +@@ -31,7 +31,7 @@ print_landlock_ruleset_attr(struct tcb *tcp, const kernel_ulong_t addr, + PRINT_FIELD_FLAGS(attr, handled_access_fs, landlock_ruleset_access_fs, + "LANDLOCK_ACCESS_FS_???"); - # if GNUC_PREREQ(3, 0) --# define SAME_TYPE(x, y) __builtin_types_compatible_p(typeof(x), typeof(y)) -+# define SAME_TYPE(x, y) __builtin_types_compatible_p(__typeof__(x), __typeof__(y)) - # define FAIL_BUILD_ON_ZERO(expr) (sizeof(int[-1 + 2 * !!(expr)]) * 0) - /* &(a)[0] is a pointer and not an array, shouldn't be treated as the same */ - # define MUST_BE_ARRAY(a) FAIL_BUILD_ON_ZERO(!SAME_TYPE((a), &(a)[0])) +- if (size > offsetofend(typeof(attr), handled_access_fs)) { ++ if (size > offsetofend(__typeof__(attr), handled_access_fs)) { + tprint_arg_next(); + tprint_more_data_follows(); + } diff --git a/src/list.h b/src/list.h index 4de4cb3be..f4ec11f0e 100644 --- a/src/list.h @@ -181,10 +191,10 @@ index 4de4cb3be..f4ec11f0e 100644 #endif /* !STRACE_LIST_H */ diff --git a/src/macros.h b/src/macros.h -index 467f5d042..be54782bf 100644 +index fc563ce2d..02f58d726 100644 --- a/src/macros.h +++ b/src/macros.h -@@ -39,7 +39,7 @@ +@@ -62,7 +62,7 @@ # define sizeof_field(type_, member_) (sizeof(((type_ *)0)->member_)) @@ -194,11 +204,11 @@ index 467f5d042..be54782bf 100644 # ifndef offsetofend # define offsetofend(type_, member_) \ diff --git a/src/net.c b/src/net.c -index b23911a97..9790943be 100644 +index 3ba2330fb..8d4458a70 100644 --- a/src/net.c +++ b/src/net.c -@@ -528,7 +528,7 @@ SYS_FUNC(socketpair) - #define MAYBE_PRINT_FIELD_LEN(print_prefix_, where_, field_, \ +@@ -524,7 +524,7 @@ SYS_FUNC(socketpair) + #define MAYBE_PRINT_FIELD_LEN(print_prefix_, where_, field_, \ len_, print_func_, ...) \ do { \ - unsigned int start = offsetof(typeof(where_), field_); \ @@ -206,6 +216,19 @@ index b23911a97..9790943be 100644 unsigned int end = start + sizeof(where_.field_); \ if (len_ > start) { \ print_prefix_; \ +diff --git a/src/tee.c b/src/tee.c +index d7e9b15d9..fc735e0da 100644 +--- a/src/tee.c ++++ b/src/tee.c +@@ -33,7 +33,7 @@ struct tee_ioctl_shm_register_fd_data { + + #define TEE_FETCH_BUF_DATA(buf_, arg_, params_) \ + tee_fetch_buf_data(tcp, arg, &buf_, sizeof(arg_), \ +- &arg_, offsetof(typeof(arg_), num_params), \ ++ &arg_, offsetof(__typeof__(arg_), num_params), \ + params_) + + /* session id is printed as 0x%x in libteec */ diff --git a/src/ubi.c b/src/ubi.c index bd2d2811e..ff9f88cd0 100644 --- a/src/ubi.c @@ -220,12 +243,12 @@ index bd2d2811e..ff9f88cd0 100644 tprint_struct_begin(); PRINT_FIELD_D(*p, vol_id); diff --git a/tests/btrfs.c b/tests/btrfs.c -index fd240259c..6d98c0b9c 100644 +index 867d93213..12ae01545 100644 --- a/tests/btrfs.c +++ b/tests/btrfs.c -@@ -849,7 +849,7 @@ btrfs_print_tree_search_buf(struct btrfs_ioctl_search_key *key, +@@ -876,7 +876,7 @@ btrfs_print_tree_search_buf(struct btrfs_ioctl_search_key *key, printf("buf=["); - for (i = 0; i < key->nr_items; i++) { + for (uint64_t i = 0; i < key->nr_items; ++i) { struct btrfs_ioctl_search_header *sh; - sh = (typeof(sh))(buf + off); + sh = (__typeof__(sh))(buf + off); @@ -233,11 +256,11 @@ index fd240259c..6d98c0b9c 100644 printf(", "); printf("{transid=%" PRI__u64 ", objectid=", diff --git a/tests/fcntl-common.c b/tests/fcntl-common.c -index 878a23c7c..0cfa23174 100644 +index 20f92dd1d..aa6ecc8f5 100644 --- a/tests/fcntl-common.c +++ b/tests/fcntl-common.c -@@ -22,7 +22,7 @@ - #define TEST_FLOCK64_EINVAL(cmd) test_flock64_einval(cmd, #cmd) +@@ -28,7 +28,7 @@ + #endif #ifdef HAVE_TYPEOF -# define TYPEOF_FLOCK_OFF_T typeof(((struct flock *) NULL)->l_len) @@ -246,5 +269,5 @@ index 878a23c7c..0cfa23174 100644 # define TYPEOF_FLOCK_OFF_T off_t #endif -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0003-Make-tcp_sysent-a-static-inline-function.patch b/pkg/strace/patch/0003-Make-tcp_sysent-a-static-inline-function.patch @@ -1,4 +1,4 @@ -From 21e7b497ab2009b9905566d3846c5aeb4d6db795 Mon Sep 17 00:00:00 2001 +From 42f2ce6f4e8cd2e6e1667088da58e237afc2cbb0 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sat, 6 Jul 2019 01:40:36 -0700 Subject: [PATCH] Make tcp_sysent a static inline function @@ -10,10 +10,10 @@ operator without evaluating the macro argument multiple times. 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/defs.h b/src/defs.h -index d8f84b32b..728e1fede 100644 +index 71cec62b4..56b2882b6 100644 --- a/src/defs.h +++ b/src/defs.h -@@ -390,8 +390,12 @@ struct tcb { +@@ -397,8 +397,12 @@ struct tcb { # define syscall_tampered_nofail(tcp) ((tcp)->flags & TCB_TAMPERED_NO_FAIL) # define has_seccomp_filter(tcp) ((tcp)->flags & TCB_SECCOMP_FILTER) @@ -29,5 +29,5 @@ index d8f84b32b..728e1fede 100644 # include "xlat.h" -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0004-Avoid-empty-initializer-lists.patch b/pkg/strace/patch/0004-Avoid-empty-initializer-lists.patch @@ -1,11 +1,11 @@ -From d34216667b2ae3823893e80e98e5b7cc0a37c166 Mon Sep 17 00:00:00 2001 +From d24d8f3d9a658f2732c99d92376a675af58aee25 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sat, 6 Jul 2019 01:54:05 -0700 Subject: [PATCH] Avoid empty initializer lists --- src/bpf.c | 4 ++-- - src/net.c | 2 +- + src/futex_waitv.c | 2 +- src/sched.c | 2 +- src/signal.c | 2 +- src/strace.c | 2 +- @@ -20,10 +20,10 @@ Subject: [PATCH] Avoid empty initializer lists 13 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/bpf.c b/src/bpf.c -index 3d25a8b90..b53dd98a2 100644 +index 801968048..841bb33e3 100644 --- a/src/bpf.c +++ b/src/bpf.c -@@ -42,7 +42,7 @@ bpf_cmd_decoder(struct tcb *const tcp, \ +@@ -43,7 +43,7 @@ bpf_cmd_decoder(struct tcb *const tcp, \ #define BEGIN_BPF_CMD_DECODER(bpf_cmd) \ static DECL_BPF_CMD_DECODER(decode_ ## bpf_cmd) \ { \ @@ -41,19 +41,19 @@ index 3d25a8b90..b53dd98a2 100644 struct ebpf_insn insn; print_array(tcp, addr, len, &insn, sizeof(insn), -diff --git a/src/net.c b/src/net.c -index 9790943be..ea2b71df8 100644 ---- a/src/net.c -+++ b/src/net.c -@@ -752,7 +752,7 @@ print_tpacket_stats(struct tcb *const tcp, const kernel_ulong_t addr, - static void - print_icmp_filter(struct tcb *const tcp, const kernel_ulong_t addr, int len) +diff --git a/src/futex_waitv.c b/src/futex_waitv.c +index 512ee715d..340201aa3 100644 +--- a/src/futex_waitv.c ++++ b/src/futex_waitv.c +@@ -49,7 +49,7 @@ print_waiter_array(struct tcb * const tcp, const kernel_ulong_t waiters, + const unsigned int nr_futexes) { -- struct icmp_filter filter = {}; -+ struct icmp_filter filter = {0}; + struct futex_waitv buf; +- struct print_waiter_data data = {}; ++ struct print_waiter_data data = {0}; - if (len > (int) sizeof(filter)) - len = sizeof(filter); + print_array(tcp, waiters, nr_futexes, &buf, sizeof(buf), + tfetch_mem, print_waiter, &data); diff --git a/src/sched.c b/src/sched.c index acd4d32cf..d7de19ada 100644 --- a/src/sched.c @@ -68,10 +68,10 @@ index acd4d32cf..d7de19ada 100644 bool is_set = false; diff --git a/src/signal.c b/src/signal.c -index 5fc0789c3..cdea7f5b8 100644 +index fc13a6613..f7b6e6e49 100644 --- a/src/signal.c +++ b/src/signal.c -@@ -249,7 +249,7 @@ print_sigset_addr_len_limit(struct tcb *const tcp, const kernel_ulong_t addr, +@@ -257,7 +257,7 @@ print_sigset_addr_len_limit(struct tcb *const tcp, const kernel_ulong_t addr, printaddr(addr); return; } @@ -81,10 +81,10 @@ index 5fc0789c3..cdea7f5b8 100644 return; tprints(sprintsigmask_n("", mask, len)); diff --git a/src/strace.c b/src/strace.c -index 61a598cb1..e67121d9a 100644 +index 7370275e1..d12e1f34a 100644 --- a/src/strace.c +++ b/src/strace.c -@@ -3436,7 +3436,7 @@ trace_syscall(struct tcb *tcp, unsigned int *sig) +@@ -3532,7 +3532,7 @@ trace_syscall(struct tcb *tcp, unsigned int *sig) syscall_entering_finish(tcp, res); return res; } else { @@ -94,10 +94,10 @@ index 61a598cb1..e67121d9a 100644 if (res != 0) { res = syscall_exiting_trace(tcp, &ts, res); diff --git a/tests/btrfs.c b/tests/btrfs.c -index 6d98c0b9c..a0e587479 100644 +index 12ae01545..a821d8057 100644 --- a/tests/btrfs.c +++ b/tests/btrfs.c -@@ -279,7 +279,7 @@ btrfs_test_subvol_ioctls(void) +@@ -313,7 +313,7 @@ btrfs_test_subvol_ioctls(void) char *long_subvol_name; void *bad_pointer = (void *) (unsigned long) 0xdeadbeeffffffeedULL; uint64_t u64val = 0xdeadbeefbadc0dedULL; @@ -106,7 +106,7 @@ index 6d98c0b9c..a0e587479 100644 struct btrfs_ioctl_vol_args_v2 vol_args_v2 = { .fd = 2, .flags = max_flags_plus_one(2), -@@ -526,7 +526,7 @@ btrfs_test_balance_ioctls(void) +@@ -554,7 +554,7 @@ btrfs_test_balance_ioctls(void) .devid = 1, }, }; @@ -115,7 +115,7 @@ index 6d98c0b9c..a0e587479 100644 ioctl(-1, BTRFS_IOC_BALANCE_CTL, 1); printf("ioctl(-1, %s, %sBTRFS_BALANCE_CTL_PAUSE%s) = -1 EBADF (%m)\n", -@@ -736,7 +736,7 @@ btrfs_print_defrag_range_args(struct btrfs_ioctl_defrag_range_args *args, +@@ -764,7 +764,7 @@ btrfs_print_defrag_range_args(struct btrfs_ioctl_defrag_range_args *args, static void btrfs_test_defrag_ioctls(void) { @@ -124,7 +124,7 @@ index 6d98c0b9c..a0e587479 100644 struct btrfs_ioctl_defrag_range_args args = { .start = 0, .len = -1ULL, -@@ -1065,7 +1065,7 @@ btrfs_test_ino_lookup_ioctl(void) +@@ -1092,7 +1092,7 @@ btrfs_test_ino_lookup_ioctl(void) static void btrfs_test_space_info_ioctl(void) { @@ -186,10 +186,10 @@ index d4953f6f8..60d54fbd8 100644 continue; rlimit[0] = libc_rlim.rlim_cur; diff --git a/tests/timer_create.c b/tests/timer_create.c -index 1059a01d8..692eecf03 100644 +index af91da0d3..a0a79f1ad 100644 --- a/tests/timer_create.c +++ b/tests/timer_create.c -@@ -26,7 +26,7 @@ main(void) +@@ -24,7 +24,7 @@ main(void) printf("timer_create(CLOCK_REALTIME, NULL, NULL) = -1 %s (%m)\n", errno2name()); @@ -225,5 +225,5 @@ index a14899530..b08881ae7 100644 assert(sigprocmask(SIG_BLOCK, &mask, NULL) == 0); -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0005-Avoid-pointer-arithmetic-on-void.patch b/pkg/strace/patch/0005-Avoid-pointer-arithmetic-on-void.patch @@ -1,4 +1,4 @@ -From 3e8180da79247998e838a028112e8b86a43e8172 Mon Sep 17 00:00:00 2001 +From 4cd0019ddd66505ce71f0cffa3627a4a038640ef Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sun, 7 Jul 2019 21:25:13 -0700 Subject: [PATCH] Avoid pointer arithmetic on `void *` @@ -6,15 +6,16 @@ Subject: [PATCH] Avoid pointer arithmetic on `void *` --- src/netlink_smc_diag.c | 4 ++-- src/print_timespec.h | 6 ++++-- - src/sockaddr.c | 2 +- - src/ucopy.c | 10 +++++----- - 4 files changed, 12 insertions(+), 10 deletions(-) + src/sockaddr.c | 4 ++-- + src/tee.c | 2 +- + src/ucopy.c | 12 ++++++------ + 5 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/netlink_smc_diag.c b/src/netlink_smc_diag.c -index 7d2872dc9..fd6c276cb 100644 +index f7ff06b6b..dbf5be980 100644 --- a/src/netlink_smc_diag.c +++ b/src/netlink_smc_diag.c -@@ -41,7 +41,7 @@ DECL_NETLINK_DIAG_DECODER(decode_smc_diag_req) +@@ -42,7 +42,7 @@ DECL_NETLINK_DIAG_DECODER(decode_smc_diag_req) if (len >= sizeof(req)) { if (!umoven_or_printaddr(tcp, addr + offset, sizeof(req) - offset, @@ -59,10 +60,10 @@ index 9603a6bb6..f5f747c42 100644 tprint_array_end(); diff --git a/src/sockaddr.c b/src/sockaddr.c -index 3da702153..9487741d6 100644 +index a6e698d4b..52c10eac4 100644 --- a/src/sockaddr.c +++ b/src/sockaddr.c -@@ -497,7 +497,7 @@ print_sockaddr_data_ll(struct tcb *tcp, const void *const buf, +@@ -580,7 +580,7 @@ print_sockaddr_data_ll(struct tcb *tcp, const void *const buf, static void print_sockaddr_data_raw(const void *const buf, const int addrlen) { @@ -71,8 +72,30 @@ index 3da702153..9487741d6 100644 const int datalen = addrlen - SIZEOF_SA_FAMILY; tprints_field_name("sa_data"); +@@ -777,7 +777,7 @@ print_sockaddr_data_rxrpc(struct tcb *tcp, const void *const buf, + tprints_field_name("transport"); + tprint_struct_begin(); + +- const void *const transport_buf = (void *) &sa->transport ++ const void *const transport_buf = (char *) &sa->transport + + sizeof(sa->transport.family); + const int transport_len = MIN(sa->transport_len, + len - offsetof(struct sockaddr_rxrpc, +diff --git a/src/tee.c b/src/tee.c +index fc735e0da..f705a7a94 100644 +--- a/src/tee.c ++++ b/src/tee.c +@@ -69,7 +69,7 @@ tee_fetch_buf_data(struct tcb *const tcp, + tee_print_buf(buf); + return RVAL_IOCTL_DECODED; + } +- uint32_t *num_params = (uint32_t *) (arg_struct + num_params_offs); ++ uint32_t *num_params = (uint32_t *) ((char *)arg_struct + num_params_offs); + if (entering(tcp) && + (arg_size + TEE_IOCTL_PARAM_SIZE(*num_params) != buf->buf_len)) { + /* diff --git a/src/ucopy.c b/src/ucopy.c -index 6cebb8e26..e8ca2ad5d 100644 +index c769a1916..ed401ae74 100644 --- a/src/ucopy.c +++ b/src/ucopy.c @@ -186,7 +186,7 @@ vm_read_mem(const pid_t pid, void *laddr, @@ -84,8 +107,8 @@ index 6cebb8e26..e8ca2ad5d 100644 page_start += page_size; taddr = page_start; } -@@ -278,7 +278,7 @@ umoven_peekdata(const int pid, kernel_ulong_t addr, unsigned int len, - memcpy(laddr, &u.x[residue], m); +@@ -282,7 +282,7 @@ umoven_peekdata(const int pid, kernel_ulong_t addr, unsigned int len, + memcpy(laddr, &u.data[residue], m); residue = 0; addr += sizeof(long); - laddr += m; @@ -93,10 +116,10 @@ index 6cebb8e26..e8ca2ad5d 100644 nread += m; len -= m; } -@@ -375,10 +375,10 @@ umovestr_peekdata(const int pid, kernel_ulong_t addr, unsigned int len, - memcpy(laddr, &u.x[residue], m); +@@ -378,10 +378,10 @@ umovestr_peekdata(const int pid, kernel_ulong_t addr, unsigned int len, + memcpy(laddr, &u.data[residue], m); while (residue < sizeof(long)) - if (u.x[residue++] == '\0') + if (u.data[residue++] == '\0') - return (laddr - orig_addr) + residue; + return nread + residue; residue = 0; @@ -106,7 +129,16 @@ index 6cebb8e26..e8ca2ad5d 100644 nread += m; len -= m; } -@@ -509,7 +509,7 @@ upoken_pokedata(const int pid, kernel_ulong_t addr, unsigned int len, +@@ -502,7 +502,7 @@ upoken_pokedata(const int pid, kernel_ulong_t addr, unsigned int len, + + addr += sizeof(long); + nwritten += npoke; +- our_addr += npoke; ++ our_addr = (char *)our_addr + npoke; + len -= npoke; + } + +@@ -515,7 +515,7 @@ upoken_pokedata(const int pid, kernel_ulong_t addr, unsigned int len, addr += sizeof(long); nwritten += sizeof(long); @@ -116,5 +148,5 @@ index 6cebb8e26..e8ca2ad5d 100644 } -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0006-Avoid-empty-struct-definition.patch b/pkg/strace/patch/0006-Avoid-empty-struct-definition.patch @@ -1,4 +1,4 @@ -From 4abe148a0e2dc930a5cdb8d92e88af203898368a Mon Sep 17 00:00:00 2001 +From f94d470d85911142bff6cb3821079f3ff321edfc Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sun, 7 Jul 2019 21:50:31 -0700 Subject: [PATCH] Avoid empty struct definition @@ -34,5 +34,5 @@ index b5125d420..b45a48da5 100644 return false; -- -2.30.0 +2.34.1 diff --git a/pkg/strace/patch/0007-Don-t-omit-second-operand-to-operator.patch b/pkg/strace/patch/0007-Don-t-omit-second-operand-to-operator.patch @@ -1,19 +1,33 @@ -From bf1b06786d4a813efd06e179ce0db5a991312400 Mon Sep 17 00:00:00 2001 +From 91ba17ac11b0994dc28019a7b643d479a2f201c5 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sun, 7 Jul 2019 21:53:16 -0700 Subject: [PATCH] Don't omit second operand to '?' operator --- - src/open.c | 5 +++-- - src/prctl.c | 2 +- - src/strace.c | 6 +++--- - 3 files changed, 7 insertions(+), 6 deletions(-) + src/kd_ioctl.c | 2 +- + src/open.c | 5 +++-- + src/prctl.c | 2 +- + src/strace.c | 6 +++--- + 4 files changed, 8 insertions(+), 7 deletions(-) +diff --git a/src/kd_ioctl.c b/src/kd_ioctl.c +index eadc1a457..35a89ffed 100644 +--- a/src/kd_ioctl.c ++++ b/src/kd_ioctl.c +@@ -449,7 +449,7 @@ kd_kbd_str_entry(struct tcb *const tcp, const kernel_ulong_t arg, + + if (print_quoted_string((char *) val.kb_string, + MIN(max_strlen, +- (unsigned int) ret ?: sizeof(val.kb_string)), ++ ret ? (unsigned int) ret : sizeof(val.kb_string)), + QUOTE_OMIT_TRAILING_0)) + tprint_more_data_follows(); + diff --git a/src/open.c b/src/open.c -index 1dd79e9dc..9aaff9ec9 100644 +index d7654d7e8..6c5c4a2a5 100644 --- a/src/open.c +++ b/src/open.c -@@ -63,8 +63,9 @@ sprint_open_modes64(uint64_t flags) +@@ -88,8 +88,9 @@ sprint_open_modes64(uint64_t flags) } *p = '\0'; @@ -26,10 +40,10 @@ index 1dd79e9dc..9aaff9ec9 100644 const char * diff --git a/src/prctl.c b/src/prctl.c -index 62e79510e..cb4379e57 100644 +index 4275e5f70..a52b3348d 100644 --- a/src/prctl.c +++ b/src/prctl.c -@@ -67,7 +67,7 @@ sprint_sve_val(kernel_ulong_t arg) +@@ -80,7 +80,7 @@ sprint_sve_val(kernel_ulong_t arg) const char *flags_str = sprintflags("", pr_sve_vl_flags, flags); xsprintf(out, "%s%s%#" PRI_klx, @@ -39,10 +53,10 @@ index 62e79510e..cb4379e57 100644 return out; } diff --git a/src/strace.c b/src/strace.c -index e67121d9a..6e9425272 100644 +index d12e1f34a..85c8568fe 100644 --- a/src/strace.c +++ b/src/strace.c -@@ -2290,7 +2290,7 @@ init(int argc, char *argv[]) +@@ -2380,7 +2380,7 @@ init(int argc, char *argv[]) break; case GETOPT_TS: tflag_long_set = true; @@ -51,7 +65,7 @@ index e67121d9a..6e9425272 100644 error_opt_arg(c, lopt, optarg); break; case 'T': -@@ -2401,10 +2401,10 @@ init(int argc, char *argv[]) +@@ -2488,10 +2488,10 @@ init(int argc, char *argv[]) qualify_kvm(optarg); break; case GETOPT_QUAL_QUIET: @@ -62,8 +76,8 @@ index e67121d9a..6e9425272 100644 - qualify_decode_fd(optarg ?: yflag_qual); + qualify_decode_fd(optarg ? optarg : yflag_qual); break; - default: - error_msg_and_help(NULL); + case GETOPT_QUAL_DECODE_PID: + qualify_decode_pid(optarg); -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0008-Avoid-unnecessary-VLAs.patch b/pkg/strace/patch/0008-Avoid-unnecessary-VLAs.patch @@ -1,4 +1,4 @@ -From 6fcedfbc61c7f5b8896635407f0d6f4da1fea06b Mon Sep 17 00:00:00 2001 +From fa5aa4ec41eafb8a65732dd599bd645a8650d0d1 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sun, 7 Jul 2019 21:58:46 -0700 Subject: [PATCH] Avoid unnecessary VLAs @@ -12,7 +12,7 @@ Subject: [PATCH] Avoid unnecessary VLAs 5 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/count.c b/src/count.c -index afd4b3758..c1ed46588 100644 +index e4f362787..ad203748b 100644 --- a/src/count.c +++ b/src/count.c @@ -414,7 +414,7 @@ call_summary_pers(FILE *outf) @@ -25,10 +25,10 @@ index afd4b3758..c1ed46588 100644 const size_t c = columns[i]; diff --git a/src/nlattr.c b/src/nlattr.c -index c007cc8b5..bc8287c1c 100644 +index 9b4879a84..ffa8be53e 100644 --- a/src/nlattr.c +++ b/src/nlattr.c -@@ -344,7 +344,7 @@ decode_nla_hwaddr(struct tcb *const tcp, +@@ -356,7 +356,7 @@ decode_nla_hwaddr(struct tcb *const tcp, if (len > MAX_ADDR_LEN) return false; @@ -38,10 +38,10 @@ index c007cc8b5..bc8287c1c 100644 if (!umoven_or_printaddr(tcp, addr, len, buf)) { diff --git a/src/socketutils.c b/src/socketutils.c -index 40a8c1991..1482787ff 100644 +index 4994cd6d9..0a3102347 100644 --- a/src/socketutils.c +++ b/src/socketutils.c -@@ -144,7 +144,7 @@ inet_parse_response(const void *const data, const int data_len, +@@ -133,7 +133,7 @@ inet_parse_response(const void *const data, const int data_len, return -1; } @@ -50,7 +50,7 @@ index 40a8c1991..1482787ff 100644 char *details; /* open/closing brackets for IPv6 addresses */ -@@ -157,7 +157,7 @@ inet_parse_response(const void *const data, const int data_len, +@@ -146,7 +146,7 @@ inet_parse_response(const void *const data, const int data_len, if (diag_msg->id.idiag_dport || memcmp(zero_addr, diag_msg->id.idiag_dst, addr_size)) { @@ -60,10 +60,10 @@ index 40a8c1991..1482787ff 100644 if (!inet_ntop(diag_msg->idiag_family, diag_msg->id.idiag_dst, dst_buf, text_size)) diff --git a/src/syscall.c b/src/syscall.c -index ebe5dd9b6..dc5997a94 100644 +index 92aaee092..159a2a511 100644 --- a/src/syscall.c +++ b/src/syscall.c -@@ -304,7 +304,7 @@ decode_socket_subcall(struct tcb *tcp) +@@ -287,7 +287,7 @@ decode_socket_subcall(struct tcb *tcp) const kernel_ulong_t scno = SYS_socket_subcall + call; const unsigned int nargs = sysent[scno].nargs; @@ -73,10 +73,10 @@ index ebe5dd9b6..dc5997a94 100644 if (umoven(tcp, tcp->u_arg[1], nargs * current_wordsize, buf) < 0) return; diff --git a/src/util.c b/src/util.c -index e87ac94b0..063db0382 100644 +index 302496d36..4ed870ac6 100644 --- a/src/util.c +++ b/src/util.c -@@ -508,8 +508,7 @@ enum sock_proto +@@ -571,8 +571,7 @@ enum sock_proto getfdproto(struct tcb *tcp, int fd) { #ifdef HAVE_SYS_XATTR_H @@ -86,15 +86,15 @@ index e87ac94b0..063db0382 100644 ssize_t r; char path[sizeof("/proc/%u/fd/%u") + 2 * sizeof(int)*3]; -@@ -517,7 +516,7 @@ getfdproto(struct tcb *tcp, int fd) +@@ -580,7 +579,7 @@ getfdproto(struct tcb *tcp, int fd) return SOCK_PROTO_UNKNOWN; - xsprintf(path, "/proc/%u/fd/%u", get_proc_pid(tcp), fd); + xsprintf(path, "/proc/%u/fd/%u", get_proc_pid(tcp->pid), fd); - r = getxattr(path, "system.sockprotoname", buf, bufsize - 1); + r = getxattr(path, "system.sockprotoname", buf, sizeof(buf) - 1); if (r <= 0) return SOCK_PROTO_UNKNOWN; else { -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0009-Avoid-index-ranges-and-empty-initializer-lists-in-sy.patch b/pkg/strace/patch/0009-Avoid-index-ranges-and-empty-initializer-lists-in-sy.patch @@ -1,4 +1,4 @@ -From b8db0d40427b083351f080cfd151346f23302e03 Mon Sep 17 00:00:00 2001 +From 4facb9769bda85852c9bc8f54b85073314568d04 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Sun, 7 Jul 2019 22:29:34 -0700 Subject: [PATCH] Avoid index ranges and empty initializer lists in syscallent @@ -18,14 +18,14 @@ Subject: [PATCH] Avoid index ranges and empty initializer lists in syscallent src/linux/s390/syscallent.h | 42 ++++++++-------- src/linux/s390x/syscallent.h | 78 +++++++++++++++--------------- src/linux/sh/syscallent.h | 12 ++--- - src/linux/sh64/syscallent.h | 22 ++++++--- + src/linux/sh64/syscallent.h | 18 +++---- src/linux/sparc/syscallent.h | 4 +- src/linux/sparc64/syscallent.h | 36 +++++++------- src/linux/xtensa/syscallent.h | 32 ++++++------ - 17 files changed, 173 insertions(+), 167 deletions(-) + 17 files changed, 168 insertions(+), 168 deletions(-) diff --git a/src/linux/alpha/syscallent.h b/src/linux/alpha/syscallent.h -index f9e971ed3..36f29509b 100644 +index 87cbe59bd..88bc0a5a4 100644 --- a/src/linux/alpha/syscallent.h +++ b/src/linux/alpha/syscallent.h @@ -60,7 +60,7 @@ @@ -150,7 +150,7 @@ index f9e971ed3..36f29509b 100644 [406] = { 3, 0, SEN(lookup_dcookie), "lookup_dcookie" }, [407] = { 1, TD, SEN(epoll_create), "epoll_create" }, diff --git a/src/linux/arm/syscallent.h b/src/linux/arm/syscallent.h -index 4fd351305..3ec054c84 100644 +index 2086308a2..f4d808f2d 100644 --- a/src/linux/arm/syscallent.h +++ b/src/linux/arm/syscallent.h @@ -433,7 +433,7 @@ @@ -163,7 +163,7 @@ index 4fd351305..3ec054c84 100644 [ARM_FIRST_SHUFFLED_SYSCALL+1+2] = { 3, TM, SEN(printargs), "cacheflush" }, [ARM_FIRST_SHUFFLED_SYSCALL+1+3] = { 0, 0, SEN(printargs), "usr26" }, diff --git a/src/linux/avr32/syscallent.h b/src/linux/avr32/syscallent.h -index 5d4624abe..14aff66a2 100644 +index 104044e5f..1b3f3c64e 100644 --- a/src/linux/avr32/syscallent.h +++ b/src/linux/avr32/syscallent.h @@ -228,7 +228,7 @@ @@ -185,7 +185,7 @@ index 5d4624abe..14aff66a2 100644 [284] = { 5, TD, SEN(pread), "pread64" }, [285] = { 5, TD, SEN(pwrite), "pwrite64" }, diff --git a/src/linux/bfin/syscallent.h b/src/linux/bfin/syscallent.h -index 16287d085..90f55b5c2 100644 +index 05720b4f9..abef9f5c6 100644 --- a/src/linux/bfin/syscallent.h +++ b/src/linux/bfin/syscallent.h @@ -229,7 +229,7 @@ @@ -198,7 +198,7 @@ index 16287d085..90f55b5c2 100644 [225] = { 4, TD, SEN(readahead), "readahead" }, [226] = { 5, TF, SEN(setxattr), "setxattr" }, diff --git a/src/linux/i386/syscallent.h b/src/linux/i386/syscallent.h -index 3c4cb9fe4..fe9e8b4a6 100644 +index 3553a0575..4ae813d43 100644 --- a/src/linux/i386/syscallent.h +++ b/src/linux/i386/syscallent.h @@ -229,7 +229,7 @@ @@ -229,7 +229,7 @@ index 3c4cb9fe4..fe9e8b4a6 100644 [287] = { 4, 0, SEN(request_key), "request_key" }, [288] = { 5, 0, SEN(keyctl), "keyctl" }, diff --git a/src/linux/m68k/syscallent.h b/src/linux/m68k/syscallent.h -index 67f66d719..2205f4982 100644 +index 3abd77b0c..d861832e2 100644 --- a/src/linux/m68k/syscallent.h +++ b/src/linux/m68k/syscallent.h @@ -225,7 +225,7 @@ @@ -242,7 +242,7 @@ index 67f66d719..2205f4982 100644 [221] = { 0, PU|NF, SEN(gettid), "gettid" }, [222] = { 2, TS|TP, SEN(tkill), "tkill" }, diff --git a/src/linux/microblaze/syscallent.h b/src/linux/microblaze/syscallent.h -index d3446abdb..7d8c7394f 100644 +index 15ca048ca..7c86c2d07 100644 --- a/src/linux/microblaze/syscallent.h +++ b/src/linux/microblaze/syscallent.h @@ -229,7 +229,7 @@ @@ -437,7 +437,7 @@ index 29cc42632..b1274f890 100644 [3261] = { 0, 0, SEN(printargs), "posix_netunboot" }, [3262] = { 0, 0, SEN(printargs), "posix_rdump" }, diff --git a/src/linux/powerpc/syscallent.h b/src/linux/powerpc/syscallent.h -index 98b29e5e8..38056daf6 100644 +index c8f954be4..c47134fd5 100644 --- a/src/linux/powerpc/syscallent.h +++ b/src/linux/powerpc/syscallent.h @@ -231,7 +231,7 @@ @@ -450,7 +450,7 @@ index 98b29e5e8..38056daf6 100644 [226] = { 4, TD|TN, SEN(sendfile64), "sendfile64" }, [227] = { 2, TM, SEN(io_setup), "io_setup" }, diff --git a/src/linux/powerpc64/syscallent.h b/src/linux/powerpc64/syscallent.h -index a5035cb31..86ffe0099 100644 +index 64f4c3ad5..6d6b3fa74 100644 --- a/src/linux/powerpc64/syscallent.h +++ b/src/linux/powerpc64/syscallent.h @@ -199,14 +199,14 @@ @@ -492,7 +492,7 @@ index a5035cb31..86ffe0099 100644 [256] = { 5, 0, SEN(printargs), "sys_debug_setcontext" }, [257] = { 5, 0, SEN(vserver), "vserver" }, diff --git a/src/linux/s390/syscallent.h b/src/linux/s390/syscallent.h -index 5b83b3d15..ccb956441 100644 +index a808c7b5b..8f7a0aca0 100644 --- a/src/linux/s390/syscallent.h +++ b/src/linux/s390/syscallent.h @@ -26,8 +26,8 @@ @@ -626,12 +626,12 @@ index 5b83b3d15..ccb956441 100644 [244] = { 1, TM, SEN(io_destroy), "io_destroy" }, [245] = { 5, 0, SEN(io_getevents_time32), "io_getevents" }, diff --git a/src/linux/s390x/syscallent.h b/src/linux/s390x/syscallent.h -index d64141075..8225b5ec4 100644 +index 90bf993b7..8c03af9d9 100644 --- a/src/linux/s390x/syscallent.h +++ b/src/linux/s390x/syscallent.h @@ -21,29 +21,29 @@ [ 10] = { 1, TF, SEN(unlink), "unlink" }, - [ 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" }, + [ 11] = { 3, CC|TF|TP|TSD|SE|SI, SEN(execve), "execve" }, [ 12] = { 1, TF, SEN(chdir), "chdir" }, -[ 13] = { }, +/* [ 13] - unused */ @@ -785,7 +785,7 @@ index d64141075..8225b5ec4 100644 [169] = { 3, 0, SEN(nfsservctl), "nfsservctl" }, -[170 ... 171] = { }, +/* [170 ... 171] - unused */ - [172] = { 5, TC, SEN(prctl), "prctl" }, + [172] = { 5, CC|TC, SEN(prctl), "prctl" }, [173] = { 0, TS, SEN(rt_sigreturn), "rt_sigreturn" }, [174] = { 4, TS, SEN(rt_sigaction), "rt_sigaction" }, @@ -180,7 +180,7 @@ @@ -837,7 +837,7 @@ index d64141075..8225b5ec4 100644 [266] = { 3, TD|TFSF|TSFA, SEN(fstatfs64), "fstatfs64" }, [267] = { 5, TM|SI, SEN(remap_file_pages), "remap_file_pages" }, diff --git a/src/linux/sh/syscallent.h b/src/linux/sh/syscallent.h -index 64f3d6f1f..d79c2e8ed 100644 +index c238f0400..a95f0db99 100644 --- a/src/linux/sh/syscallent.h +++ b/src/linux/sh/syscallent.h @@ -197,7 +197,7 @@ @@ -894,7 +894,7 @@ index 64f3d6f1f..d79c2e8ed 100644 [295] = { 4, TD|TF, SEN(openat), "openat" }, [296] = { 3, TD|TF, SEN(mkdirat), "mkdirat" }, diff --git a/src/linux/sh64/syscallent.h b/src/linux/sh64/syscallent.h -index 94e6cea3a..ad192a1b9 100644 +index f33504235..646eb6f4a 100644 --- a/src/linux/sh64/syscallent.h +++ b/src/linux/sh64/syscallent.h @@ -89,7 +89,7 @@ @@ -915,23 +915,16 @@ index 94e6cea3a..ad192a1b9 100644 [114] = { 4, TP, SEN(wait4), "wait4" }, [115] = { 1, TF, SEN(swapoff), "swapoff" }, [116] = { 1, 0, SEN(sysinfo), "sysinfo" }, -@@ -171,9 +171,15 @@ - [161] = { 2, 0, SEN(sched_rr_get_interval_time64),"sched_rr_get_interval"}, - [162] = { 2, 0, SEN(nanosleep_time64), "nanosleep" }, +@@ -173,7 +173,7 @@ [163] = { 5, TM|SI, SEN(mremap), "mremap" }, -+<<<<<<< HEAD [164] = { 3, TC, SEN(setresuid16), "setresuid" }, [165] = { 3, TC, SEN(getresuid16), "getresuid" }, - [166] = { }, -+======= -+[164] = { 3, 0, SEN(setresuid16), "setresuid" }, -+[165] = { 3, 0, SEN(getresuid16), "getresuid" }, +-[166] = { }, +/* [166] - unused */ -+>>>>>>> c63898a0... Avoid index ranges and empty initializer lists in syscallent arrays [167] = { 5, 0, SEN(query_module), "query_module" }, [168] = { 3, TD, SEN(poll_time64), "poll" }, [169] = { 3, 0, SEN(nfsservctl), "nfsservctl" }, -@@ -195,7 +201,7 @@ +@@ -195,7 +195,7 @@ [185] = { 2, TC, SEN(capset), "capset" }, [186] = { 2, TS, SEN(sigaltstack), "sigaltstack" }, [187] = { 4, TD|TN, SEN(sendfile), "sendfile" }, @@ -940,7 +933,7 @@ index 94e6cea3a..ad192a1b9 100644 [190] = { 0, TP, SEN(vfork), "vfork" }, [191] = { 2, 0, SEN(getrlimit), "ugetrlimit" }, [192] = { 6, TD|TM|SI, SEN(mmap_4koff), "mmap2" }, -@@ -256,7 +262,7 @@ +@@ -256,7 +256,7 @@ [247] = { 3, TI, SEN(shmctl), "shmctl" }, [248] = { 3, TD, SEN(getdents64), "getdents64" }, [249] = { 3, TD, SEN(fcntl64), "fcntl64" }, @@ -949,7 +942,7 @@ index 94e6cea3a..ad192a1b9 100644 [252] = { 0, PU|NF, SEN(gettid), "gettid" }, [253] = { 3, TD, SEN(readahead), "readahead" }, [254] = { 5, TF, SEN(setxattr), "setxattr" }, -@@ -276,14 +282,14 @@ +@@ -276,14 +276,14 @@ [268] = { 6, 0, SEN(futex_time64), "futex" }, [269] = { 3, 0, SEN(sched_setaffinity), "sched_setaffinity" }, [270] = { 3, 0, SEN(sched_getaffinity), "sched_getaffinity" }, @@ -966,7 +959,7 @@ index 94e6cea3a..ad192a1b9 100644 [280] = { 1, TP|SE, SEN(exit), "exit_group" }, [281] = { 3, 0, SEN(lookup_dcookie), "lookup_dcookie" }, [282] = { 1, TD, SEN(epoll_create), "epoll_create" }, -@@ -305,7 +311,7 @@ +@@ -305,7 +305,7 @@ [298] = { 3, TS|TP, SEN(tgkill), "tgkill" }, [299] = { 2, TF, SEN(utimes), "utimes" }, [300] = { 4, TD, SEN(fadvise64_64), "fadvise64_64" }, @@ -975,7 +968,7 @@ index 94e6cea3a..ad192a1b9 100644 [302] = { 6, TM, SEN(mbind), "mbind" }, [303] = { 5, TM, SEN(get_mempolicy), "get_mempolicy" }, [304] = { 3, TM, SEN(set_mempolicy), "set_mempolicy" }, -@@ -325,7 +331,7 @@ +@@ -325,7 +325,7 @@ [318] = { 0, TD, SEN(inotify_init), "inotify_init" }, [319] = { 3, TD|TF, SEN(inotify_add_watch), "inotify_add_watch" }, [320] = { 2, TD, SEN(inotify_rm_watch), "inotify_rm_watch" }, @@ -985,7 +978,7 @@ index 94e6cea3a..ad192a1b9 100644 [323] = { 4, TD|TF, SEN(openat), "openat" }, [324] = { 3, TD|TF, SEN(mkdirat), "mkdirat" }, diff --git a/src/linux/sparc/syscallent.h b/src/linux/sparc/syscallent.h -index e3321f448..1f83f1619 100644 +index 55d10ec5d..e0d74b014 100644 --- a/src/linux/sparc/syscallent.h +++ b/src/linux/sparc/syscallent.h @@ -57,7 +57,7 @@ @@ -1007,7 +1000,7 @@ index e3321f448..1f83f1619 100644 [166] = { 1, 0, SEN(set_tid_address), "set_tid_address" }, [167] = { 5, TF, SEN(mount), "mount" }, diff --git a/src/linux/sparc64/syscallent.h b/src/linux/sparc64/syscallent.h -index 94471f0c7..f0bfccd56 100644 +index 9cd51431d..78278a045 100644 --- a/src/linux/sparc64/syscallent.h +++ b/src/linux/sparc64/syscallent.h @@ -36,10 +36,10 @@ @@ -1044,7 +1037,7 @@ index 94471f0c7..f0bfccd56 100644 +/* [ 56] - unused */ [ 57] = { 2, TF, SEN(symlink), "symlink" }, [ 58] = { 3, TF, SEN(readlink), "readlink" }, - [ 59] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" }, + [ 59] = { 3, CC|TF|TP|TSD|SE|SI, SEN(execve), "execve" }, @@ -73,31 +73,31 @@ [ 66] = { 0, TP, SEN(vfork), "vfork" }, [ 67] = { 4, TD, SEN(pread), "pread64" }, @@ -1118,7 +1111,7 @@ index 94471f0c7..f0bfccd56 100644 [233] = { 1, 0, SEN(stime), "stime" }, [234] = { 3, TF|TSF|TSFA, SEN(statfs64), "statfs64" }, diff --git a/src/linux/xtensa/syscallent.h b/src/linux/xtensa/syscallent.h -index eb6425d53..5289872d7 100644 +index 09fed329c..69d58ec6d 100644 --- a/src/linux/xtensa/syscallent.h +++ b/src/linux/xtensa/syscallent.h @@ -7,7 +7,7 @@ @@ -1243,5 +1236,5 @@ index eb6425d53..5289872d7 100644 [321] = { 6, TD|TF, SEN(fanotify_mark), "fanotify_mark" }, [322] = { 6, 0, SEN(process_vm_readv), "process_vm_readv" }, -- -2.30.0 +2.34.1 diff --git a/pkg/strace/patch/0010-Use-alloca-when-VLAs-aren-t-available.patch b/pkg/strace/patch/0010-Use-alloca-when-VLAs-aren-t-available.patch @@ -1,4 +1,4 @@ -From 1c1cc6c87f4388ef1e7259fee347a0c36fe11bac Mon Sep 17 00:00:00 2001 +From 4673bf0d6a0eba5d363266a40cfb087e08a66e7f Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Thu, 30 Jan 2020 21:57:34 -0800 Subject: [PATCH] Use alloca when VLAs aren't available @@ -8,10 +8,10 @@ Subject: [PATCH] Use alloca when VLAs aren't available 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/evdev.c b/src/evdev.c -index 08d5d9034..01b87ca3e 100644 +index 81dd951cb..74a765469 100644 --- a/src/evdev.c +++ b/src/evdev.c -@@ -161,9 +161,13 @@ decode_bitset(struct tcb *const tcp, const kernel_ulong_t arg, +@@ -164,9 +164,13 @@ decode_bitset(struct tcb *const tcp, const kernel_ulong_t arg, return RVAL_IOCTL_DECODED; } @@ -27,5 +27,5 @@ index 08d5d9034..01b87ca3e 100644 if (xlat_verbose(xlat_verbosity) != XLAT_STYLE_RAW) { -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/0011-Avoid-index-ranges.patch b/pkg/strace/patch/0011-Avoid-index-ranges.patch @@ -1,4 +1,4 @@ -From 499954f5529fb95ed5bc435ff79c320d7f3e8ee9 Mon Sep 17 00:00:00 2001 +From ec81ad56aec0cdfe0eff2cd4cb9ea396e3ab9794 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Thu, 30 Jan 2020 22:32:50 -0800 Subject: [PATCH] Avoid index ranges @@ -11,7 +11,7 @@ ignore this for now. 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/print_mac.c b/src/print_mac.c -index c12a1eca3..dc3794787 100644 +index 9674b9841..7446fa719 100644 --- a/src/print_mac.c +++ b/src/print_mac.c @@ -17,8 +17,6 @@ @@ -23,7 +23,7 @@ index c12a1eca3..dc3794787 100644 [ARPHRD_NETROM] = 7 /* AX25_ADDR_LEN */, [ARPHRD_ETHER] = 6 /* ETH_ALEN */, /* ARPHRD_EETHER - no actual devices in Linux */ -@@ -128,7 +126,7 @@ print_mac_addr(const char *prefix, const uint8_t addr[], size_t size) +@@ -129,7 +127,7 @@ print_mac_addr(const char *prefix, const uint8_t addr[], size_t size) const char * sprint_hwaddr(const uint8_t hwaddr[], size_t size, uint32_t devtype) { @@ -33,10 +33,10 @@ index c12a1eca3..dc3794787 100644 return sprint_mac_addr(hwaddr, MIN(size, sz)); diff --git a/src/util.c b/src/util.c -index 063db0382..05d160080 100644 +index 4ed870ac6..e6a7fdfba 100644 --- a/src/util.c +++ b/src/util.c -@@ -1231,16 +1231,16 @@ dumpstr(struct tcb *const tcp, const kernel_ulong_t addr, +@@ -1382,16 +1382,16 @@ dumpstr(struct tcb *const tcp, const kernel_ulong_t addr, ? 1 + ilog2_klong(len - 1) / HEX_BIT : DUMPSTR_OFFS_MIN_CHARS; kernel_ulong_t i = 0; const unsigned char *src; @@ -58,5 +58,5 @@ index 063db0382..05d160080 100644 /* Fetching data from tracee. */ -- -2.31.1 +2.34.1 diff --git a/pkg/strace/patch/1001-Prevent-zero-sized-arrays.patch b/pkg/strace/patch/1001-Prevent-zero-sized-arrays.patch @@ -1,22 +1,21 @@ -From 55ff71bf1e559974132c313181134f8a24625fcc Mon Sep 17 00:00:00 2001 +From a9a8b003bc97952fcc47d84b2ba9c490d90985e3 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> -Date: Sat, 26 Sep 2020 16:30:33 -0700 +Date: Fri, 18 Feb 2022 01:40:22 -0800 Subject: [PATCH] Prevent zero-sized arrays --- src/xlat/btrfs_features_compat.h | 3 ++- - src/xlat/mq_attr_flags.h | 3 ++- + src/xlat/compat_ptrace_cmds.h | 3 ++- src/xlat/sigprof_codes.h | 3 ++- - src/xlat/sock_ipx_options.h | 3 ++- - 4 files changed, 8 insertions(+), 4 deletions(-) + 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/xlat/btrfs_features_compat.h b/src/xlat/btrfs_features_compat.h -index 44d99a5..f20e7c4 100644 +index 12136c495..cc5804a1b 100644 --- a/src/xlat/btrfs_features_compat.h +++ b/src/xlat/btrfs_features_compat.h -@@ -13,13 +13,14 @@ extern const struct xlat btrfs_features_compat[]; - # else +@@ -15,13 +15,14 @@ extern const struct xlat btrfs_features_compat[]; + DIAG_PUSH_IGNORE_TAUTOLOGICAL_CONSTANT_COMPARE static const struct xlat_data btrfs_features_compat_xdata[] = { + {0} }; @@ -30,31 +29,29 @@ index 44d99a5..f20e7c4 100644 .type = XT_NORMAL, .flags_mask = 0 , -diff --git a/src/xlat/mq_attr_flags.h b/src/xlat/mq_attr_flags.h -index c8593a6..3534c0e 100644 ---- a/src/xlat/mq_attr_flags.h -+++ b/src/xlat/mq_attr_flags.h -@@ -18,13 +18,14 @@ static const struct xlat_data mq_attr_flags_xdata[] = { - #define XLAT_VAL_0 ((unsigned) (O_NONBLOCK)) - #define XLAT_STR_0 STRINGIFY(O_NONBLOCK) +diff --git a/src/xlat/compat_ptrace_cmds.h b/src/xlat/compat_ptrace_cmds.h +index 9a7fc96b1..a29567689 100644 +--- a/src/xlat/compat_ptrace_cmds.h ++++ b/src/xlat/compat_ptrace_cmds.h +@@ -225,11 +225,12 @@ static const struct xlat_data compat_ptrace_cmds_xdata[] = { + #define XLAT_VAL_9 ((unsigned) (COMPAT_PTRACE_SETHBPREGS)) + #define XLAT_STR_9 STRINGIFY(COMPAT_PTRACE_SETHBPREGS) #endif -+ {0}, ++ {0} }; - # if !(defined HAVE_M32_MPERS || defined HAVE_MX32_MPERS) static - # endif - const struct xlat mq_attr_flags[1] = { { - .data = mq_attr_flags_xdata, -- .size = ARRAY_SIZE(mq_attr_flags_xdata), -+ .size = ARRAY_SIZE(mq_attr_flags_xdata) - 1, - .type = XT_NORMAL, + const struct xlat compat_ptrace_cmds[1] = { { + .data = compat_ptrace_cmds_xdata, +- .size = ARRAY_SIZE(compat_ptrace_cmds_xdata), ++ .size = ARRAY_SIZE(compat_ptrace_cmds_xdata) - 1, + .type = XT_SORTED, .flags_mask = 0 # ifdef XLAT_VAL_0 diff --git a/src/xlat/sigprof_codes.h b/src/xlat/sigprof_codes.h -index 5147a5f..019edf3 100644 +index bc61fdc8f..88f043ab9 100644 --- a/src/xlat/sigprof_codes.h +++ b/src/xlat/sigprof_codes.h -@@ -18,13 +18,14 @@ static const struct xlat_data sigprof_codes_xdata[] = { +@@ -20,13 +20,14 @@ static const struct xlat_data sigprof_codes_xdata[] = { #define XLAT_VAL_0 ((unsigned) (PROF_SIG)) #define XLAT_STR_0 STRINGIFY(PROF_SIG) #endif @@ -70,24 +67,6 @@ index 5147a5f..019edf3 100644 .type = XT_NORMAL, .flags_mask = 0 # ifdef XLAT_VAL_0 -diff --git a/src/xlat/sock_ipx_options.h b/src/xlat/sock_ipx_options.h -index 653d4dc..2f259ba 100644 ---- a/src/xlat/sock_ipx_options.h -+++ b/src/xlat/sock_ipx_options.h -@@ -18,11 +18,12 @@ static const struct xlat_data sock_ipx_options_xdata[] = { - #define XLAT_VAL_0 ((unsigned) (IPX_TYPE)) - #define XLAT_STR_0 STRINGIFY(IPX_TYPE) - #endif -+ {0} - }; - static - const struct xlat sock_ipx_options[1] = { { - .data = sock_ipx_options_xdata, -- .size = ARRAY_SIZE(sock_ipx_options_xdata), -+ .size = ARRAY_SIZE(sock_ipx_options_xdata) - 1, - .type = XT_NORMAL, - .flags_mask = 0 - # ifdef XLAT_VAL_0 -- -2.30.0 +2.34.1 diff --git a/pkg/strace/sha256 b/pkg/strace/sha256 @@ -1 +1 @@ -29171edf9d252f89c988a4c340dfdec662f458cb8c63d85431d64bab5911e7c4 strace-5.12.tar.xz +dc7db230ff3e57c249830ba94acab2b862da1fcaac55417e9b85041a833ca285 strace-5.16.tar.xz diff --git a/pkg/strace/url b/pkg/strace/url @@ -1 +1 @@ -url = "https://github.com/strace/strace/releases/download/v5.12/strace-5.12.tar.xz" +url = "https://github.com/strace/strace/releases/download/v5.16/strace-5.16.tar.xz" diff --git a/pkg/strace/ver b/pkg/strace/ver @@ -1 +1 @@ -5.12 r0 +5.16 r0