NETLINK_GENERIC is a protocol stacked on netlink protocol. When a NETLINK_GENERIC subsystem registers its "family" name in the kernel at run time, an integer value associated with this name is assigned by the kernel. This integer value is specified in struct nlmsghdr.nlmsg_type of subsequent communications with the NETLINK_GENERIC subsystem. This change implements decoding of NETLINK_GENERIC message types in symbolic form, for example: $ ./strace -yy -e 'sendto' ip tcp_metrics > /dev/null sendto(4<NETLINK:[GENERIC:12345]>, {{len=20, type=tcp_metrics, ... +++ exited with 0 +++ Note that type= specifying the NETLINK_GENERIC protocol family is decoded properly. * netlink.c (decode_nlmsg_type_generic): New function. (nlmsg_types): Add NETLINK_GENERIC entry. Signed-off-by: Masatake YAMATO <yamato@redhat.com> Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
strace - the linux syscall tracer
This is strace -- a diagnostic, debugging and instructional userspace utility with a traditional command-line interface for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.
strace is released under a Berkeley-style license at the request of Paul Kranenburg; see the file COPYING for details.
See the file NEWS for information on what has changed in recent versions.
Please read the file INSTALL-git for installation instructions.
The user discussion and development of strace take place on the strace mailing list -- everyone is welcome to post bug reports, feature requests, comments and patches to strace-devel@lists.sourceforge.net. The mailing list archives are available at https://sourceforge.net/p/strace/mailman/strace-devel/ and other archival sites.