I’ve been trying to figure out whether RedHat’s restrictions of redistribution of their binary has legal basis (I’m pretty sure it does, it’s an elephant in the proverbial room), but I wanted to be sure, know it as fact.
I’ve been poring over the GPLv2 that many have been using, including RedHat, as well as the GPLv3 which is the latest as of the time of writing, trying to figure this one out since nobody seems to have published anything clear on the matter.
RedHat’s EULA (end user license agreement) reads:
WHILE THIS LICENSE AGREEMENT ALLOWS YOU TO COPY, MODIFY AND DISTRIBUTE THE SOFTWARE, IT DOES NOT PERMIT YOU TO DISTRIBUTE THE SOFTWARE UTILIZING RED HAT’S TRADEMARKS
This is a point of contention that has been raised many times – searching “redhat gpl violation” brings up a number of locations in which community members have claimed that RedHat violates GPLv2 by imposing this additional “clever” restriction.
A prominent one is listed here: http://lists.gpl-violations.org/pipermail/legal/2005-March/000046.html
The point in contention is the following:
6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
RedHat’s EULA seems to clearly violate these terms. However, GNU’s own guide regarding the GPLv3 upgrade notes the following:
some licenses had requirements that weren’t really restrictive, because they were so easy to comply with. For example, some licenses say that they don’t give you permission to use certain trademarks. That’s not really an additional restriction: if that clause wasn’t there, you still wouldn’t have permission to use the trademark. We always said those licenses were compatible with GPLv2
My way of understanding this then is that: trademarks do not form part of the software that can be covered by the license, thewhich is specifically about source code copyright, therefore they must be treated with independent consideration. GNU’s statement should help retroactively clear up the confusion. This is backed up in the original essay defining and discussing Free Software itself:
Rules about how to package a modified version are acceptable, if they don’t substantively limit your freedom to release modified versions, or your freedom to make and use modified versions privately. Thus, it is acceptable for the license to require that you change the name of the modified version, remove a logo, or identify your modifications as yours. As long as these requirements are not so burdensome that they effectively hamper you from releasing your changes, they are acceptable; you’re already making other changes to the program, so you won’t have trouble making a few more.
Thankfully, the GPLv3 is upgraded to clearly allow certain additional terms as per section 7. Part e) of that is of interest here:
Notwithstanding any other provision of this License, for material you add to a covered work, you may […] supplement the terms of this License with terms:
[…] e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks;
So GPLv3 brings clarity in-license to the question about whether you can restrict the right to copy under Trademark law: you can indeed.
For GPLv2 however, the basis of resolution is GNU’s own advisories that restrictions under Trademark law do apply, even though from a copyright standpoint the software must be Free. The availability of the code and the freedom to distribute modified copies, as well as the fact that the trademark files have no functional effect on the software, ensure that the software indeed remains GPL compliant.
The lack of explicit provisions in GPLv2 for non-copyright-related restrictions makes it murky, and you need to have done your homework properly to be able to figure that one out.
Hopefully this is of use to someone – but note that I’m a mere blogger. So don’t quote me on it – quote GNU instead