1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-17 10:26:15 +00:00

Allow kernel to compile without BPF.

r297816 added some bpf magic for VIMAGE unconditionally which no longer
allows kernels to compile without bpf (but with other networking).
Add the missing ifdef checks and allow a kernel to compile without bpf
again.

PR:		242136
Reported by:	dave mischler.com
MFC after:	2 weeks
This commit is contained in:
Bjoern A. Zeeb 2019-11-24 23:21:47 +00:00
parent b39d851dcb
commit 3232273f42
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=355070

View File

@ -32,6 +32,7 @@
* $FreeBSD$
*/
#include "opt_bpf.h"
#include "opt_inet6.h"
#include "opt_inet.h"
@ -1260,16 +1261,20 @@ static void
if_vmove(struct ifnet *ifp, struct vnet *new_vnet)
{
struct if_clone *ifc;
#ifdef DEV_BPF
u_int bif_dlt, bif_hdrlen;
#endif
void *old;
int rc;
#ifdef DEV_BPF
/*
* if_detach_internal() will call the eventhandler to notify
* interface departure. That will detach if_bpf. We need to
* safe the dlt and hdrlen so we can re-attach it later.
*/
bpf_get_bp_params(ifp->if_bpf, &bif_dlt, &bif_hdrlen);
#endif
/*
* Detach from current vnet, but preserve LLADDR info, do not
@ -1316,8 +1321,10 @@ if_vmove(struct ifnet *ifp, struct vnet *new_vnet)
if_attach_internal(ifp, 1, ifc);
#ifdef DEV_BPF
if (ifp->if_bpf == NULL)
bpfattach(ifp, bif_dlt, bif_hdrlen);
#endif
CURVNET_RESTORE();
}