chris...@zoulas.com (Christos Zoulas) wrote: > On Nov 30, 11:39pm, plu...@rya-online.net (Iain Hibbert) wrote: > -- Subject: Re: CVS commit: src/sys > > | On Fri, 30 Nov 2012, Christos Zoulas wrote: > | > | > In article <20121130134954.ga14...@britannica.bec.de>, > | > Joerg Sonnenberger <jo...@britannica.bec.de> wrote: > | > >On Fri, Nov 30, 2012 at 08:34:27AM -0500, Christos Zoulas wrote: > | > >> | fd_set doesn't seem like an appropriate structure for this. > | > >> > | > >> I've been thinking about creating something more efficient, but I > | > >> didn't come up with something better and decided that using fd_set > | > >> was less complex. > | > > > | > >A plain bitmap is ok for this purpose. Something like: > | > > > | > >static uintptr_t inet4_reserve[65536 / sizeof(uintptr_t) / > | > >CHAR_BITS]; > | > > | > Sure, but then I would have to rewrite or open code the access macros. > | > I think that it would be a lot nicer to have a more general "fdset" > | > that could be included multiple times, and provided the access macros. > | > | well, there is bitstring(3) ..? > > I'll convert to that. Or cook a set of macros. > > christos
Or reuse this interface, which manages portmap atomically: http://nxr.netbsd.org/xref/src/sys/net/npf/npf_nat.c?r=1.17#336 -- Mindaugas