Date: Wed, 11 Jan 2012 20:03:44 +0100 From: Bernhard Schmidt <bschmidt@freebsd.org> To: freebsd-wireless@freebsd.org Subject: Re: 11s mesh path setup problem Message-ID: <201201112003.44891.bschmidt@freebsd.org> In-Reply-To: <CAJ-VmomX2NK6p%2BckB6Gc40sz0PTx7cf7NznVLH1tTPvnhmHH6A@mail.gmail.com> References: <CA%2BsBSoJWXD5S-zvxHR_=iwh26G0bd00trR=E-jCUBD03uMrU%2BQ@mail.gmail.com> <CAJ-VmomX2NK6p%2BckB6Gc40sz0PTx7cf7NznVLH1tTPvnhmHH6A@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 11 January 2012 18:23:29 Adrian Chadd wrote: > Hi! > > I've just done a bit of a code review. Here are my comments: > > * ether_sprintf() can't be implemented the way you've implemented it - > it just won't work at all in a multithreaded, concurrent environment. > We'll have to find an alternative way. > > Maybe something like: > > char * > ether_sprintf2(const u_char *ap, char *buf, int len) > { > .. do things to buf, rather than the static buf. > } > > Then maybe this'd work: > > char a[32], b[32]; > IEEE80211_NOTE(..., ether_sprintf2(addr1, a, 32), ether_sprintf2(addr2, a, 32)); > > does that make sense? Isn't there an example in net80211 with %D? printf("%6D %6D", addr1, ":", addr2, ":"); The saner alternative is to call printf() multiple times, see ieee80211_dump_pkt() as an example. -- Bernhard
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201201112003.44891.bschmidt>