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:
parent
b39d851dcb
commit
3232273f42
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=355070
@ -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();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user