GSoC 2017 Introduction: Netlink socket parsers

JingPiao Chen chenjingpiao at gmail.com
Sat Mar 25 15:54:32 UTC 2017


>Hello strace-developers:
> My name is JingPiao Chen. I'am a Computer Science sophomore from
>Guangdong Pharmaceutical University. I am interested in Netlink socket
>parsers suggested by Gabriel Laskar and Dmitry V. Levin. I am familiar
>with C, git, shell script, and gdb.
>
>My current work base on the code by Fabien Siron
>(https://github.com/Saruta/strace/tree/netlink)
>
>The work I do:
>(master:https://github.com/ppiao/strace/tree/master)
>1.Merge it into latest main tree.
>2.Fix coding style.
>3.Rewrite decode_netlink_flags() and decode_netlink_type().
>4.Rewrite and rename decode_inet_diag_sockid().
>5.Rewrite decode_nlattr_data().
>6.Decode some nested attributes.
>
>(netlink branch:https://github.com/ppiao/strace/tree/netlink)
>7.Rewrite getfdnlproto().
>8.Do not use optional_data in struct print_iovec_config,
>when call print_iovec, pass tcp->u_arg[0] as fd.
>Is this right? Like this:
>
>diff --git a/io.c b/io.c
>index a4f6b8e..6b43d7d 100644
>--- a/io.c
>+++ b/io.c
>@@ -94,7 +94,7 @@ print_iovec(struct tcb *tcp, void *elem_buf, size_t
elem_size, void *data)
> len = c->data_size;
> if (c->data_size != (kernel_ulong_t) -1)
> c->data_size -= len;
>- decode_netlink(tcp, iov[0], iov[1]);
>+ decode_netlink(tcp, tcp->u_arg[0], iov[0], iov[1]);
> break;
> default:
> printaddr(iov[0]);
>
>The work I haven't done:
>1.Don't merge rtnetlink.c
>2.Some nested do not decode.
>
>I want to know the goal of Netlink socket parsers project.
>Thank you.
Is this project need to decode all netlink protocols?
Can you give me some advice?

Thank you.
---
JingPiao Chen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20170325/1b394495/attachment.html>


More information about the Strace-devel mailing list