On Tue, May 26, 2015 at 4:26 PM, Dmitry V. Levin <[email protected]> wrote: > On Sat, Feb 07, 2015 at 08:17:46PM +0300, Dmitry V. Levin wrote: >> On Sat, Feb 07, 2015 at 06:05:56PM +0100, Ben Noordhuis wrote: >> > On Sat, Feb 7, 2015 at 12:55 AM, Dmitry V. Levin wrote: >> > > On Thu, Feb 05, 2015 at 07:28:45PM +0100, Ben Noordhuis wrote: >> > >> +#ifdef IP_ADD_MEMBERSHIP >> > >> +static void >> > >> +print_mreq(struct tcb *tcp, long addr, int len) >> > >> +{ >> > >> + struct ip_mreq mreq; >> > >> + if (len == sizeof(mreq) && umove(tcp, addr, &mreq) == 0) { >> > >> + tprints("{imr_multiaddr=inet_addr("); >> > >> + print_quoted_string(inet_ntoa(mreq.imr_multiaddr), >> > >> + 16, QUOTE_0_TERMINATED); >> > >> + tprints("), imr_interface=inet_addr("); >> > >> + print_quoted_string(inet_ntoa(mreq.imr_interface), >> > >> + 16, QUOTE_0_TERMINATED); >> > >> + tprints(")}"); >> > >> + } >> > >> + else { >> > >> + printstr(tcp, addr, len); >> > >> + } >> > >> +} >> > > >> > > Is there any use to print the address with printstr if length is not >> > > sizeof(ip_mreq) or umove has failed? Other sockopt parsers in such >> > > situations just print the address in hex. >> > >> > Printing the raw data helps troubleshooting more than printing a >> > memory address does, IMO. printstr() is also what print_getsockopt() >> > and print_setsockopt() seem to fall back to. Let me know what you >> > think is preferable. >> >> Agreed, lets fall back to printstr() in case of length mismatch. >> >> > I agree that there is no point calling printstr() when umove() fails, >> > I'll update that. > > Are you still working on that update?
I have it on my todo list but the days don't have enough hours in them. If someone else wants to pick up the patches, s/he has my blessing; no attribution needed. ------------------------------------------------------------------------------ One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y _______________________________________________ Strace-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/strace-devel
