On 03.11.2016 14:10, Joerg Sonnenberger wrote: > On Tue, Nov 01, 2016 at 03:58:10PM +0100, Kamil Rytarowski wrote: >> Which one is preferred for NetBSD? > > I'd go with neither, but base the new interface on FreeBSD's. > PT_GETLWPS takes as argument: > > struct ptrace_getinfos_request { > size_t allocated_lwps; > size_t current_lwps; > struct ptrace_lwpinfo[]; > } > > The caller provides allocated_lwps and promises that the buffer can hold > sizeof(ptrace_getinfos_request) + allocated_lwps * sizeof(ptrace_lwpinfo) > byte. The kernel writes up to allocated_lwps entries and sets > current_lwps to the current total number of lwps. The caller can then > easily check how many entries it has to allocate and maybe repeat the > request. > > Joerg > For the reference ptrace_lwpinfo[] is a flexible array member from C99. This construct will play well with reallocarr(3)-like functions. I will prepare a prototype of this.
Attachment:
signature.asc
Description: OpenPGP digital signature