2022-10-29  Dmitry V. Levin  <ldv@strace.io>

	Prepare for 6.0 release.
	* NEWS: Update for 6.0 release.

2022-10-23  Dmitry V. Levin  <ldv@strace.io>

	strace.spec.in: skip tests for x86 architecture on the latest fedora versions
	gcc on the latest versions of fedora fails to compile strace tests for
	x86 architecture, and given that fedora is phasing out that
	architecture, there is no hope that issue is ever going to be fixed.

	* strace.spec.in (%check): Skip on %ix86 and fedora >= 35.

2022-10-17  Dmitry V. Levin  <ldv@strace.io>

	Update copyright headers.
	Headers updated automatically using maint/update_copyright_years.sh
	script.

2022-10-16  Dmitry V. Levin  <ldv@strace.io>

	strace.1: fix typos.
	* doc/strace.1.in (.SH HISTORY): Fix two typos.

	Reported-by: Roland Illig <roland.illig@gmx.de>

2022-10-10  Gleb Fotengauer-Malinovskiy  <glebfm@altlinux.org>

	Update ioctl entries from linux v6.0.
	* src/linux/32/ioctls_inc_align16.h: Update from linux v6.0 using
	ioctls_gen.sh.
	* src/linux/32/ioctls_inc_align32.h: Likewise.
	* src/linux/32/ioctls_inc_align64.h: Likewise.
	* src/linux/64/ioctls_inc.h: Likewise.
	* src/linux/x32/ioctls_inc0.h: Likewise.
	* src/linux/i386/ioctls_arch0.h: Likewise.
	* src/linux/s390/ioctls_arch0.h: Likewise.
	* src/linux/s390x/ioctls_arch0.h: Likewise.
	* src/linux/x86_64/ioctls_arch0.h: Likewise.
	* NEWS: Mention this.

2022-10-09  Dmitry V. Levin  <ldv@strace.io>

	xlat: update TLS_INFO_* constants.
	* src/xlat/inet_diag_ulp_info_tls_attrs.in (TLS_INFO_RX_NO_PAD):
	New constant introduced by Linux kernel commit v6.0-rc1~141^2~193^2~2.
	* src/netlink_inet_diag.c (diag_ulp_info_tls_nla_decoders): Add
	TLS_INFO_RX_NO_PAD.
	* tests/nlattr_inet_diag_msg.c (tls_unk_attrs): Update expected output.
	* NEWS: Mention this change.

	xlat: update PERF_* constants.
	* src/xlat/perf_event_read_format.in (PERF_FORMAT_LOST): New constant
	introduced by Linux kernel commit v6.0-rc1~199^2~3.
	* tests/ioctl_perf.c (main): Update expected output.
	* tests/perf_event_open.c (read_formats): Likewise.
	* NEWS: Mention this change.

	xlat: update NDTPA_* constants.
	* src/xlat/rtnl_neightbl_parms_attrs.in (NDTPA_INTERVAL_PROBE_TIME_MS):
	New constant introduced by Linux kernel commit v6.0-rc1~141^2~249^2.
	* src/rtnl_neightbl.c (ndt_parms_nla_decoders): Decode
	NDTPA_INTERVAL_PROBE_TIME_MS.
	* NEWS: Mention this change.

	xlat: update KVM_* constants.
	* src/xlat/kvm_cap.in (KVM_CAP_VM_TSC_CONTROL): New constant
	introduced by Linux kernel commit v5.19-rc1~137^2~83^2~14.
	(KVM_CAP_SYSTEM_EVENT_DATA): New constant introduced
	by Linux kernel commit v5.18-rc5~1^2~2^2~1.
	(KVM_CAP_ARM_SYSTEM_SUSPEND): New constant introduced
	by Linux kernel commit v5.19-rc1~137^2~12^2~4^2~6.
	(KVM_CAP_S390_PROTECTED_DUMP): New constant introduced
	by Linux kernel commit v6.0-rc1~129^2~6^2~389^2~70^2~7.
	(KVM_CAP_X86_TRIPLE_FAULT_EVENT): New constant introduced
	by Linux kernel commit v6.0-rc1~129^2~6^2~389^2~12.
	(KVM_CAP_X86_NOTIFY_VMEXIT): New constant introduced
	by Linux kernel commit v6.0-rc1~129^2~6^2~389^2~9.
	(KVM_CAP_VM_DISABLE_NX_HUGE_PAGES): New constant introduced
	by Linux kernel commit v6.0-rc1~129^2~6^2~169.
	(KVM_CAP_S390_ZPCI_OP): New constant introduced
	by Linux kernel commit v6.0-rc1~129^2~6^2~34^2~21^2~1.
	(KVM_CAP_S390_CPU_TOPOLOGY): New constant introduced
	by Linux kernel commit v6.0-rc1~129^2~6^2~34^2.
	* src/xlat/kvm_exit_reason.in (KVM_EXIT_RISCV_CSR): New constant
	introduced by Linux kernel commit v6.0-rc1~129^2~7^2~4.
	(KVM_EXIT_NOTIFY): New constant introduced
	by Linux kernel commit v6.0-rc1~129^2~6.
	* NEWS: Mention this change.

	xlat: update ETH_P_* constants.
	* src/xlat/ethernet_protocols.in (ETH_P_DSA_A5PSW): New constant
	introduced by Linux kernel commit v6.0-rc1~141^2~283^2~13.
	* NEWS: Mention this change.

	xlat: update FAN_MARK_* constants.
	* src/xlat/fan_mark_flags.in (FAN_MARK_IGNORE): New constant
	introduced by Linux kernel commit v6.0-rc1~219^2~1.
	* tests/fanotify_mark.c (main): Update expected output.
	* NEWS: Mention this change.

	xlat: update NT_S390_* constants.
	* src/xlat/nt_descriptor_types.in (NT_S390_PV_CPU_DATA): New constant
	introduced by Linux kernel commit v6.0-rc1~81^2~5.
	* NEWS: Mention this change.

	xlat: update BTRFS_* constants.
	* src/xlat/btrfs_send_flags.in (BTRFS_SEND_FLAG_COMPRESSED): New
	constant introduced by Linux kernel commit v6.0-rc1~146^2~125.
	* NEWS: Mention this change.

	xlat: update BPF_* constants.
	* src/xlat/bpf_attach_type.in (BPF_LSM_CGROUP): New constant
	introduced by Linux kernel commit v6.0-rc1~141^2~163^2~30^2~8.
	* tests/bpf.c (BPF_PROG_QUERY_checks): Update expected output.
	* NEWS: Mention this change.

2022-10-07  Dmitry V. Levin  <ldv@strace.io>

	bundled: update linux UAPI headers to v6.0.
	linux/io_uring.h is excluded from this update because of non-trivial
	implications caused by changes made to this header file in v6.0.

	* bundled/linux/include/uapi/linux/blkzoned.h: Update to
	headers_install'ed Linux kernel v6.0-rc7.
	* bundled/linux/include/uapi/linux/btrfs.h: Likewise.
	* bundled/linux/include/uapi/linux/btrfs_tree.h: Likewise.
	* bundled/linux/include/uapi/linux/dm-ioctl.h: Likewise.
	* bundled/linux/include/uapi/linux/fiemap.h: Likewise.
	* bundled/linux/include/uapi/linux/fs.h: Likewise.
	* bundled/linux/include/uapi/linux/fscrypt.h: Likewise.
	* bundled/linux/include/uapi/linux/if_alg.h: Likewise.
	* bundled/linux/include/uapi/linux/if_link.h: Likewise.
	* bundled/linux/include/uapi/linux/inet_diag.h: Likewise.
	* bundled/linux/include/uapi/linux/ip_vs.h: Likewise.
	* bundled/linux/include/uapi/linux/neighbour.h: Likewise.
	* bundled/linux/include/uapi/linux/perf_event.h: Likewise.
	* bundled/linux/include/uapi/linux/rtnetlink.h: Likewise.
	* bundled/linux/include/uapi/linux/tls.h: Likewise.
	* bundled/linux/include/uapi/linux/v4l2-controls.h: Likewise.
	* bundled/linux/include/uapi/linux/version.h: Likewise.
	* bundled/linux/include/uapi/linux/videodev2.h: Likewise.
	* bundled/linux/include/uapi/mtd/mtd-abi.h: Likewise.
	* bundled/linux/include/uapi/rdma/ib_user_verbs.h: Likewise.

2022-10-07  Marvin Schmidt  <marv@exherbo.org>

	sysent: Provide proper function prototype to fix -Wdeprecated-non-prototype
	clang-15 emits an error because the `sys_func` function pointer of the sysent struct doesn't declare
	an argument list:

	> make[3]: Entering directory '/home/marv/devel/strace/src'
	> clang -DHAVE_CONFIG_H   -I./linux/x86_64 -I./linux/x86_64 -I./linux/generic -I./linux/generic -I. -I. -I../bundled/linux/arch/x86/include/uapi -I../bundled/linux/include/uapi -DIN_STRACE=1      -I./bundled/linux/arch/x86/include/uapi -I./bundled/linux/include/uapi -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wdate-time -Wformat-security -Winit-self -Winitializer-overrides -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wundef -Wwrite-strings -Werror   -Wall -g -ggdb3 -O0 -c -o libstrace_a-syscall.o `test -f 'syscall.c' || echo './'`syscall.c
	> syscall.c:670:65: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
	>         int res = raw(tcp) ? printargs(tcp) : tcp_sysent(tcp)->sys_func(tcp);
	>                                                                        ^
	> syscall.c:815:39: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype]
	>                         sys_res = tcp_sysent(tcp)->sys_func(tcp);
	>                                                            ^
	> 2 errors generated.

	* src/sysent.h (struct tcb): Add forward declaration.
	(struct sysent): Use it to provide a proper prototype of sys_func field.

	Resolves: https://github.com/strace/strace/pull/225

2022-10-03  Dmitry V. Levin  <ldv@strace.io>

	tests: fix build on aarch64.
	This fixes the following compilation errors on aarch64

	  In file included from ptrace-Xraw.c:2:
	  ptrace.c: In function 'check_compat_ptrace_req':
	  ptrace.c:1662:28: error: expected expression before ',' token
	   1662 |                req, NRAW(s), pid, errstr);
	        |                            ^
	  ptrace.c:1667:28: error: expected expression before ',' token
	   1667 |                req, NRAW(s), pid, errstr);
	        |                            ^

	* tests/ptrace.c [__arm64__ || __aarch64__] (check_compat_ptrace_req):
	Update to new NRAW semantics by switching to use XLAT_RAW instead.

	Fixes: v5.19-4-g10eba44ca "tests: make {,N}{ABBR,RAW,VERB} macros more versatile"

2022-10-02  Dmitry V. Levin  <ldv@strace.io>

	xstring.h: fix typo in comment.

2022-10-02  Eugene Syromyatnikov  <evgsyr@gmail.com>

	printsiginfo: consider all POLL_* si_codes as a valid reason to print si_band/si_fd
	* src/printsiginfo.c (print_si_info) <case SIGIO>: Add POLL_ERR,
	POLL_PRI, and POLL_HUP to the POLL_* case.

	printsiginfo: decode SIGEMT the same way as SIG{ILL,FPE,SEGV,BUS}
	* src/printsiginfo.c (print_si_info) [SIGEMT] <case SIGEMT>: Add
	to the SIGILL/SIGFPE/SIGSEGV/SIGBUS case.

	printsiginfo: dispatch signal code names using an array.
	* src/printsiginfo.c (print_si_code): Consolidate xlat pointers
	into an array, dispatch over it using si_code.

	xlat: update sysctl_kern.
	* xlat/sysctl_kern.in (KERN_PANIC_PRINT): New constant, introduced
	by Linux commit v5.0-rc1~38^2~16.

	rtnl_neigh: enhance NDA_PROTOCOL decoding.
	* src/rtnl_neigh.c (ndmsg_nla_decoders) <[NDA_PROTOCOL]>: Decode as
	an IP protocol.

2022-10-02  Eugene Syromyatnikov  <evgsyr@gmail.com>

	xlat: rename XFS_SB_MAGIC to XFS_SUPER_MAGIC.
	Per Linux commit v4.20-rc1~139^2~13.

	* src/xlat/fsmagic.in (XFS_SUPER_MAGIC): Rename from XFS_SB_MAGIC.

2022-10-02  Eugene Syromyatnikov  <evgsyr@gmail.com>

	powerpc, powerpc64: replace empty syscall entries with comments.
	* src/linux/powerpc/syscallent.h ([224]): Remove, add a comment about
	unused slot for security syscall.
	* src/linux/powerpc64/syscallent.h ([192]): Remove, add a comment about
	powerpc32-only mmap2.
	([193]): Remove, add a comment about powerpc32-only truncate64.
	([194]): Remove, add a comment about powerpc32-only ftruncate64.
	([195]): Remove, add a comment about powerpc32-only stat64.
	([196]): Remove, add a comment about powerpc32-only lstat64.
	([197]): Remove, add a comment about powerpc32-only fstat64.
	([204]): Remove, add a comment about powerpc32-only fcntl64.
	([224]): Remove, add a comment about unused slot for security syscall.
	([226]): Remove, add a comment about powerpc32-only sendfile64.
	([254]): Remove, add a comment about powerpc32-only fadvise64_64.

	sparc, sparc64: replace empty syscall entries with comments.
	* src/linux/sparc/syscallent.h ([52]): Remove, add a comment that
	it is memory_ordering on sparc64.
	([164]): Remove, add a comment that it is utrap_install on sparc64.
	* src/linux/sparc64/syscallent.h ([31]): Remove, add a comment that
	it is lchown32 on sparc32.
	([32]): Remove, add a comment that it is fchown32 on sparc32.
	([35]): Remove, add a comment that it is chown32 on sparc32.
	([44]): Remove, add a comment that it is getuid32 on sparc32.
	([53]): Remove, add a comment that it is getgid32 on sparc32.
	([56]): Remove, add a comment that it is mmap2 on sparc32.
	([69]): Remove, add a comment that it is geteuid32 on sparc32.
	([70]): Remove, add a comment that it is getegid32 on sparc32.
	([72]): Remove, add a comment that it is setreuid32 on sparc32.
	([77]): Remove, add a comment that it is truncate64 on sparc32.
	([82]): Remove, add a comment that it is setgroups32 on sparc32.
	([84]): Remove, add a comment that it is ftruncate64 on sparc32.
	([87]): Remove, add a comment that it is setuid32 on sparc32.
	([89]): Remove, add a comment that it is setgid32 on sparc32.
	([91]): Remove, add a comment that it is setfsuid32 on sparc32.
	([94]): Remove, add a comment that it is setfsgid32 on sparc32.
	([112]): Remove, add a comment that it is setregid32 on sparc32.
	([115]): Remove, add a comment that it is getgroups32 on sparc32.
	([155]): Remove, add a comment that it is fcntl64 on sparc32.
	([231]): Remove, add a comment that it is time on sparc32.

2022-10-02  Dmitry V. Levin  <ldv@strace.io>

	tests: fix build on some platforms.
	This fixes the following compilation issues on platforms
	where __s64 is not defined to "long long":

	  ioctl_ptp.c:268:11: error: format '%lld' expects argument of type 'long long int', but argument 4 has type '__s64' {aka 'long int'} [-Werror=format=]
	  ioctl_ptp.c:268:11: error: format '%lld' expects argument of type 'long long int', but argument 5 has type '__s64' {aka 'long int'} [-Werror=format=]
	  ioctl_ptp.c:355:24: error: format '%lld' expects argument of type 'long long int', but argument 3 has type '__s64' {aka 'long int'} [-Werror=format=]
	  ioctl_ptp.c:490:29: error: format '%lld' expects argument of type 'long long int', but argument 2 has type '__s64' {aka 'const long int'} [-Werror=format=]
	  ioctl_ptp.c:498:36: error: format '%lld' expects argument of type 'long long int', but argument 2 has type '__s64' {aka 'const long int'} [-Werror=format=]
	  ioctl_ptp.c:509:35: error: format '%lld' expects argument of type 'long long int', but argument 2 has type '__s64' {aka 'const long int'} [-Werror=format=]
	  ioctl_ptp.c:581:25: error: format '%lld' expects argument of type 'long long int', but argument 3 has type '__s64' {aka 'long int'} [-Werror=format=]

	* tests/ioctl_ptp.c (test_no_device): Explicitly cast
	struct ptp_clock_time.sec to "long long".

	Fixes: v5.19-5-g03eb34004 "ptp: update decoder"

2022-09-25  Dmitry V. Levin  <ldv@strace.io>

	Print the second argument of setns syscall as flags.
	Starting with Linux kernel commit v5.8-rc1~175^2~1, when the first
	argument of setns syscall is a descriptor obtained from pidfd_open
	syscall, the second argument of setns syscall is treated as a bit mask
	rather than a single CLONE_NEW* constant.

	* src/clone.c (SYS_FUNC(setns)): Print tcp->u_arg[1] using printflags
	instead of printxval.
	* src/xlat/setns_types.in (0): Remove.
	* tests/setns.c: Check it.
	* NEWS: Mention this change.

2022-08-29  Eugene Syromyatnikov  <evgsyr@gmail.com>

	ptp: update decoder.
	CHECK_*_SIZE checks are added as minimum safe-guards against implicit
	decoding breakages, since the types infrastructure, that would allow proper
	checking, has been removed in v5.11~8.

	* src/xlat/ptp_pin_funcs.in: New file.
	* src/ptp.c: Include "xlat/ptp_pin_funcs.h".
	(print_ptp_clock_time): Add rtc argument that signifies that the clock
	data is RTC-like, so it is worthy of pretty-printing;  print reserved
	field if it is non-zero; print time in the ISO 8601 format only if rtc
	argument is set and the xlat decoding format is not raw.
	(print_ptp_clock_time_am): Pass true in the rtc argument
	to print_ptp_clock_time.
	(print_ptp_clock_time3_am): New function.
	(PRINT_RSV): New macro.
	(ptp_ioctl): Re-order switch cases to reflect the ioctl macros
	declaration order.
	(ptp_ioctl) <case PTP_CLOCK_GETCAPS, case PTP_CLOCK_GETCAPS2>: Add size
	checks;  print n_pins, cross_timestamping, adjust_phase, and non-zero
	rsv fields.
	(ptp_ioctl) <case PTP_EXTTS_REQUEST, case PTP_EXTTS_REQUEST2>: Add size
	checks;  print index field as unsigned;  print non-zero rsv field
	for PTP_EXTTS_REQUEST2.
	(ptp_ioctl) <case PTP_PEROUT_REQUEST, case PTP_PEROUT_REQUEST2>: Add
	size checks;  print either phase (non-RTC) or start (RTC) field
	depending on the presence of PTP_PEROUT_PHASE among flags;  print period
	as non-RTC value;  print index as unsigned;  print "PTP_PEROUT_???"
	instead of "PTP_???" as flags fallback value;  print either on field or
	non-zero rsv field (only for PTP_PEROUT_REQUEST2) depending on presence
	of PTP_PEROUT_DUTY_CYCLE among flags.
	(ptp_ioctl) <case PTP_ENABLE_PPS, case PTP_ENABLE_PPS>: Print arg
	as unsigned.
	(ptp_ioctl) <case PTP_SYS_OFFSET, case PTP_SYS_OFFSET2>: Add size
	checks;  print non-zero rsv field on entering;  do not interpret the
	structure as unavailable in case of syscall error;  use MIN macro for
	n_samples calculation instead of open-coding it.
	(ptp_ioctl) <case PTP_PIN_GETFUNC, case PTP_PIN_GETFUNC2, case
	PTP_PIN_SETFUNC, case PTP_PIN_SETFUNC2, case PTP_SYS_OFFSET_PRECISE,
	case PTP_SYS_OFFSET_PRECISE2, case PTP_SYS_OFFSET_EXTENDED, case
	PTP_SYS_OFFSET_EXTENDED2>: Implement decoding.
	* tests/.gitignore: Add ioctl_ptp-Xabbrev, ioctl_ptp-Xraw,
	ioctl_ptp-Xverbose, ioctl_ptp-success, ioctl_ptp-success-Xabbrev,
	ioctl_ptp-success-Xraw, and ioctl_ptp-success-Xverbose.
	* tests/Makefile.am (check_PROGRAMS): Add ioctl_ptp-success,
	ioctl_ptp-success-Xabbrev, ioctl_ptp-success-Xraw,
	and ioctl_ptp-success-Xverbose.
	* tests/gen_tests.in (ioctl_ptp-Xabbrev, ioctl_ptp-Xraw,
	ioctl_ptp-Xverbose, ioctl_ptp-success, ioctl_ptp-success-Xabbrev,
	ioctl_ptp-success-Xraw, ioctl_ptp-success-Xverbose): New tests.
	* tests/ioctl_ptp-Xabbrev.c: New file.
	* tests/ioctl_ptp-Xraw.c: Likewise.
	* tests/ioctl_ptp-Xverbose.c: Likewise.
	* tests/ioctl_ptp-success-Xabbrev.c: Likewise.
	* tests/ioctl_ptp-success-Xraw.c: Likewise.
	* tests/ioctl_ptp-success-Xverbose.c: Likewise.
	* tests/ioctl_ptp-success.c: Likewise.
	* tests/ioctl_ptp.c: Update expected output, add checks.
	* tests/pure_executables.list: Add ioctl_ptp-Xabbrev, ioctl_ptp-Xraw,
	and ioctl_ptp-Xverbose.
	* NEWS: Mention it.

2022-08-29  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: make {,N}{ABBR,RAW,VERB} macros more versatile.
	These macros can be much more useful if they would be variadic
	and expand to nothing when they are used in the incompatible xlat
	decoding mode.

	* tests/tests.h (ABBR, RAW, VERB, NABBR, NRAW, NVERB): Change the
	argument to "...", expand into __VA_ARGS__/nothing instead of arg/"".
	* tests/io_uring_register.c: Update NRAW macro usage.
	* tests/nlattr_ifstats.c: Likewise.

2022-08-29  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: provide information about strace's native long/kernel_long_t sizes
	* tests/Makefile.am (STRACE_SIZEOF_KERNEL_LONG_T, STRACE_SIZEOF_LONG):
	New variables.
	(AM_CPPFLAGS): Add -DSTRACE_SIZEOF_KERNEL_LONG_T
	and -DSTRACE_SIZEOF_LONG.

2022-08-16  Dmitry V. Levin  <ldv@strace.io>

	.github: remove gcc7 jobs.
	This old compiler was provided by the old version of the OS that is
	currently being deprecated by github actions.

	* .github/workflows/ci.yml (gcc7-x86_64-kheaders, gcc7-x86_64-dw,
	gcc7-x86_64-unwind): Remove.

	Link: https://github.com/actions/runner-images/issues/6002

2022-08-15  Dmitry V. Levin  <ldv@strace.io>

	Post-release administrivia.
	* NEWS: Add a header line for the next release.
	* debian/changelog.in: Add a changelog entry for 5.19-1.
	* strace.spec.in: Likewise.

2022-08-12  Dmitry V. Levin  <ldv@strace.io>

	Prepare for 5.19 release.
	* NEWS: Update for 5.19 release.

	Update .mailmap.
	* .mailmap: Add both email addresses of Sergei Trofimovich to avoid
	duplication in CREDITS file.

2022-08-11  Joubin Jabbari  <joubin@linux.com>

	README.md: update Fedora strace repo location.
	Resolves: https://github.com/strace/strace/pull/218

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: add PR_SVE_[GS]ET_VL checks.
	Re-purpose prct-sme.c for that, since these commands identical
	to PR_SME_[GS]ET_VL so far, save for s/SME/SVE/ in identifier names.
	Retain the original prct-sve.c to retain test coverage diversity.

	* tests/.gitignore: Add prctl-sve-Xabbrev, prctl-sve-Xraw,
	prctl-sve-Xverbose, prctl-sve-success, prctl-sve-success-Xabbrev,
	prctl-sve-success-Xraw, and prctl-sve-success-Xverbose.
	* tests/Makefile.am (check_PROGRAMS): Add prctl-sve-success,
	prctl-sve-success-Xabbrev, prctl-sve-success-Xraw,
	and prctl-sve-success-Xverbose.
	* tests/gen_tests.in (prctl-sve-Xabbrev, prctl-sve-Xraw,
	prctl-sve-Xverbose, prctl-sve-success, prctl-sve-success-Xabbrev,
	prctl-sve-success-Xraw, prctl-sve-success-Xverbose): New tests.
	* tests/prctl-sme.c [!EXT] (EXT): New macro.
	(EXT_STR, GLUE_, GLUE, _): New macros.
	(print_sme_vl_arg, main): Use _ and EXT_STR macros.
	* tests/prctl-sve-Xabbrev.c: New file.
	* tests/prctl-sve-Xraw.c: Likewise.
	* tests/prctl-sve-Xverbose.c: Likewise.
	* tests/prctl-sve-success-Xabbrev.c: Likewise.
	* tests/prctl-sve-success-Xraw.c: Likewise.
	* tests/prctl-sve-success-Xverbose.c: Likewise.
	* tests/prctl-sve-success.c: Likewise.
	* tests/pure_executables.list: Add prctl-sve-Xabbrev, prctl-sve-Xraw,
	and prctl-sve-Xverbose.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: expand so_error test checks.
	Check decoding with various optlen values.

	* tests/so_error.c: Add checks.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	net: print unexpectedly short integer sockopts in hex.
	Since it makes little sence to print ASCII character codes when we know
	that the bytes are part of a number.

	* src/net.c (print_get_error, print_txrehash, print_getsockopt): Use
	printstr_ex with QUOTE_FORCE_HEX parameter instead of printstrn.
	* tests/sockopt-sol_socket.c: Update expected output.

2022-08-11  Dmitry V. Levin  <ldv@strace.io>

	net: print the data returned by SO_ERROR as a string if it is too short.
	The data returned by getsockopt SO_ERROR is an integer.  If the buffer
	size specified by userspace is less than sizeof(int), the data written
	by the kernel should not be interpreted as an integer.

	* src/net.c (print_get_error): Print the buffer as a string if its
	length is less than sizeof(int).

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	net: implement SO_TXREHASH socket option support.
	* src/xlat/sock_options.in (SO_TXREHASH): New constant, introduced
	by Linux commit v5.18-rc1~136^2~484^2~3.
	* src/xlat/sockopt_txrehash_vals.in: New file.
	* src/net.c: Include "xlat/sockopt_txrehash_vals.h".
	(print_txrehash): New function.
	(print_getsockopt, print_setsockopt) <case SO_TXREHASH>: Call
	print_txrehash.
	* tests/sockopt-sol_socket.c: Add checks for SO_TXREHASH decoding.
	* NEWS: Mention it.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	io_uring: add support for IORING_{,UN}REGISTER_PBUF_RING opcodes.
	Introduced by Linux commit v5.19-rc1~251^2~10.

	* src/xlat/uring_register_opcodes.in (IORING_REGISTER_PBUF_RING,
	IORING_UNREGISTER_PBUF_RING): New constants.
	* src/io_uring.c (print_io_uring_buf_reg): New function.
	(SYS_FUNC(io_uring_register)) <case IORING_REGISTER_PBUF_RING,
	case IORING_UNREGISTER_PBUF_RING>: Call print_io_uring_buf_reg
	for decoding.
	* tests/io_uring_register.c: Update expected output, add checks.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	io_uring: decode struct io_uring_rsrc_register.flags field.
	Introduced by Linux commit v5.19-rc1~251^2~20.

	* configure.ac: Remove struct io_uring_rsrc_register.resv check.
	* src/xlat/uring_register_rsrc_flags.in: New file.
	* src/io_uring.c: Include "xlat/uring_register_rsrc_flags.h".
	(print_io_uring_register_rsrc): Remove CHECK_TYPE_SIZE for arg.resv,
	decode flags field using PRINT_FIELD_FLAGS instead of optional decoding
	of no longer existing resv field.
	* tests/io_uring_register.c: Update expected output.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: fix ioctl_dm test with new kernel headers.
	Linux commit v5.19-rc2-1-g94dfc73e7cf4 replaced the zero-length array
	dm_target_msg.sector field declaration with a flexible-array declaration,
	which led to the following error when compiled with clang:

	    ../../../tests/ioctl_dm.c:53:25: error: field 'target_msg' with variable
	    sized type 'struct dm_target_msg' not at the end of a struct or class
	    is a GNU extension [-Werror,-Wgnu-variable-sized-type-not-at-end]
	                            struct dm_target_msg target_msg;
	                                                 ^
	    1 error generated.

	Work around it by removing the following field and adjusting
	the untyped message size.

	* tests/ioctl_dm.c (struct s): Remove tm.target_string field, adjust
	string field size.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	arch_prctl: decode ARCH_GET_XCOMP_SUPP, ARCH_{GET,REQ}_XCOMP{,_GUEST}_PERM
	* src/xlat/archvals.in (ARCH_GET_XCOMP_SUPP, ARCH_GET_XCOMP_PERM,
	ARCH_REQ_XCOMP_PERM): New constants, introduced by Linux commit
	v5.16-rc1~195^2~21.
	(ARCH_GET_XCOMP_GUEST_PERM, ARCH_REQ_XCOMP_GUEST_PERM): New constants,
	introduced by Linux commit v5.17-rc1~15^2~70.
	* src/xlat/x86_xfeature_bits.in: New file.
	* src/xlat/x86_xfeatures.in: Likewise.
	* src/prctl.c [X86_64 || X32 || I386]: Include
	"xlat/x86_xfeature_bits.h", "xlat/x86_xfeatures.h".
	* tests/.gitignore: Add arch_prctl, arch_prctl-Xabbrev, arch_prctl-Xraw,
	arch_prctl-Xverbose, arch_prctl-success, arch_prctl-success-Xabbrev,
	arch_prctl-success-Xraw, and arch_prctl-success-Xverbose.
	* tests/Makefile.am (check_PROGRAMS): Add arch_prctl-success,
	arch_prctl-success-Xabbrev, arch_prctl-success-Xraw,
	and arch_prctl-success-Xverbose.
	* tests/arch_prctl.c: New file.
	* tests/arch_prctl-Xabbrev.c: Likewise.
	* tests/arch_prctl-Xraw.c: Likewise.
	* tests/arch_prctl-Xverbose.c: Likewise.
	* tests/arch_prctl-success.c: Likewise.
	* tests/arch_prctl-success-Xabbrev.c: Likewise.
	* tests/arch_prctl-success-Xraw.c: Likewise.
	* tests/arch_prctl-success-Xverbose.c: Likewise.
	* tests/arch_prctl.sh: Likewise.
	* tests/gen_tests.in (arch_prctl, arch_prctl-Xabbrev, arch_prctl-Xraw,
	arch_prctl-Xverbose, arch_prctl-success, arch_prctl-success-Xabbrev,
	arch_prctl-success-Xraw, arch_prctl-success-Xverbose): New tests.
	* tests/prctl-success.sh (PRCTL_SYSCALL, PRCTL_MARKER_RE): New vaiables.
	Handle "ARCH_PRCTL_INJECT_RETVALS" in addition to "PRCTL_INJECT_RETVALS",
	set PRCTL_SYSCALL and PRCTL_MARKER_RE accordingly;  use $PRCTL_SYSCALL
	and $PRCTL_MARKER_RE in run_strace and sed calls.
	* tests/pure_executables.list: Add arch_prctl, arch_prctl-Xabbrev,
	arch_prctl-Xraw, and arch_prctl-Xverbose.
	* NEWS: Mention it.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: change the license from LGPL to GPL in some newly added files.
	* tests/fork--pidns-translation.c (SPDX-License-Identifier): Change
	from "LGPL-2.1-or-later" to "GPL-2.0-or-later".
	* tests/fork--pidns-translation.test: Likewise.
	* tests/gettid--pidns-translation.test: Likewise.
	* tests/ioctl_block--pidns-translation.test: Likewise.
	* tests/netlink_audit--pidns-translation.test: Likewise.
	* tests/pidns.c: Likewise.
	* tests/pidns.h: Likewise.
	* tests/prctl.sh: Likewise.

	References: v4.26~53 "tests: change the license to GPL-2.0-or-later"
	Fixes: v5.9~49 "Implement testing framework for pidns"
	Fixes: v5.9~48 "Add tests for PID namespace translation"
	Fixes: v5.13~9 "tests: unify common code in prctl decoder tests"

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	prctl: implement PR_SME_[GS]ET_VL decoding.
	Introduced by Linux commit v5.19-rc1~38^2~8^2~22.

	* src/xlat/pr_sme_vl_flags.in: New file.
	* src/prctl.c: Include "xlat/pr_sme_vl_flags.h".
	(sprint_sme_val): New function.
	(SYS_FUNC(prctl)) <case PR_SME_SET_VL, case PR_SME_GET_VL>: Implement
	command decoders.
	* tests/.gitignore: Add prctl-sme, prctl-sme-Xabbrev, prctl-sme-Xraw,
	prctl-sme-Xverbose, prctl-sme-success, prctl-sme-success-Xabbrev,
	prctl-sme-success-Xraw, and prctl-sme-success-Xverbose.
	* tests/Makefile.am (check_PROGRAMS): Add prctl-sme-success,
	prctl-sme-success-Xabbrev, prctl-sme-success-Xraw,
	and prctl-sme-success-Xverbose.
	* tests/gen_tests.in (prctl-sme, prctl-sme-Xabbrev, prctl-sme-Xraw,
	prctl-sme-Xverbose, prctl-sme-success, prctl-sme-success-Xabbrev,
	prctl-sme-success-Xraw, prctl-sme-success-Xverbose): New tests.
	* tests/prctl-sme.c: New file.
	* tests/prctl-sme-Xabbrev.c: Likewise.
	* tests/prctl-sme-Xraw.c: Likewise.
	* tests/prctl-sme-Xverbose.c: Likewise.
	* tests/prctl-sme-success.c: Likewise.
	* tests/prctl-sme-success-Xabbrev.c: Likewise.
	* tests/prctl-sme-success-Xraw.c: Likewise.
	* tests/prctl-sme-success-Xverbose.c: Likewise.
	* tests/pure_executables.list: Add prctl-sme, prctl-sme-Xabbrev,
	prctl-sme-Xraw, and prctl-sme-Xverbose.

2022-08-11  Eugene Syromyatnikov  <evgsyr@gmail.com>

	prctl: improve PR_SVE_[SG]ET_VL decoding.
	* src/prctl.c (sprint_sve_val): Add aux parameter, handle printing based
	on it.
	(SYS_FUNC(prctl)): <case PR_SVE_SET_VL>: Pass false as aux
	to sprint_sve_val.
	(SYS_FUNC(prctl)): <case PR_SVE_GET_VL>: Pass true as aux
	to sprint_sve_val; return RVAL_HEX flag.
	* NEWS: Mention it.

	tests/ptrace: add comments for specific siginfo decoding checks.
	* tests/ptrace.c: Add comments with the signal names being tested.

	printsiginfo: print si_trapno for SIGFPE on alpha.
	* src/printsiginfo.c [ALPHA] (print_si_info) <case SIGFPE>: Print
	si_trapno.
	* tests/ptrace.c: Update expected output.

	printsiginfo: print si_trapno for SIGILL on sparc.
	* src/printsiginfo.c [SPARC || SPARC64] (print_si_info) <case SIGILL>:
	Print si_trapno.
	* tests/ptrace.c: Update expected output.

	printsiginfo: print si_[su]time as clock_t values.
	* src/printsiginfo.c (print_si_info): Print si_utime and si_stime using
	PRINT_FIELD_CLOCK_T macro.
	* tests/clone_ptrace.c: Update expected output.
	* tests/siginfo.c: Likewise.
	* tests/waitid.c: Likewise.

	tests: move enjoy_time in a separate header.
	* tests/times.c (NUM_USER_ITERS_SQRT, NUM_USER_ITERS, READ_BUF_SIZE,
	READ_ITER, nsecs, enjoy_time): Move it...
	* tests/time_enjoyment.h: ...in a new file.
	* tests/Makefile.am (EXTRA_DIST): Add it.

	tests: move clock_t_str from nlattr_ifla_linkinfo.c into a separate file
	* tests/nlattr_ifla_linkinfo.c (clock_t_str): Move it...
	* tests/clock_t_str.c: ...to a new file.
	* tests/Makefile.am (libtests_a_SOURCES): Add it.
	(LDADD): Add ${m_LIBS} after libtests.a.
	(nlattr_ifla_linkinfo_LDADD): Remove.
	* tests/tests.h (clock_t_str): New declaration.

2022-08-09  Eugene Syromyatnikov  <evgsyr@gmail.com>

	printsiginfo: print relevant SI_SIGIO information.
	* src/printsiginfo.c (print_si_info) <case SI_SIGIO>: Print si_band
	and si_fd fields.
	* tests/ptrace.c: Add checks.

	printsiginfo: print si_fd for SIGIO signals.
	* src/printsiginfo.c (print_si_code, print_si_info): Use SIGIO instead
	of the SIGPOLL synonym in switch cases as that is what strace prints out.
	(print_si_info) <case SIGIO>: Print si_fd field.
	* tests/.gitignore: Add ptrace-y, ptrace-y-Xabbrev, ptrace-y-Xraw,
	and ptrace-y-Xverbose.
	* tests/pure_executables.list: Likewise.
	* tests/gen_tests.in (ptrace-y, ptrace-y-Xabbrev, ptrace-y-Xraw,
	ptrace-y-Xverbose): New tests.
	* tests/ptrace-y.c: New file.
	* tests/ptrace-y-Xabbrev.c: Likewise.
	* tests/ptrace-y-Xraw.c: Likewise.
	* tests/ptrace-y-Xverbose.c: Likewise.
	* tests/ptrace.c: Include <fcntl.h>.
	(NULL_FD, NULL_STR, NULL_FD_STR): New macros.
	(null_path): New constant variable.
	(main): Open null_path at NULL_FD fd, update expected SIGIO check
	output.

	printsiginfo: update SIGTRAP decoding.
	* src/xlat/alpha_trap_codes.in: New file.
	* src/xlat/sigtrap_perf_flags.in: Likewise.
	* configure.ac (AC_CHECK_MEMBERS): Add checks
	for siginfo_t.si_perf_data, siginfo_t.si_perf_type,
	and siginfo_t.si_perf_flags fields.
	* src/defs.h (perf_type_id): New extern definition.
	* src/printsiginfo.c [ALPHA]: Include "xlat/alpha_trap_codes.h".
	[HAVE_SIGINFO_T_SI_PERF_FLAGS]: Include "xlat/sigtrap_perf_flags.h".
	(print_si_info): Implement SIGTRAP case.
	* tests/ptrace.c: Add checks.

	printsiginfo: print si_lower/si_upper for SEGV_BNDERR signals.
	* configure.ac (AC_CHECK_MEMBERS): Add siginfo_t.si_lower
	and siginfo_t.si_upper checks.
	* src/printsiginfo.c (print_si_info): [!SEGV_STACKFLOW
	&& HAVE_SIGINFO_T_SI_LOWER] <case SIGSEGV>: Print si_lower
	and si_upper fields if si_code is SEGV_BNDERR.
	* tests/ptrace.c: Add checks.

	printsiginfo: print si_addr_lsb for BUS_MCEERR_A[RO] signals.
	* configure.ac (AC_CHECK_MEMBERS): Add siginfo_t.si_addr_lsb check.
	* src/printsiginfo.c (print_si_info) [!BUS_OPFETCH
	&& HAVE_SIGINFO_T_SI_ADDR_LSB] <case SIGBUS>: Print si_addr_lsb field
	is si_code is equal to BUS_MCEERR_AR or BUS_MCEERR_AO.
	* tests/ptrace.c: Add checks.
	* NEWS: Mention it.

	xlat: update NT_ARM_* constants in nt_descriptor_types.
	* src/xlat/nt_descriptor_types.in (NT_ARM_SSVE): New constant,
	introduced by Linux commit v5.19-rc1~38^2~8^2~13.
	(NT_ARM_ZA): New constant, introduced by Linux commit
	v5.19-rc1~38^2~8^2~12.

	xlat: switch perf xlats type from sorted to value_indexed.
	* src/xlat/hw_breakpoint_type.in: Change #sorted to #value_indexed
	* src/xlat/perf_hw_cache_id.in: Likewise.
	* src/xlat/perf_hw_cache_op_id.in: Likewise.
	* src/xlat/perf_hw_cache_op_result_id.in: Likewise.
	* src/xlat/perf_hw_id.in: Likewise.
	* src/xlat/perf_sw_ids.in: Likewise.
	* src/xlat/perf_type_id.in: Likewise.

	xlat: update v4l2_control_ids.
	* src/xlat/v4l2_control_ids.in
	(V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD,
	V4L2_CID_MPEG_VIDEO_INTRA_REFRESH_PERIOD_TYPE): New constants,
	introduced by Linux commit v5.19-rc1~179^2~221.
	* NEWS: Mention it.

	xlat: update v4l2_pix_fmts.
	* src/xlat/v4l2_pix_fmts.in (V4L2_PIX_FMT_IPU3_Y10): New constant,
	introduced by Linux commit v5.19-rc1~179^2~35.
	(V4L2_PIX_FMT_QC08C, V4L2_PIX_FMT_QC10C): New constants, introduced
	by Linux commit v5.19-rc1~179^2~227.
	(V4L2_PIX_FMT_VP9_FRAME): New constant, introduced by Linux commit
	v5.17-rc1~114^2~207.
	(V4L2_PIX_FMT_NV12M_10BE_8L128, V4L2_PIX_FMT_NV12M_8L128): New
	constants, introduced by Linux commit v5.18-rc1~153^2~81^2~10.
	* NEWS: Mention it.

2022-08-07  Dmitry V. Levin  <ldv@strace.io>

	tests/nlattr_inet_diag_msg: fix big-endian systems support.
	* tests/nlattr_inet_diag_msg.c (print_uint): Fix md5sig_vecs
	for big-endian systems.
	(main): Fix sockopts for big-endian systems.

	Fixes: v5.18-37-gd9606c5f6 "netlink_inet_diag: implement INET_DIAG_MD5SIG attribute decoding"

2022-08-07  Dmitry V. Levin  <ldv@strace.io>

	Update copyright headers.
	Headers updated automatically using maint/update_copyright_years.sh
	script.

	xlat: update SECCOMP_FILTER_FLAG_* constants.
	* src/xlat/seccomp_filter_flags.in
	(SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV): New constant introduced
	by Linux kernel commit v5.19-rc1~198^2~3.
	* tests/seccomp-filter.c (main): Update expected output.
	* tests/seccomp-filter-v.c: Likewise.
	* NEWS: Mention this change.

	xlat: update PR_* constants.
	* src/xlat/prctl_options.in (PR_SME_SET_VL, PR_SME_GET_VL): New
	constants introduced by Linux kernel commit v5.19-rc1~38^2~8^2~22.
	* NEWS: Mention this change.

	xlat: update NLM_F_* constants.
	* src/xlat/netlink_delete_flags.in (NLM_F_BULK): New constant introduced
	by Linux kernel commit v5.19-rc1~159^2~322^2~8.
	* tests/netlink_route.c (test_nlmsg_flags): Check it.
	* NEWS: Mention this change.

	xlat: update LANDLOCK_ACCESS_FS_* constants.
	* src/xlat/landlock_ruleset_access_fs.in (LANDLOCK_ACCESS_FS_REFER):
	New constant introduced by Linux kernel commit v5.19-rc1~195^2~6.
	* tests/landlock_add_rule.c (main): Update expected output.
	* tests/landlock_create_ruleset.c: Likewise.
	* NEWS: Mention this change.

	xlat: update IORING_* constants.
	* src/xlat/uring_ops.in (IORING_OP_FSETXATTR, IORING_OP_SETXATTR):
	New constants introduced by Linux kernel commit v5.19-rc1~250^2~3.
	(IORING_OP_FGETXATTR, IORING_OP_GETXATTR):  New constants introduced
	by Linux kernel commit v5.19-rc1~250^2~2.
	(IORING_OP_SOCKET): New constant introduced by Linux kernel commit
	v5.19-rc1~249^2~4.
	(IORING_OP_URING_CMD): New constant introduced by Linux kernel commit
	v5.19-rc1~247^2~8.
	* src/xlat/uring_register_opcodes.in (IORING_REGISTER_PBUF_RING,
	IORING_UNREGISTER_PBUF_RING): New constants introduced by Linux kernel
	commit v5.19-rc1~251^2~10.
	* tests/io_uring_register.c (main): Update expected output.
	* NEWS: Mention this change.

	xlat: update IORING_SETUP_* constants.
	* src/xlat/uring_setup_flags.in (IORING_SETUP_COOP_TASKRUN):
	New constant introduced by Linux kernel commit v5.19-rc1~251^2~43.
	(IORING_SETUP_TASKRUN_FLAG): New constant introduced by Linux kernel
	commit v5.19-rc1~251^2~42.
	(IORING_SETUP_SQE128): New constant introduced by Linux kernel
	commit v5.19-rc1~247^2~21.
	(IORING_SETUP_CQE32): New constant introduced by Linux kernel
	commit v5.19-rc1~247^2~20.
	* tests/io_uring_setup.c (main): Update expected output.
	* NEWS: Mention this change.

2022-07-31  Dmitry V. Levin  <ldv@strace.io>

	rtnl_link: update decoding of struct rtnl_link_stats64.
	* src/rtnl_link.c (decode_nla_rtnl_link_stats64): Decode
	struct rtnl_link_stats64.rx_otherhost_dropped introduced by Linux kernel
	commit v5.19-rc1~159^2~379.
	* NEWS: Mention this.
	* tests/nlattr_ifinfomsg.c (main): Check it.
	* tests/nlattr_ifstats.c (print_stats_64): Update.

2022-07-31  Eugene Syromyatnikov  <evgsyr@gmail.com>

	xlat: add DEVCONF_ACCEPT_UNTRACKED_NA to inet6_devconf_indices.
	* src/xlat/inet6_devconf_indices.in (DEVCONF_ACCEPT_UNTRACKED_NA): New
	constant, introduced by Linux commit v5.19-rc1~61^2~22.
	* NEWS: Mention it.

	xlat: add UFFD_FEATURE_WP_HUGETLBFS_SHMEM to uffd_api_features.
	* src/xlat/uffd_api_features.in (UFFD_FEATURE_WP_HUGETLBFS_SHMEM): New
	constant, introduced by Linux commit v5.19-rc1~138^2~148.
	* NEWS: Mention it.

	xlat: add KEXEC_ARCH_LOONGARCH to kexec_arch_values.
	* src/xlat/kexec_arch_values.in (KEXEC_ARCH_LOONGARCH): New constant,
	introduced by Linux commit v5.19-rc1~37^2~19.
	* NEWS: Mention it.

	rtnl_neigh: implement NDA_NDM_{STATE,FLAGS}_MASK decoding.
	* src/xlat/rtnl_neigh_attrs.in (NDA_NDM_STATE_MASK, NDA_NDM_FLAGS_MASK):
	New constants, introduced by Linux commit v5.19-rc1~159^2~322^2~2.
	* src/rtnl_neigh.c (decode_nda_ndm_states, decode_nda_ndm_flags): New
	functions.
	* tests/nlattr_ndmsg.c: Add checks.
	* NEWS: Mention it.

	rtnl_neigh: decode NDA_SRC_VNI as u32; similarly to NDA_VNI.
	* src/rtnl_neigh.c (ndmsg_nla_decoders) <[NDA_SRC_VNI]>: Set
	to decode_nla_u32.
	* tests/nlattr_ndmsg.c: Add checks.

	rtnl_neigh: implement NDA_FLAGS_EXT decoding.
	* src/xlat/neighbor_cache_entry_ext_flags.in: New file.
	* src/rtnl_neigh.c: Include "xlat/neighbor_cache_entry_ext_flags.h".
	(decode_nda_ext_flags): New function.
	(ndmsg_nla_decoders) <[NDA_FLAGS_EXT]>: New entry, calls
	decode_nda_ext_flags.
	* tests/nlattr_ndmsg.c: Add checks.
	* NEWS: Mention it.

	rtnl_neigh: implement NDA_FDB_EXT_ATTRS decoding.
	* src/xlat/fdb_notify_flags.in: New file.
	* src/xlat/rtnl_neigh_fdb_ext_attrs.in: Likewise.
	* src/rtnl_neigh.c: Include "xlat/fdb_notify_flags.h",
	"xlat/rtnl_neigh_fdb_ext_attrs.h".
	(decode_fdb_notify_flags, decode_nda_fdb_ext_attrs): New functions.
	(nda_fdb_ext_attrs_nla_decoders): New decoder array.
	(ndmsg_nla_decoders) <[NDA_FDB_EXT_ATTRS]>: New entry, calls
	decode_nda_fdb_ext_attrs.
	* tests/nlattr_ndmsg.c: Add checks.
	* NEWS: Mention it.

	inet: implement SO_RCVMARK socket option decoding.
	* src/xlat/sock_options.in (SO_RCVMARK): New constant, introduced
	by Linux commit v5.19-rc1~159^2~237.
	* src/xlat/sock_options.in (print_getsockopt. print_setsockopt) <case
	SO_RCVMARK>: Handle as an int-like socket option.
	* tests/sockopt-sol_socket.c: Update expected output.

	net: update handling of all int-like SOL_SOCKET options.
	* src/net.c (print_getsockopt) <case SO_DEBUG, case SO_REUSEADDR,
	case SO_DONTROUTE, case SO_BROADCAST, case SO_SNDBUF, case SO_RCVBUF,
	case SO_KEEPALIVE, case SO_OOBINLINE, case SO_NO_CHECK,
	case SO_PRIORITY, case SO_BSDCOMPAT, case SO_REUSEPORT,
	case SO_PASSCRED, case SO_RCVLOWAT, case SO_SNDLOWAT,
	case SO_DETACH_FILTER, case SO_TIMESTAMP_OLD, case SO_ACCEPTCONN,
	case SO_SNDBUFFORCE, case SO_RCVBUFFORCE, case SO_PASSSEC,
	case SO_TIMESTAMPNS_OLD, case SO_MARK, case SO_TIMESTAMPING_OLD,
	case SO_RXQ_OVFL, case SO_WIFI_STATUS, case SO_PEEK_OFF, case SO_NOFCS,
	case SO_LOCK_FILTER, case SO_SELECT_ERR_QUEUE, case SO_BUSY_POLL,
	case SO_INCOMING_CPU, case SO_CNX_ADVICE, case SO_INCOMING_NAPI_ID,
	case SO_ZEROCOPY, case SO_TIMESTAMP_NEW, case SO_TIMESTAMPNS_NEW,
	case SO_TIMESTAMPING_NEW, case SO_DETACH_REUSEPORT_BPF,
	case SO_PREFER_BUSY_POLL, case SO_BUSY_POLL_BUDGET, case
	SO_RESERVE_MEM>: Print only the integer value on any len larger than
	sizeof(int).
	(print_setsockopt) <case SO_DEBUG, case SO_REUSEADDR,
	case SO_DONTROUTE, case SO_BROADCAST, case SO_SNDBUF, case SO_RCVBUF,
	case SO_KEEPALIVE, case SO_OOBINLINE, case SO_NO_CHECK,
	case SO_PRIORITY, case SO_BSDCOMPAT, case SO_REUSEPORT,
	case SO_PASSCRED, case SO_RCVLOWAT, case SO_SNDLOWAT,
	case SO_DETACH_FILTER, case SO_TIMESTAMP_OLD, case SO_ACCEPTCONN,
	case SO_SNDBUFFORCE, case SO_RCVBUFFORCE, case SO_PASSSEC,
	case SO_TIMESTAMPNS_OLD, case SO_MARK, case SO_TIMESTAMPING_OLD,
	case SO_RXQ_OVFL, case SO_WIFI_STATUS, case SO_PEEK_OFF, case SO_NOFCS,
	case SO_LOCK_FILTER, case SO_SELECT_ERR_QUEUE, case SO_BUSY_POLL,
	case SO_INCOMING_CPU, case SO_CNX_ADVICE, case SO_INCOMING_NAPI_ID,
	case SO_ZEROCOPY, case SO_TIMESTAMP_NEW, case SO_TIMESTAMPNS_NEW,
	case SO_TIMESTAMPING_NEW, case SO_DETACH_REUSEPORT_BPF,
	case SO_PREFER_BUSY_POLL, case SO_BUSY_POLL_BUDGET, case
	SO_RESERVE_MEM>: Print address if len is less than sizeof(int),
	the integer value otherwise.
	* tests/sockopt-sol_socket.c: Update the expected output.

	tests: add [gs]etsockopt(SOL_SOCKET) tests.
	* tests/.gitignore: Add sockopt-sol_socket, sockopt-sol_socket-Xabbrev,
	sockopt-sol_socket-Xraw, sockopt-sol_socket-Xverbose,
	sockopt-sol_socket-success, sockopt-sol_socket-success-Xabbrev,
	sockopt-sol_socket-success-Xraw,
	and sockopt-sol_socket-success-Xverbose.
	* tests/Makefile.am (check_PROGRAMS): Add sockopt-sol_socket-success,
	sockopt-sol_socket-success-Xabbrev, sockopt-sol_socket-success-Xraw,
	and sockopt-sol_socket-success-Xverbose.
	* tests/pure_executables.list: Add sockopt-sol_socket,
	sockopt-sol_socket-Xabbrev, sockopt-sol_socket-Xraw,
	and sockopt-sol_socket-Xverbose.
	* tests/gen_tests.in (sockopt-sol_socket, sockopt-sol_socket-Xabbrev,
	sockopt-sol_socket-Xraw, sockopt-sol_socket-Xverbose,
	sockopt-sol_socket-success, sockopt-sol_socket-success-Xabbrev,
	sockopt-sol_socket-success-Xraw, sockopt-sol_socket-success-Xverbose):
	New tests.
	* tests/sockopt-sol_socket.c: New file.
	* tests/sockopt-sol_socket-Xabbrev.c: Likewise.
	* tests/sockopt-sol_socket-Xraw.c: Likewise.
	* tests/sockopt-sol_socket-Xverbose.c: Likewise.
	* tests/sockopt-sol_socket-success.c: Likewise.
	* tests/sockopt-sol_socket-success-Xabbrev.c: Likewise.
	* tests/sockopt-sol_socket-success-Xraw.c: Likewise.
	* tests/sockopt-sol_socket-success-Xverbose.c: Likewise.

2022-07-31  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests/errno2name: enforce ENOTSUPP handling.
	This is needed for [gs]etsockopt(SOL_SOCKET) test, as some socket
	options (namely, SO_ZEROCOPY) tend to return it.

	* tests/errno2name.c [!ENOTSUPP] (ENOTSUPP): New macro constant.

2022-07-31  Eugene Syromyatnikov  <evgsyr@gmail.com>

	xlat: add NT_LOONGARCH_* to nt_descriptor_types.
	* src/xlat/nt_descriptor_types.in (NT_LOONGARCH_CPUCFG,
	NT_LOONGARCH_CSR, NT_LOONGARCH_LSX, NT_LOONGARCH_LASX,
	NT_LOONGARCH_LBT): New constants, introduced by Linux commit
	v5.19-rc1~37^2~19.
	* NEWS: Mention it.

2022-07-31  Eugene Syromyatnikov  <evgsyr@gmail.com>

	rtnl_link: decode IFLA_TSO_MAX_SIZE and IFLA_TSO_MAX_SEGS attributes.
	Introduced by Linux commit v5.19-rc1~159^2~108^2~12.

	* src/xlat/rtnl_link_attrs.in (IFLA_TSO_MAX_SIZE, IFLA_TSO_MAX_SEGS):
	New constants.
	* src/rtnl_link.c (ifinfomsg_nla_decoders) <[IFLA_TSO_MAX_SIZE],
	[IFLA_TSO_MAX_SEGS]>: New entries, call decode_nla_u32.
	* NEWS: Mention it.

2022-07-31  Eugene Syromyatnikov  <evgsyr@gmail.com>

	xlat: add FAN_MARK_EVICTABLE to fan_mark_flags.
	* src/xlat/fan_mark_flags.in (FAN_MARK_EVICTABLE): New constant,
	introduced by Linux commit v5.19-rc1~148^2~5.
	* tests/fanotify_mark.c: Update expected output.
	* NEWS: Mention it.

	xlat: add GPIO_V2_LINE_FLAG_EVENT_CLOCK_HTE to gpio_v2_line_flags.
	* src/xlat/gpio_v2_line_flags.in (GPIO_V2_LINE_FLAG_EVENT_CLOCK_HTE):
	New constant, introduced by Linux commit v5.19-rc1~16^2~9.
	* NEWS: Mention it.

	inet_diag: implement INET_DIAG_LOCALS and INET_DIAG_PEERS attributes decoding
	* src/netlink_inet_diag.c (print_sockaddr_array_member,
	decode_nla_sockaddrs): New functions.
	(inet_diag_msg_nla_decoders) <[INET_DIAG_LOCALS], [INET_DIAG_PEERS]>:
	Set the value to decode_nla_sockaddrs.
	* tests/nlattr_inet_diag_msg.c: Include <linux/atalk.h>, <netinet/in.h>.
	(print_sa): New function.
	(main): Add checks.
	* NEWS: Mention it.

	inet_diag: implement INET_DIAG_SOCKOPT attribute decoding.
	* src/netlink_inet_diag.c (decode_diag_sockopt): New function.
	(OPT_PRINT_FIELD_U): New macro.
	(inet_diag_msg_nla_decoders) <[INET_DIAG_SOCKOPT]>: New entry
	with the value of decode_diag_sockopt.
	* tests/nlattr_inet_diag_msg.c: Add checks.
	* NEWS: Mention it.

	inet_diag: implement INET_DIAG_CGROUP_ID attribute decoding.
