On 04/12/23 23:48, João Valverde wrote:
On 04/12/23 22:57, Gerald Combs wrote:
On 12/4/23 12:43 PM, João Valverde wrote:
https://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins
https://www.gnu.org/licenses/gpl-faq.html#LinkingWithGPL
Gerald: "As far as I know the GPL doesn't place any restrictions on
making an internal combined work with GPL and non-GPL software"
Is this really correct? Is it possible to comply with the GPLv2 and
modify Wireshark to use a third-party proprietary library, even if
it is only used internally? Can corporation A legally modify
Wireshark source code to use a proprietary library licensed by
corporation B to corporation A, even if they never release this
modified version outside of A's organization? I would be surprised
if that were the case.
You're the one insisting that the GPLv2 prohibits this, so where does
it say that? The only clause I can find in the GPLv2 that directly
addresses modification is 2a:
"You must cause the modified files to carry prominent notices stating
that you changed the files and the date of any change."
That's it. I don't see anything that prohibits me from combining GPL
code with proprietary code on my personal machine or my company
laptop. *However*, the very next clause (2b) says
"You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any part
thereof, to be licensed as a whole at no charge to all third parties
under the terms of this License."
...so if you do combine Wireshark with some piece of GPL-incompatible
code, you certainly can't distribute it under the terms of the GPL,
and in Wireshark's case it means you can't distribute your combined
work at all since Wireshark is only available under the GPL.
I said I would be surprised so you may be right about this. I will
need to do more research to draw a definitive conclusion.
After looking into it in more detail I believe you are correct. The
restrictions are covered in section 2b and the compatibility
requirements only kick in when distributing and publishing.
I will remove the license enforcement code. After thinking about it some
more and listening to all the feedback I think it is both too
restrictive for private use and too permissive for distribution.