Hello,
On Mon, Jun 10, 2019 at 01:53:06PM -0300, Martin Pieuchot wrote:
> `bd_bufsize' can change via the BIOCSBLEN ioctl(2) but iff the
> descriptor hasn't been linked to an interface. Which means the
> buffers haven't been allocated yet.
>
> ok?
reads OK to me.
regards
sashan
>
> Index: net/bpf.c
> ===================================================================
> RCS file: /cvs/src/sys/net/bpf.c,v
> retrieving revision 1.175
> diff -u -p -r1.175 bpf.c
> --- net/bpf.c 18 May 2019 12:59:32 -0000 1.175
> +++ net/bpf.c 10 Jun 2019 16:42:56 -0000
> @@ -1579,9 +1579,9 @@ bpf_d_smr(void *smr)
> {
> struct bpf_d *bd = smr;
>
> - free(bd->bd_sbuf, M_DEVBUF, 0);
> - free(bd->bd_hbuf, M_DEVBUF, 0);
> - free(bd->bd_fbuf, M_DEVBUF, 0);
> + free(bd->bd_sbuf, M_DEVBUF, bd->bd_bufsize);
> + free(bd->bd_hbuf, M_DEVBUF, bd->bd_bufsize);
> + free(bd->bd_fbuf, M_DEVBUF, bd->bd_bufsize);
>
> if (bd->bd_rfilter != NULL)
> bpf_prog_smr(bd->bd_rfilter);
>