Subject: Re: adding an 802.11 data link type
To: None <email@example.com>
From: Bill Studenmund <firstname.lastname@example.org>
Date: 08/08/2002 12:32:14
On Wed, 7 Aug 2002, David Young wrote:
> After an interface bpf_attach()'s, BPF has a pointer to the interface,
> however, BPF will not set the interface's back pointer (if_bpf) until
> there is at least one listener. The back pointer is zeroed when the last
> listener disconnects.
> When BPF has one struct bpf_if per DLT, and an interface has one back
> pointer per DLT, each back pointer is set only when there is a listener
> for that DLT. Also, each back pointer is cleared when the last listener
> for that DLT detaches.
> Make sense so far?
> So, in sum, when there are no listeners, the overhead for first, second,
> and third DLTs is only the cost of comparing those back pointers to
> NULL. I think NetBSD can afford that.
Ok. This then sounds like a good way to go.
We don't need a sperate call type, as the multiple pointers have done the
selecting for us.