On Sat, 2023-01-14 at 21:34 +0100, Arne Schwabe wrote: > Am 14.01.2023 um 20:57 schrieb James Bottomley: > > On Sat, 2023-01-14 at 18:29 +0100, Arne Schwabe wrote: > > > Hey, > > > > > > This is the first round and will be only to the openvpn-devel > > > list. After that I will also write to individuals email addresses > > > but I want to start with sending this to the devel list. > > > > > > We are writing to you since you are or were a contributor in past > > > to OpenVPN and we would like to ask for your permission to amend > > > the license of OpenVPN. > > > > > > OpenVPN 2.x is licensed under the GPL v2. This license has served > > > us well in the past and we are not trying to change that. > > > However, changes in licenses of our dependencies make this change > > > necessary. > > > > > > Both mbed TLS and OpenSSL nowadays use the Apache 2.x license. > > > For the OpenSSL library we have a special exception that allows > > > us linking with it. For newer mbed TLS version, we cannot do this > > > any more. > > > > I think there's been a misunderstanding here: there's no barrier to > > *linking* any GPLv2 licensed program with a system library whatever > > the library licence is. > > mbed TLS is not a system library.
Of course it is; it's designed to be a lightweight substitute for openssl in certain small footprint situations and it's shipped pretty much by every Linux distribution that wants to play in embedded. > Also for platforms like Android, Windows and macOS we are shipping > OpenSSL and mbed TLS ourselves since they are NOT provided by the > system. Would I be correct in assuming that the "we" here isn't the openvpn project and is, in fact, some corporation that wants legal cover for its business model? So I think the actual issue is, to take the Android example, that Android has a native system crypto library (openssl on early android and boringssl on later) but you want to use a different system library that's not part of the standard distribution. If you're using something that is a system library on another distributions and it's only substituting for functionality that would be provided by the native system library, It's obviously a greyer legal area but I'd say you're still covered by the system library exception. > > This dates back to the earliest days of the GNU project when the > > initial design was for all the GNU tools to be built and run on > > proprietary UNIX system regardless of system library licence > > (which was always proprietary), and is specifically what the GPL > > system library exception was designed to cover. > > > > > Compatibility of Apache 2.x and GPL 2.x has to our knowledge > > > never been tested in court and even FSF and ASF disagree about > > > the issue(https://www.apache.org/licenses/GPL-compatibility.html) > > > > That's talking about compatibility when cutting and pasting code or > > including source files from an Apache licensed project into a GPLv2 > > licensed project, it definitely isn't talking about linking them > > together. > > > > If you or anyone else needs an Open Source counsel to give advice > > to the OpenVPN project about these differences and the standard > > practice today, I can arrange for that to happen. OK, so I obviously can't arrange this pro-bono for a for-profit entity, but I can recommend some great open source legal people who may be prepared to consult. > That what you saying it contrary to what I have seen. Can you give a > source that states that combining GPL2 and Apache2 into one binary > and shipping that is legal? What do you mean "a source"? every apache licensed library that's statically linked with a GPLv2 program would be an example of this ... in the early days there was no dynamic linking, so all the early GNU tools were statically linked with wodges of proprietary binary gunk. Even if, for the sake of argument, I assume that what you're doing isn't covered by the system library exception, then what you're proposing doesn't fix your problem. Your problem becomes section 2 of the GPLv2: you must distribute the whole thing under GPLv2. No amount of permissions to link can get you out of this if, as you're assuming, Apache-2 and GPLv2 are incompatible because you're still required to ship an Apache-2 piece (mbedtld) under GPLv2. You would have to frame your additional license permission as an exception to the section 2 requirement to distribute the whole under GPLv2. James _______________________________________________ Openvpn-devel mailing list Openvpn-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openvpn-devel