History log of /external/strace/evdev.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
dc75b01004a0588c1eb3bc26d7248a6e473b2cdd 05-Jul-2017 Elliott Hughes <enh@google.com> Update strace to 4.18.

Noteworthy changes in release 4.18 (2017-07-05)
===============================================

* Improvements
* Implemented decoding of SCM_TIMESTAMP* control messages.
* Implemented decoding of netlink NLMSG_DONE messages.
* Implemented decoding of netlink generic nlmsg_type and nlmsg_flags.
* Implemented decoding of NETLINK_AUDIT, NETLINK_NETFILTER, NETLINK_ROUTE,
NETLINK_SELINUX, NETLINK_SOCK_DIAG, and NETLINK_XFRM message types.
* Implemented decoding of NETLINK_GENERIC protocol families.
* Implemented basic protocol specific decoding of AF_INET, AF_INET6,
AF_NETLINK, AF_PACKET, AF_SMC, and AF_UNIX messages of NETLINK_SOCK_DIAG.
* Implemented basic decoding of netlink attributes.
* Implemented basic protocol specific decoding of AF_INET, AF_NETLINK,
AF_PACKET, AF_SMC, and AF_UNIX netlink attributes of NETLINK_SOCK_DIAG.
* Implemented decoding of inet_diag_msg, netlink_diag_msg, and unix_diag_msg
netlink attributes of NETLINK_SOCK_DIAG.
* Updated lists of ARPHRD_*, KEYCTL_*, NDIAG_SHOW_*, RTM_*, SCM_*, SCTP_*,
SO_*, V4L2_*, and prctl ARCH_* constants.
* Updated lists of ioctl commands from Linux 4.12.

* Bug fixes
* In interactive mode (-I2), those signals that were blocked at startup
will remain blocked for the whole period of strace execution.
* strace no longer resets SIGCHLD handler in tracees to the default action.
* When traced command is terminated by a blocked signal, strace unblocks
that signal to ensure its own termination with the same signal.
* Fixed corner cases in decoding of old sigaction syscall.
* Fixed build with old kernel headers on mips.
* Fixed build on aarch64 and tile with glibc >= 2.26.
* Fixed build on arc and nios2.

Bug: N/A
Test: strace date
Change-Id: Ib34873ff60824b04f67332380c3460721f66002e
/external/strace/evdev.c
d35df493b4e7684c50d2d2fa032ee3a7ac228009 16-Feb-2017 Elliott Hughes <enh@google.com> Upgrade strace to 4.16 from 4.14.

Noteworthy changes in release 4.16 (2017-02-14)

* Improvements
* Implemented syscall return value injection (-e inject=SET:retval= option).
* Implemented signal injection (-e inject=SET:signal= option).
* Implemented decoding of SUID_DUMP_* constants in PR_[GS]ET_DUMPABLE.
* Implemented decoding of all SG_* ioctl commands.
* Implemented decoding of ustat syscall.
* Implemented decoding of BPF_OBJ_PIN, BPF_OBJ_GET, BPF_PROG_ATTACH,
and BPF_PROG_DETACH commands of bpf syscall.
* Enhanced decoding of sg_io_hdr and sg_io_v4 structures.
* Enhanced decoding of get_robust_list, getrandom, io_submit, set_robust_list
syscalls.
* Enhanced decoding of entities of kernel long type on x32 and mips n32 ABIs.
* Updated lists of IP_*, IPV6_*, and LOOP_* constants.
* Updated lists of ioctl commands from Linux 4.10.
* Added decoding of recently added syscalls on avr32, microblaze, ppc,
and ppc64.

* Bug fixes
* Fixed pathmatch of oldselect syscall on 64-bit architectures.
* Fixed decoding of mmap2 syscall on s390 when arguments are not available.
* Fixed decoding of kexec_file_load, mprotect, pkey_mprotect, prctl, preadv*,
and pwritev* syscalls on x32.
* Fixed printing of string arguments of getxattr and setxattr syscalls
when -s option is used to limit the printed string size.
* Fixed decoding of ifconf, ifreq, and loop_info structures on non-native
personalities.
* Fixed decoding of SG_* and LOOP_* ioctl commands.
* Fixed build on mips with musl libc.
* Fixed cross-building of ioctlsort.
* Applied minor formatting fixes to the manual page.

Noteworthy changes in release 4.15 (2016-12-14)

* Changes in behavior
* Time stamps are now printed according to ISO 8601.
* Changed output format of val3 parameter of futex FUTEX_WAKE_OP operation.
* The last argument of mincore, sched_getaffinity, and sched_setaffinity
syscalls is now formatted as an array.

* Improvements
* Implemented syscall fault injection (-e fault=... option).
* Implemented decoding of DM_* ioctl commands.
* Implemented decoding of attr parameter of perf_event_open syscall.
* Implemented decoding of pkey_alloc, pkey_free, and pkey_mprotect syscalls.
* Implemented dumping of mq_timedsend and mq_timedreceive syscalls.
* Implemented decoding of PR_SET_FP_MODE and PR_GET_FP_MODE operations
of prctl syscall.
* Implemented PTRACE_GETREGS API support on m68k.
* Updated lists of ARCH_*, BPF_*, BTRFS_*, FALLOC_*, MS_*, *_MAGIC,
and V4L2_* constants.
* Updated lists of ioctl commands from Linux 4.9.
* Added decoding of recently added syscalls on arc, x32, and xtensa.
* Enhanced manual page.

* Bug fixes
* Fixed corner cases in decoding of exit, exit_group, futimesat, getgroups,
getresuid, init_module, inotify_init1, kcmp, kexec_load, lookup_dcookie,
mq_getsetattr, mq_notify, mq_open, mq_timedreceive, mq_timedsend,
name_to_handle_at, prctl, process_vm_readv, process_vm_writev, setfsuid,
setgroups, setns, unshare, and utimes syscalls.
* Fixed handling of verbose flag in printing of controls array
of struct v4l2_ext_controls.
* Fixed omission of field names in the output of capability, sigaction,
sigevent, statfs, timespec, timeval, and utimbuf structures.
* Fixed printing of unknown syscalls in siginfo structure.
* Fixed decoding of ioctl constants on m68k.
* Fixed cris architecture support.
* Fixed cross build when host compiler does not support the same
set of warning flags as the cross compiler.
* Fixed build on SLE10 and SLE11.

Bug: N/A
Test: manual
Change-Id: I590bf5db1652aa1dfdc0eb16e30fd97c82af2261
/external/strace/evdev.c
7af5e6593f95d0bcb2618c91884bd7349148e918 15-Aug-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix typo in comment
/external/strace/evdev.c
484326dbd8f8e02983e37498b4b5fa990d16b536 11-Jun-2016 Dmitry V. Levin <ldv@altlinux.org> Consistently use printaddr for printing addresses

* bjm.c (SYS_FUNC(init_module)): Use printaddr.
* clone.c (SYS_FUNC(clone)): Likewise.
* evdev.c (ff_effect_ioctl): Likewise.
* mtd.c (decode_mtd_oob_buf): Likewise.
* net.c (SYS_FUNC(sendmmsg), SYS_FUNC(recvmmsg), SYS_FUNC(getsockopt)):
Likewise.
* print_sigevent.c (print_sigevent): Likewise.
* printsiginfo.c (printsigval, print_si_info): Likewise.
* signal.c (decode_new_sigaction): Likewise.
* sysmips.c (SYS_FUNC(sysmips)): Likewise.
* util.c (printpathn, printstr, umoven_or_printaddr): Likewise.
* v4l2.c (print_v4l2_buffer, print_v4l2_framebuffer,
umoven_or_printaddr_ignore_syserror): Likewise.
* tests/net-icmp_filter.c (main): Update.

Based on patch by Eugene Syromyatnikov <evgsyr@gmail.com>.
/external/strace/evdev.c
43c8a5d0e8a04b45e014a1cc6371a7beb2856387 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> Mpersify EVIOC* ioctl parser

* defs.h (evdev_abs): New xlat prototype.
(evdev_ioctl): Remove.
* evdev.c: Do not include "xlat/evdev_abs.h".
Mpersify struct ff_effect and ioctl numbers.
(evdev_ioctl): Mpersify.
* NEWS: Mention this enhancement.
/external/strace/evdev.c
aa21c07f2ee04bf7d6d6c8942a8c71fbfffc4b90 28-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix printing of unrecognized event type passed to EVIOCGBIT

* evdev.c (bit_ioctl): If event type is not unrecognized,
print the argument as an address.
/external/strace/evdev.c
47be9f259758fa65eff496a17ce879f63b208163 28-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix printing of EV_PWR's argument

* evdev.c (bit_ioctl): Fix printing of comma before EV_PWR's argument.
/external/strace/evdev.c
3f23c0c79f799291a5565e27204b9e4acd8a1982 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix indentation

* evdev.c: Fix indentation of print formats.
/external/strace/evdev.c
10de2eb030ed48036eba638d9477a3151df232d0 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix decoding of EVIOCGNAME, EVIOCGPHYS, and EVIOCGUNIQ

* evdev.c (evdev_read_ioctl): Fix printing of the string returned
in response to EVIOCGNAME, EVIOCGPHYS, and EVIOCGUNIQ requests.
/external/strace/evdev.c
b29569aa1dec998e58768e42f5b99fdbebfe1389 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix EVIOCGVERSION decoding

* evdev.c (evdev_read_ioctl): Print EVIOCGVERSION's argument
using #x format.
/external/strace/evdev.c
563f0cefb1402979bd91a1a9c6951ad452cbe5ff 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix EVIOCGMTSLOTS decoding

* evdev.c (mtslots_ioctl): Use umove_or_printaddr.
/external/strace/evdev.c
14a810e6d87d03852b45bacf5d4444320d413b69 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix bitset decoding

* evdev.c (decode_bitset): Use umove_or_printaddr.
/external/strace/evdev.c
e54f98a223d2a75df7d34c924a3baccd35530cb0 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix decoding of struct input_id

* evdev.c (getid_ioctl): Use umove_or_printaddr.
/external/strace/evdev.c
13f8e8fb4e37674ecf222e783be6c3e9e81c9944 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix decoding of struct input_keymap_entry

* evdev.c (keycode_V2_ioctl): Use umove_or_printaddr.
/external/strace/evdev.c
7954e2a7113ba4f2d110f2376b4c0d98756b5cfe 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix decoding of EVIOCGKEYCODE/EVIOCSKEYCODE

* evdev.c (keycode_ioctl): Use umove_or_printaddr.
/external/strace/evdev.c
e167006908542e3643870deadd79051b73730530 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix decoding of struct input_absinfo

* evdev.c (abs_ioctl): Use umove_or_printaddr.
/external/strace/evdev.c
3a45eb37112d0ccd0efb793a0c81f80a1bc5d627 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix decoding of struct ff_effect

* evdev.c (ff_effect_ioctl): Use umove_or_printaddr.
Fix printing of struct ff_effect.u member names.
/external/strace/evdev.c
c758ed0f50433f1045fdb278ab1cd94fa309fece 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix printing of struct ff_envelope.fade_level

* evdev.c (decode_envelope): Print struct ff_envelope.fade_level
using #x format.
/external/strace/evdev.c
9635df43b6d6fd76ce89b1ab5c2e9d2f9c534853 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix decoding of EVIOCGRAB and EVIOCREVOKE

* evdev.c (evdev_write_ioctl): Print argument of EVIOCGRAB
and EVIOCREVOKE as unsigned long.
/external/strace/evdev.c
0039424cb95c4fdd727d7c674ae9402efbe57460 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix EVIOCRMFF decoding

* evdev.c (evdev_write_ioctl): Print EVIOCRMFF's argument as int.
/external/strace/evdev.c
53767d8ec52de080a0fd8f0ef6a14b83c645869f 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: move handling of EVIOCGBIT to a separate function

* evdev.c (evdev_read_ioctl): Move EVIOCGBIT handling to ...
(bit_ioctl): ... new function.
/external/strace/evdev.c
8a18f80a372874da930e0ec22c4c6865a0268eb0 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: reorder ioctl command checks

Change the order of ioctl command cheks to match the kernel:
1st, check for fixed-number fixed-length commands,
2nd, check for fixed-number variable-length commands,
3rd, check for multi-number fixed-length commands,
4thm check for multi-number variable-length commands.

* evdev.c (evdev_read_ioctl, evdev_write_ioctl): Reorder
ioctl command checks.
/external/strace/evdev.c
2114e08a87b723891daa5ea215d3a188be8a6ac7 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: decode all directions except _IOC_READ on entering syscall

* evdev.c (evdev_write_ioctl): Remove exiting check.
(evdev_read_ioctl): Move entering check ...
(evdev_ioctl): ... here. Add RVAL_DECODED to return code in _IOC_WRITE
and default cases.
/external/strace/evdev.c
8d85c233d27791b453e55d09603540f8129c48d9 27-May-2016 Dmitry V. Levin <ldv@altlinux.org> evdev.c: fix indentation of preprocessor directives

* evdev.c: Fix indentation of preprocessor directives.
Move inclusion of <linux/ioctl.h> into [HAVE_LINUX_INPUT_H].
/external/strace/evdev.c
b679508f6ef838a390d807c1bb4696b096543475 07-Jul-2015 Dmitry V. Levin <ldv@altlinux.org> Use printpair_int

* evdev.c (repeat_ioctl): Use printpair_int.
* net.c (do_pipe, sys_socketpair): Likewise.
/external/strace/evdev.c
3460dc486d333231998de0f19918204aacee9ae3 28-Mar-2015 Felix Janda <felix.janda@posteo.de> Include <linux/ioctl.h> for _IOC_* macros

Fix a compilation failure with musl libc.

* evdev.c: Include <linux/ioctl.h>.
* ioctl.c: Include <linux/ioctl.h> instead of <asm/ioctl.h>.
* ioctlsort.c: Likewise.

Reported-by: Dima Krasner <dima@dimakrasner.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
/external/strace/evdev.c
7d8b41a4f76762228cd1a0a71f642348a7a540c6 22-Feb-2015 Dmitry V. Levin <ldv@altlinux.org> evdev: decode keycode value in EVIOC[GS]KEYCODE_V2 commands

* evdev.c (keycode_V2_ioctl): Use evdev_keycode to print
input_keymap_entry.keycode.
/external/strace/evdev.c
19dadf94015523c6b8b7a2a0a8daff4151dafb07 22-Feb-2015 Dmitry V. Levin <ldv@altlinux.org> evdev: fix build with old kernel headers

* configure.ac: Check whether struct input_absinfo.resolution is defined
in <linux/input.h>.
* evdev.c (SYN_MAX): Add fallback definition.
(abs_ioctl): Wrap use of struct input_absinfo.resolution in #ifdef check.
(keycode_V2_ioctl, mtslots_ioctl, repeat_ioctl): Wrap in #ifdef checks.
(evdev_read_ioctl): Wrap in #ifdef checks the code that uses EV_SW,
EVIOCGREP, EVIOCGKEYCODE_V2, EVIOCGMTSLOTS, EVIOCGPROP, and EVIOCGSW.
(evdev_write_ioctl): Wrap in #ifdef checks the code that uses EVIOCSREP,
EVIOCSKEYCODE_V2, EVIOCSCLOCKID, and EVIOCREVOKE.
/external/strace/evdev.c
4f750b9ad1bb870337395355047ac2f89f340feb 20-Feb-2015 Etienne Gemsa <etienne.gemsa@lse.epita.fr> Add decoding for evdev ioctls

This patch introduces decoding for evdev ioctls. For EVIOCSFF the five
first members are decoded, the union is not. The code was compiled and
tested on x86_64 with Linux 3.13.

* evdev.c: New file.
* Makefile.am (strace_SOURCES): Add it.
* defs.h (evdev_ioctl): New prototype.
* ioctl.c (ioctl_decode): Call evdev_ioctl for 'E' ioctl commands.
* xlat/evdev_autorepeat.in: New file.
* xlat/evdev_ff_status.in: New file.
* xlat/evdev_ff_types.in: New file.
* xlat/evdev_keycode.in: New file.
* xlat/evdev_leds.in: New file.
* xlat/evdev_misc.in: New file.
* xlat/evdev_mtslots.in: New file.
* xlat/evdev_prop.in: New file.
* xlat/evdev_relative_axes.in: New file.
* xlat/evdev_snd.in: New file.
* xlat/evdev_switch.in: New file.
* xlat/evdev_sync.in: New file.

Signed-off-by: Etienne Gemsa <etienne.gemsa@lse.epita.fr>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
/external/strace/evdev.c