News for hackers. Stuff that matters.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by eurasiantiger on Monday October 11, 2021 @07:55AM (#28827320)
Why is bundling a (L)GPL .dll considered a violation?
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by grahamlee on Monday October 11, 2021 @07:57AM (#28827339)
Because you have to make the source code available to people who receive your distribution of the library.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by veeti on Monday October 11, 2021 @08:40AM (#28827663)
Did you ask?
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by teddyh on Monday October 11, 2021 @09:02AM (#28827840)
You shouldn’t have to ask. The GPL requires that the distributor either sends the source code alongside the binaries, or that the distributor sends along an explicit written offer to send the source code. If you, as a recipient of binaries, did not get such an offer, and no source code was sent along the binaries either, the GPL was violated. There is no recovery from this, even if the distributor sends the source code on request.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by kgwxd on Monday October 11, 2021 @10:53AM (#28828975)
Can you point to where in the GPL it says that it must be explicitly offered? I don't remember ever reading anything that gave me that impression, or anyone even informally mentioning that was the case.

I ask because I'd be in violation. I've attached the GPL to a bunch of dinky little projects I haven't bother hosting a public repository for because I don't think anyone else in the 'verse really cares. In most cases I know I'm the only user, but there are a few that some other people have at least downloaded (probably bots or mistakes, but downloaded nonetheless).

Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by teddyh on Monday October 11, 2021 @11:21AM (#28829349)
You’re not in violation. If people download the binaries, and you offer the source code at the same download site, and they choose not to download the source code, that’s on them; you are off the hook.

I also did not mention (because it was not relevant to the parties being discussed) one other option: If you received the binaries from someone else, with a written offer for source code, and you are distributing the binaries non-commercially, you can simply forward a copy of the written offer of source code you received.

The section of the GPL 2 you want is section 3, and in GPL 3 it’s section 6.

Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by Liquid_Fire on Monday October 11, 2021 @11:25AM (#28829400)
This is covered in section 6 of the GPL(v3). See the text here: https://www.gnu.org/licenses/gpl-3.0.en.html

Note that there are some changes here compared to v2 of the GPL.

IANAL but my understanding/interpretation (simplified) is you have to either:

6a) Ship the binaries in a physical product with a copy of the source code accompanying

6b) Ship the binaries in a physical product along with an offer to provide the source code on request

6c) "occasionally and noncommercially" ship the binaries (not necessarily in a physical product) along with an offer to provide the source code on request

6d) Make the binaries available from somewhere (e.g. a website) which also offers the source code (e.g. GitHub would count)

6e) Ship the binaries via a P2P mechanism if you include a link to where you host the source code

Again, IANAL but if you hosted a GPLv3 binary somewhere without source code, it would technically be a violation of the GPL.

However, since you are the copyright holder in this case, you can ship it however you want - it would just prevent anyone else from then distributing it under the GPL since they wouldn't be able to comply with section 6, since they don't have the source code.

Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by eurasiantiger on Monday October 11, 2021 @02:20PM (#28831232)
But this is not about distributing GPL code in a custom binary. Rather, a GPL binary library was linked against by a custom binary, and that GPL binary was distributed alongside the ”custom” binary. Do those license terms apply here?
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by heavyset_go on Monday October 11, 2021 @03:16PM (#28831894)
Yes, linking to a GPL library means you need to follow the terms of the GPL.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by eurasiantiger on Monday October 11, 2021 @03:59PM (#28832356)
Pardon the confusion, this was about LGPL, not GPL—and the former does allow linking.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by heavyset_go on Monday October 11, 2021 @06:06PM (#28833643)
There are terms you need to follow when you link to LGPL libraries, as well. You need to provide your compiled program in an object format such that users can link it against their own versions of the LGPL library you originally linked it against. The LGPLv3 also adds some anti-Tivoization clauses, too, that make those rights explicit.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by scbrg on Monday October 11, 2021 @11:11AM (#28829231)
Section 6 pretty much lets you choose between:

- Bundling the source with the program (a)

- Letting people download the source from the same place as they can download the program (d)

- A written offer to hand over the source on request (b, c, e)

https://www.gnu.org/licenses/gpl-3.0.en.html

Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by rndgermandude on Monday October 11, 2021 @07:58AM (#28827347)
So? Maybe malwarebytes are doing that?
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by deelowe on Monday October 11, 2021 @09:37AM (#28828152)
Are they? I got the sense that this is the issue.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by jcun4128 on Monday October 11, 2021 @08:03AM (#28827379)
I'll have to brush up on this, GPL that's not seen by people say it does something in messaging or part of DNS or something, it would still have to be public? Use case is part of some web-app that isn't installed.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by singlow on Monday October 11, 2021 @10:10AM (#28828478)
If its running on your server, then you aren't distributing it. There are licenses like AGPL that do try to limit that usage but GPL does not. Now if it is a web app that has client code that gets executed in the browser, that is distributed to the end user and GPL would apply, so you would need to include license notifications for that within your app or as part of the source code distributed. In that case you are already distributing source but you may need to make an unobfuscated source available if your distribution is minified/uglified.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by jcun4128 on Monday October 11, 2021 @10:55AM (#28829002)
YANAL ha, but I was curious even if we did have to disclose the specific GPL piece of software, do we only have to release that part? Not the entire app.

> web app that has client code that gets executed in the browser,

That's the technicality stuff, the client triggers an event, that then uses this GPL piece of code that is on the server. I went through our stuff (mostly NPM) and they all are either Apache/MIT but there was one piece like ahh... Anyway not making money yet but will bring this up for review with legal.

Thanks

Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by CGamesPlay on Monday October 11, 2021 @09:50AM (#28828285)
If my dubious understanding of the GPL is correct, you can link to an LGPL DLL without assuming the LGPL. Distributing that DLL modified/unmodified would require also distributing the corresponding modified/unmodified source code. I don't think that in this case we have a violation (for the LGPL code) since it's unlikely that they modified the source code for the named libraries (and would provide links to the unmodified source code after application of legal pressure). I also would assume that the copyright notices required to be displayed are all listed somewhere buried in the about dialog of the running software.

[append]

> wintun.dll, from the Wintun project, without mentioning it, thus violating its license.

Also, after reading the license, I don't see this particular clause at all.

Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by contravariant on Monday October 11, 2021 @10:03AM (#28828403)
From what I remember someone should basically be free to modify the DLL distributed under the LGPL license, so they need to be able to access the corresponding source-code and whatever logic is necessary to link a new DLL to the application (if required).
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by stonemetal12 on Monday October 11, 2021 @10:12AM (#28828504)
According to clause 4, you either provide enough source to compile and load a modified lib, or you use a dynamically linked lib. If you go the dynamic linking route no source distribution is required. I guess they figure the end user can get source from the library project themselves.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by wizzwizz4 on Monday October 11, 2021 @10:15AM (#28828546)
> If you go the dynamic linking route no source distribution is required.

For your code. The LGPL code still requires source distribution. (Plus, the BSD clause requires attribution.)

Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by eurasiantiger on Monday October 11, 2021 @02:22PM (#28831263)
Certainly the authors of said LGPL code are distributing that source. Would it make sense to distribute the source of every .dll included in a project?
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by wizzwizz4 on Monday October 11, 2021 @04:25PM (#28832642)
… Yes. That's your obligation under the LGPL. Pretty much your only obligation, actually – other than including the “this is this, by these people, licensed this way” boilerplate text.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by manquer on Monday October 11, 2021 @08:39PM (#28834678)
Alternatively you could include the offer to distribute
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by wizzwizz4 on Thursday October 14, 2021 @09:40AM (#28864067)
Only with (L)GPLv2, I believe.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by smitop on Monday October 11, 2021 @07:57AM (#28827338)
They have to provide the source code for those DLLs, which they aren't doing.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by suvo on Monday October 11, 2021 @08:23AM (#28827521)
Actually I wanted to know, which clause says that. Is it Section 4d0?
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by dubcanada on Monday October 11, 2021 @08:25AM (#28827547)
No they don't, if I am correct all they need to do is allow you to swap out the dll for your own and put a license.txt or what not with the license. As long as the DLL is setup as a shared library (which it is) it is fine.
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by FeepingCreature on Monday October 11, 2021 @08:28AM (#28827566)
The source code is necessary to create "your own".
Re:Malwarebytes' privacy VPN is Mullvad in a shady trenchcoat by atatatat on Monday October 11, 2021 @08:33AM (#28827604)
Not always, but, practically.