Programmatically Creating VLAN in the Kernel

Juan Mojica jmojica at gmail.com
Mon Mar 30 13:49:56 UTC 2015


I'm trying to programmatically create a VLAN in the kernel via ifioctl, but
I'm hitting a "copyin" in the ioctl path, and since the address I'm passing
in is a kernel address and not a user space address, the copyin is failing.

Calling the ioctl from user space is a non-starter at this point, and I
believe there will be other ioctls that will have to be called from the
kernel which will hit the same issue.

Any suggestions?

So far I've thought about marking the ifreq flags to indicate the request
came from the kernel and essentially bypass the copyin.  Another option
would be to make the create functions globally available, but this would
violate the modularity of the VLAN module.

Thanks in advance,
-- 
Juan Mojica
Email: jmojica at gmail.com


More information about the freebsd-net mailing list