On Tue, Mar 16, 2010 at 11:11:24AM -0500, Nicolas Williams wrote: > What you need is a way to parse the door call argument data buffer and > the door return rbuf too. I don't see where that's documented in the > source (the protocol itself is private, but it should be documented in > source), so I'm cc'ing two people who can help you with that. (The > relevant source code is in $SRC/lib/libc/port/gen/nss_common.c.)
Well, I can read the code :) The arg data starts with a nss_pheader_t. In the case of a search (phdr->nsc_callnumber == NSCD_SEARCH) the header will be followed by the db name and key. The header includes offsets to those data, since the header is variable size. For searches take a look at nss_upack_key2arg() in $SRC/lib/libc/port/gen/nss_dbdefs.c. The result is handled similarly, with the data returned in "files" format. Nico -- _______________________________________________ dtrace-discuss mailing list [email protected]
