Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 May 2017 22:08:50 +0200
From:      Michael Tuexen <tuexen@freebsd.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r317732 - head/usr.bin/truss
Message-ID:  <6E31B0EF-74B4-4D9A-8126-1161AEF4F3CE@freebsd.org>
In-Reply-To: <1678847.Pdl09MfElI@ralph.baldwin.cx>
References:  <201705030923.v439NEWv072629@repo.freebsd.org> <1678847.Pdl09MfElI@ralph.baldwin.cx>

next in thread | previous in thread | raw e-mail | index | archive | help
> On 16. May 2017, at 20:28, John Baldwin <jhb@freebsd.org> wrote:
>=20
> On Wednesday, May 03, 2017 09:23:14 AM Michael Tuexen wrote:
>> Author: tuexen
>> Date: Wed May  3 09:23:13 2017
>> New Revision: 317732
>> URL: https://svnweb.freebsd.org/changeset/base/317732
>>=20
>> Log:
>>  Decode the third argument of socket().
>=20
> This is not quite right for sockets that aren't PF_INET.  Probably =
this
> warrants a const char *sysdecode_socket_protocol(int domain, int =
protocol)
> that honors the domain in deciding what protocol value to output.  For =
now
> this could just handle PF_INET:
>=20
> const char *
> sysdecode_socket_protocol(int domain, int protocol)
> {
>=20
>    switch (domain) {
>        case PF_INET:
>            return (lookup_value(sockipproto, protocol));
>        default:
>            return (NULL));
> }
>=20
> Then use this in truss.
Yes, you are right. Will fix this tomorrow.

Best regards
Michael
>=20
> The socket option stuff currently hardcodes IP protocols and levels =
only
> because we don't have a good way of obtaining the domain of an =
existing
> socket in a target process.  For socket()'s protocol argument though =
we
> readily have the domain available.
>=20
> At some point in the future we might address the socket option issue =
by
> caching the domain argument when sockets are created in a table, and =
for
> truss when attaching to an existing process using the kinfo_file =
interface to
> learn about existing sockets, but that's not entirely trivial.
>=20
> --=20
> John Baldwin




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6E31B0EF-74B4-4D9A-8126-1161AEF4F3CE>