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