wiki:TapWindowsLicenseChange

Version 2 (modified by Samuli Seppänen, 10 years ago) (diff)

--

Both tap-windows and tap-windows6 are currently licensed under GPLv2. This is problematic, because the use of WDK library license can be seen as contradicting the GPLv2 license. Fortunately this is a problem others have pondered upon previously, so we don't have to reinvent the wheel.

Dazo (IRC) suggested using the same amendment as the KVM/SPICE project:

  ----------------------------------------------------------------------
   With respect to binaries built using the Microsoft(R) Windows Driver
   Kit (WDK), GPLv2 does not extend to any code contained in or derived
   from the WDK ("WDK Code"). As to WDK Code, by using or distributing
   such binaries you agree to be bound by the Microsoft Software License
   Terms for the WDK. All WDK Code is considered by the GPLv2 licensors
   to qualify for the special exception stated in section 3 of GPLv2
   (commonly known as the system library exception).
  ----------------------------------------------------------------------

Quoting dazo:

"The reason is that the KVM/SPICE clause have most likely been reviewed by Richard Fontana (Red Hat's licensing guru, and he is a lawyer). So that should have covered all the needed angles. How I understand this clause, it covers these areas:

  • The GPL license does not extend to the WDK code
  • The WDK license is separate, and you must comply to that as well as the GPL license
  • The tap driver considers the WDK code a system library, which GPL allows linking against despite not being a GPL library

And with that covered, shipping it further shouldn't be any problem, as the tap driver clearly is GPL."

Dgollub (IRC) suggested adding the following, based on discussions with his (company's) legal councellors:

"I think the relevant language that TAP should add to theirs would be more along the lines of the SSL exception (that the TAP licensors grant a special exception to GPL to link against the windows driver code and distribute the work without subjecting the Windows code to the GPL). This language would go into the header of the copy of GPL that they supply with their software."