PF_RING icon indicating copy to clipboard operation
PF_RING copied to clipboard

Add license information for the pf_ring.h located in the kernel/linux directory

Open TuliMyrskyTaivas opened this issue 1 year ago • 2 comments

Could you please specify the license explicitly in the pf_ring.h file?

The absence of explicit declaration creates ambiguity when linking with the user-space pfring library. The library itself is distributed under LGPLv2.1. But the pfring.h header file includes a linux/pf_ring.h file, which refers to a kernel module distributed under the GPLv2 license.

And it turns out that the code that links with the user-space pfring library implicitly uses header files under the GPLv2 license. It can be a significant issue under certain circumstances, because the position of the GPLv2 is that generally, using GPLv2 code in a work makes the whole work subject to the GPLv2.

TuliMyrskyTaivas avatar May 27 '24 15:05 TuliMyrskyTaivas

The pf_ring.h header file part of the kernel module (GPLv2) is included by the userspace library (LGPLv2.1) to access the socket API (data structures). How are you suggesting to change the header files in practice?

cardigliano avatar May 27 '24 15:05 cardigliano

In practice I would like to see something like license exception which exists in Linux kernel for User-space API (UAPI) header files. There is an explicit syscall exception described in LICENSES/exceptions/Linux-syscall-note (https://github.com/torvalds/linux/blob/master/LICENSES/exceptions/Linux-syscall-note), which does not extend the GPLv2 requirements to any software which uses it to communicate with the kernel.

So just the reference to Linux-syscall-note would be fine.

TuliMyrskyTaivas avatar May 28 '24 11:05 TuliMyrskyTaivas