Licensing Question
Your project seems to include both third party AGPL and Microsoft proprietary components. Can you explain why this works?
What is the problem with linking with a proprietary component?
Anyone who wants to distribute the software can't link AGPL and proprietary components -- it is a violation of AGPL.
Following this logic, there would be no AGPL apps/libs/drivers possible to run under *BSD, Windows and macOS as system libraries are not *GPL and I can make proprietary changes to any of libraries in *BSD systems.
So… basically it's not true what you're trying to say.
This is a known misconception. Truth is, that direction of applied licences and usage matters.
Let's take an application/library under licence A and another library under B:
- If right owner of B explicitly allow to use their product in A, I can use no matter what the licences were.
2 if right owner of B explicitly prohibited to use it in A, I'm forbidden to use it in A no matter what the licence is.
-
App A can code a lib under B, if there's written exception in a licence to use it in unmodified form, or licence compatibility matrix written explicitly.
-
I don't remember any restrictions in licences, about that my code can't specifically use other libraries under other licence. If there's any, please point me, I'd love to learn it better.
Examples for 3:
- In such way anyone can link with system libraries such as
kernel32.dll, macOS Frameworks or GNU libc. - Linux Kernel GPL API has no linked restriction lifted off like in LGPL, so non-GPL driver is forbidden to use because of licence of kernel API (read "library interface") and not vice versa.
Sorry, I don't follow your explanation, but you can't link GPL/AGPL and proprietary within a single program, such as an application or OS, or you will violate GPL/AGPL. In any case, my client who was interested in this project passed on using it because we got no answer for so long about the potential licensing issues, so it is a moot point and you can close this issue.
Could you explain which parts of this driver are proprietary and which are AGPL. I studied the project and see only AGPL code which links to WDK, which doesn't have any restrictions.
I really would like to understand your point of view because I understand yours as statement below, please correct me.
If I have a library with BSD/MIT/Apache 2.0/proprietary licence, and link it with AGPL code, library "becomes" AGPL.