I think we are diverting the discussion here. While I agree with the factual representation of GPLs copyleft, I disagree with how it is enforced here.
It can be the longterm goal that we enforce it, but as a first step it should be a warning not an error. This would allow companies to transition without immediately having to act. Especially license changes can take a very long time and is an issue, also for us. There is also precedence for this approach, the Linux kernel does it the same way. Kind regards Roland > Am 04.12.2023 um 17:24 schrieb João Valverde <j...@v6e.pt>: > > > >> On 04/12/23 15:55, Martin Mathieson via Wireshark-dev wrote: >> I have been doing internal Wireshark releases for years wherever I've been >> working (as far as I know, they have never been sent outside of the >> company). I have *never* used the plugin mechanism. I package up the entire >> program, even if only one file has been changed. My current company has >> acquired and merged with several other companies and development groups - as >> far as I can tell, they all have a local Wireshark person who does the same. >> If people are working closely with me, we sometimes even just keep >> dissectors as part of the test code for the project that uses them, and team >> members build it themselves. >> >> Am I allowed to do this? > > In a strict legal sense I don't think you can use a GPL-incompatible license > for your changes, but it doesn't really matter as long as you don't > distribute it. Otherwise what does it matter which license it uses or if it > doesn't have a license at all? There is no one to license it to. You are the > only one using it and the GPL grants you the right to modify the software. > You can grant yourself only a GPL-license for your modifications and no one > else if it gives you peace of mind. :-) > > AFAIK there is also nothing legally preventing someone from rebuilding > Wireshark with a modified source code to ignore the plugin license check and > forget the whole issue, in the same conditions as above, as long as they > don't distribute the proprietary plugin. The GPL violation only happens if > you distribute your plugin using an incompatible license. > >> Martin >> >> >> >> On Mon, Dec 4, 2023 at 2:54 PM João Valverde <j...@v6e.pt> wrote: >> >> >> >> On 04/12/23 14:52, João Valverde wrote: >> > >> > >> > On 04/12/23 14:32, Anders Broman wrote: >> >> Hi, >> >> Company plug-ins may have restrictive license as the purpose is to >> >> only use them internally no public usage "secret" code for >> >> proprietary protocols under patents or IPL. Do we really want to >> >> forbid that? In that case why should companies provide code to >> >> Wireshark rather than just fork and build internally. >> > >> > I understand the argument and why that is a point of contention, >> but >> > that does not change the terms of the GPL which must be abided >> by even >> > if this commit was never merged in the first place. >> > >> > I don't think it is a question of whether we want to forbid it, >> it is >> > whether we can allow it. I believe the answer to that is a clear >> no if >> > we want to respect the terms of the GPLv2 (and I'm fine with >> that). I >> > am not a license lawyer so this is just my understanding of the >> > legalities involved. >> > >> ...nor any other kind of lawyer. :-) >> >> > There are many reasons why companies may choose to contribute or >> not. >> > Other companies may choose not to contribute to projects not >> using the >> > GPL. And individual developers may or may not want to >> contribute. Etc. >> > We can also debate that but it might veer off-topic. >> > >> >> Best regards >> > >> >> A ders >> >> >> >> Den mån 4 dec. 2023 15:22João Valverde <j...@v6e.pt> skrev: >> >> >> >> >> >> >> >> On 04/12/23 13:42, Anders Broman wrote: >> >> > Hi, >> >> > Maybe you are missing the point that someone may wish to >> develop >> >> an in >> >> > house plug-in not meant for distribution which in my >> >> understanding is >> >> > permissible under GPL. >> >> >> >> My understanding is that this is permitted under the GPL if >> using a >> >> GPL-compatible license for your software. It's the main >> difference >> >> between the GPL and so-called "permissive" licenses. >> >> >> >> > >> >> > As I understand it that is no longer possible? To me >> that's an >> >> > unnecessary restriction which we do not need to put on >> our users >> >> and I >> >> > see no point/gain in doing so. >> >> >> >> If you don't want to use the GPL you can choose a >> GPL-compatible >> >> license >> >> (BSD for example, there are many) and register your plugin with >> >> WS_PLUGIN_IS_GPLv2_COMPATIBLE. The SPDX ID is optional but >> helpful. >> >> >> >> You may also use GPLv2 and just not distribute your binary >> (in the >> >> case >> >> of businesses and corporations outside of the collective >> entity that >> >> legally comprises it). >> >> >> >> So it's not really restricting your freedom to use >> Wireshark, it's >> >> just >> >> respecting the terms of the GPL under which developers >> contribute >> >> to the >> >> project. >> >> >> >> This is my understanding of the terms under which I choose to >> >> contribute >> >> to Wireshark. If anyone has a better understanding or >> reason why >> >> this >> >> interpretation of the GPL, that matches the FSF FAQ, is wrong, >> >> please do >> >> share. I'm very open to a good-faith discussion. >> >> >> >> >> >> > Best regards >> >> > Anders >> >> > >> >> > Den mån 4 dec. 2023 14:05João Valverde <j...@v6e.pt> skrev: >> >> > >> >> > Confused was not an offense, "GPL license" is >> patently not the >> >> > same as >> >> > "GPL-compatible license" so it is a legitimate reason >> to be >> >> confused. >> >> > Please avoid unnecessary and unfair characterizations >> of my >> >> words. >> >> > >> >> > And I will not revert it on that basis. I will revert >> it if my >> >> > understanding of the our license requirements is wrong or >> >> flawed. >> >> > It is >> >> > not OK for you to exempt some use-case from the license >> >> terms under >> >> > which every developer contributes to this project. >> >> > >> >> > Gerald can revert it if he wishes and I will respect >> it. As >> >> > project lead >> >> > he can make that call. >> >> > >> >> > On 04/12/23 12:35, Roland Knall wrote: >> >> > > I do not think there is a need for calling someone >> confused. >> >> > > >> >> > > The whole discussion is not in any way useful for >> our users. >> >> > There is >> >> > > the explicit corporate usecase, where in-house >> versions do >> >> exist >> >> > with >> >> > > their own protocols and plugins. Often times those >> >> versions do not >> >> > > even deal with licenses for those modifications at >> all, and >> >> > going from >> >> > > the point that they change the CMakeListsCustom.txt >> >> files, one >> >> > could >> >> > > argue, that this is not a source code modification >> in the >> >> sense >> >> > meant >> >> > > by the gpl license. >> >> > > >> >> > > Joao, I agree with having a clear path for license >> >> application, >> >> > and I >> >> > > also agree that we should be prudent on what parts >> a user >> >> can >> >> > use and >> >> > > which he can't. I would even be ok if we have a >> warning >> >> in the >> >> > > build-process, explicitly stating that the code being >> >> linked is not >> >> > > fully compliant and therefore not allowed to be >> >> distributed. But I >> >> > > strongly disagree cutting off the leg we are >> standing on >> >> just on >> >> > pure >> >> > > principle. The corporate users are a HUGE part of our >> >> userbase. >> >> > And if >> >> > > we go down this route, we need to have a proper >> discussion >> >> about >> >> > this. >> >> > > Just adding license enforcement without having the >> >> discussion is >> >> > NOT >> >> > > the way to move forward here. >> >> > > >> >> > > Please add another patch, which keeps the ABI >> versioning in >> >> > (which I >> >> > > really appreciate and think is a good thing to do), but >> >> reverts the >> >> > > enforcement of the licenses. Then we can start to >> properly >> >> > discuss how >> >> > > to move forward with this topic. It will - most >> likely - >> >> require a >> >> > > vote by the technical steering comittee. >> >> > > >> >> > > kind regards >> >> > > Roland >> >> > > >> >> > > Am Mo., 4. Dez. 2023 um 13:23 Uhr schrieb João Valverde >> >> <j...@v6e.pt>: >> >> > > >> >> > > >> >> > > >> >> > > On 04/12/23 12:19, João Valverde wrote: >> >> > > > >> >> > > > >> >> > > > On 04/12/23 12:12, Bálint Réczey wrote: >> >> > > >> João Valverde <j...@v6e.pt> ezt írta (időpont: >> 2023. >> >> dec. 4., H, >> >> > > 12:59): >> >> > > >>> >> >> > > >>> >> >> > > >>> On 03/12/23 23:25, João Valverde wrote: >> >> > > >>>> Hi, >> >> > > >>>> >> >> > > >>>> There are some changes in progress to the >> plugin >> >> > registration >> >> > > API that >> >> > > >>>> break compatibility and require manual >> intervention >> >> > from plugin >> >> > > >>>> authors maintaining plugins out-of-tree. These >> >> changes >> >> > are rather >> >> > > >>>> minor and concern only plugin >> registration, not >> >> other APIs >> >> > > accessible >> >> > > >>>> to plugins. >> >> > > >>>> >> >> > > >>>> See MR 13524: >> >> > > >>>> >> >> > https://gitlab.com/wireshark/wireshark/-/merge_requests/13524 >> >> > > >>>> >> >> > > >>>> Changes required are rewriting the >> registration >> >> code (very >> >> > > easy to do >> >> > > >>>> [1]) and declare (using a C enum) that the >> >> plugin is >> >> > released >> >> > > either >> >> > > >>>> under GPLv2 or later, or a GPLv2 compatible >> >> license. The >> >> > > other changes >> >> > > >>>> to the ABI version number are >> >> > > >>> The choice of the word "released" here was >> >> unfortunate, >> >> > > because it may >> >> > > >>> imply distribution. Please consider "licensed" >> >> instead. >> >> > > >>> >> >> > > >>> The license declaration field just affirms what >> >> was already >> >> > > implicit: >> >> > > >>> Wireshark plugins must use licensing terms >> >> compatible >> >> > with the GPL >> >> > > >>> version 2, so there is no policy change there. >> >> > > >> GPL allows linking and using GPL-licensed >> software >> >> with >> >> > > >> non-GPL-licensed software locally. This is an >> >> important >> >> > use case of >> >> > > >> many Wireshark users who do not wish releasing >> >> their plugins >> >> > > and your >> >> > > >> change broke that. Please revert it. >> >> > > >> >> >> > > > >> >> > > > >> >> https://www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL >> >> > > >> >> > > Also it does not require a GPL license, it >> requires a >> >> > GPL-compatible >> >> > > license, so you may just be confused. >> >> > > >> >> > > > >> >> > > >>>> currently not relevant to plugin authors >> (no policy >> >> > change is >> >> > > >>>> implied), it just uses less boilerplate with >> >> macros. >> >> > > >>>> >> >> > > >>>> This should improve the plug-in experience >> for both >> >> > > developers and >> >> > > >>>> users and may improve compatibility in the >> future. >> >> > > >> >> >> > > >>>> Comments welcome. >> >> > > >>>> >> >> > > >>>> Regards, >> >> > > >>>> >> >> > > >>>> João >> >> > > >>>> >> >> > > >>>> >> >> > > >> >> > >> >> >> >> [1]https://gitlab.com/wireshark/wireshark/-/commit/90b16b40921b737aadf9186685d866fd80e37ee6#4a1fe9011e8240918e5fc6230c0bcd2e4d3b9c34 >> >> > > >> >> > > >>>> >> >> > > >>>> >> >> > > >>>> >> >> > > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > > >> >> > > >>>> >> >> > > >>>> >> >> > > >>>> Sent via: Wireshark-dev mailing list >> >> > > <wireshark-dev@wireshark.org> >> >> > > >>>> Archives: >> >> https://www.wireshark.org/lists/wireshark-dev >> >> > > >>>> Unsubscribe: >> >> > > https://www.wireshark.org/mailman/options/wireshark-dev >> >> > > >>>> >> >> > >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> > > >>> >> >> > > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > > >> >> > > >>> >> >> > > >>> Sent via: Wireshark-dev mailing list >> >> > > <wireshark-dev@wireshark.org> >> >> > > >>> Archives: >> >> https://www.wireshark.org/lists/wireshark-dev >> >> > > >>> Unsubscribe: >> >> > > https://www.wireshark.org/mailman/options/wireshark-dev >> >> > > >>> >> >> > >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> > > >> >> >> > > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > > >> >> > > >> >> >> > > >> Sent via: Wireshark-dev mailing list >> >> > > <wireshark-dev@wireshark.org> >> >> > > >> Archives: >> >> https://www.wireshark.org/lists/wireshark-dev >> >> > > >> Unsubscribe: >> >> > > https://www.wireshark.org/mailman/options/wireshark-dev >> >> > > >> >> >> > >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> > > > >> >> > > > >> >> > > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > > >> >> > > > >> >> > > > Sent via: Wireshark-dev mailing list >> >> > > <wireshark-dev@wireshark.org> >> >> > > > Archives: >> >> https://www.wireshark.org/lists/wireshark-dev >> >> > > > Unsubscribe: >> >> > https://www.wireshark.org/mailman/options/wireshark-dev >> >> > > > >> >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> > > >> >> > > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > > Sent via: Wireshark-dev mailing list >> >> > <wireshark-dev@wireshark.org> >> >> > > Archives: >> https://www.wireshark.org/lists/wireshark-dev >> >> > > Unsubscribe: >> >> > https://www.wireshark.org/mailman/options/wireshark-dev >> >> > > >> >> > > >> >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> > > >> >> > > >> >> > > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > > Sent via: Wireshark-dev mailing list >> >> > <wireshark-dev@wireshark.org> >> >> > > Archives: https://www.wireshark.org/lists/wireshark-dev >> >> > > Unsubscribe: >> >> https://www.wireshark.org/mailman/options/wireshark-dev >> >> > > >> >> > >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > Sent via: Wireshark-dev mailing list >> >> <wireshark-dev@wireshark.org> >> >> > Archives: https://www.wireshark.org/lists/wireshark-dev >> >> > Unsubscribe: >> >> https://www.wireshark.org/mailman/options/wireshark-dev >> >> > >> >> > >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> > >> >> > >> >> > >> >> >> >> ___________________________________________________________________________ >> >> > Sent via: Wireshark-dev mailing list >> >> <wireshark-dev@wireshark.org> >> >> > Archives: https://www.wireshark.org/lists/wireshark-dev >> >> > Unsubscribe: >> >> https://www.wireshark.org/mailman/options/wireshark-dev >> >> > >> >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> >> >> >> >> ___________________________________________________________________________ >> >> Sent via: Wireshark-dev mailing list >> >> <wireshark-dev@wireshark.org> >> >> Archives: https://www.wireshark.org/lists/wireshark-dev >> >> Unsubscribe: >> https://www.wireshark.org/mailman/options/wireshark-dev >> >> >> >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> >> >> >> >> >> >> ___________________________________________________________________________ >> >> >> >> >> Sent via: Wireshark-dev mailing list >> <wireshark-dev@wireshark.org> >> >> Archives: https://www.wireshark.org/lists/wireshark-dev >> >> Unsubscribe: >> https://www.wireshark.org/mailman/options/wireshark-dev >> >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> > >> >> >> ___________________________________________________________________________ >> Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> >> Archives: https://www.wireshark.org/lists/wireshark-dev >> Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev >> >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe >> >> >> ___________________________________________________________________________ >> Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> >> Archives: https://www.wireshark.org/lists/wireshark-dev >> Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev >> mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe > > ___________________________________________________________________________ > Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> > Archives: https://www.wireshark.org/lists/wireshark-dev > Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev > mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe ___________________________________________________________________________ Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> Archives: https://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe