20 votes

Understanding Red Hat's restrictions to CentOS source redistribution

6 comments

  1. [6]
    szczys
    Link
    This article does a great job of explaining Red Hat's recent restrictions to how CentOS source code can be redistributed, and how the GPL 2 may or may not apply.

    This article does a great job of explaining Red Hat's recent restrictions to how CentOS source code can be redistributed, and how the GPL 2 may or may not apply.

    1 vote
    1. [5]
      autumnlicious
      Link Parent
      I disagree. The article spends more time with irrelevant asides on how it seems like a GPL violation when it is not. I am not a lawyer, just a software engineer, so my opinion will be biased. I...

      I disagree. The article spends more time with irrelevant asides on how it seems like a GPL violation when it is not. I am not a lawyer, just a software engineer, so my opinion will be biased.

      I invite lawyers and others to fact check my opinion.

      Red Hat, through distribution of binary GPL’ed artifacts to customers (the new normal), must still under the terms of the GPL provide sources to said customers.

      Now, if Red Hat chooses not to renew a contract to a customer, like say because of suspected redistribution of the code they’re entitled to use, it is not a GPL violation as the redistribution in question has not lost their rights to the code they already have access to. Red Hat would still obliged to provide the sources for what’s been handed over. Period.

      Nothing more, nothing less. In this case, a heuristic of “Distribute binaries to an entity, provide the source for said entity” applies.

      It doesn’t mean to all entities. Only the ones who have received said artifacts. For example I’ll use the well known case of TiVo. TiVo released a device (named TiVo) that has compiled GPL binaries within it. This means that every TiVo customer, by directly receiving a device with GPL’ed binaries on it, shall be able to, under the GPL, receive sources pertaining to said GPL artifacts, modifications, etc within said device. However a neighbor who does not have a TiVo has no standing under the GPL for that case, even if they’re peering in through the window at the TV/TiVo.

      Technically, a person or company could release the Red Hat sources as a paying customer. After all, it is against the GPL to deny right of access to already distributed code. So therefore anyone with an existing contract with Red Hat can release their copy of GPL’ed Red Hat source code.

      If they choose to terminate or not renew the contract for a given entity, that entity can still demand (has rights to) the GPLed source code of the distributed artifacts to them. But only those artifacts that they had access to.

      If I operate “Autumn’s GPL Binary And Source Repo” with access only by paying clients, I am not in violation of the GPL as long as my paying clients receive the source code to said artifacts they’ve downloaded from me. J Random Nobody isn’t entitled to the sources unless they receive from me said artifacts (ie a distribution).

      If I give it away for free, I can as long as I yield that source for anyone who pulls from me. If I take it private (but still provide sources to the binaries I distribute for those I distribute it to as per the GPL), that is more akin to a non renewal of a contract than anything else. Prior released code and binary artifacts are not affected and are still compliant.

      The GPL is exceedingly narrow in many aspects.

      And that’s fine.

      11 votes
      1. [3]
        igemnace
        Link Parent
        I agree with everything you said about GPL only requiring distributing the source code to the same people you distribute the binaries too, such as only the paying clients (this is how the FSF...

        I agree with everything you said about GPL only requiring distributing the source code to the same people you distribute the binaries too, such as only the paying clients (this is how the FSF normally espouses profitable free software).

        Just want to point out that I believe the article's main point is:

        What exactly is in that subscription agreement? Well according to Alma Linux, “the way we understand it today, Red Hat’s user interface agreements indicate that re-publishing sources acquired through the customer portal would be a violation of those agreements.”

        Which does sound to me like a GPL violation: you can't restrict downstream freedoms; paying customers have the freedom to distribute. Which you also state in your post as one of the freedoms the paying customers should have! I'm simply pointing out that this is the dissonance the article is putting forth, I believe.

        Though, it doesn't help that the article surrounds that single sentence with so much fluff that could potentially drown out the point. It also certainly doesn't help that the whole thing is a tertiary source ("We heard that Alma Linux heard that...").

        5 votes
        1. [2]
          autumnlicious
          Link Parent
          It is not — their subscription agreement says the contract will be terminated if you share it. It doesn’t mean you lose the access to the source code you’ve already shared. In a proprietary...

          Which does sound to me like a GPL violation: you can't restrict downstream freedoms; paying customers have the freedom to distribute.

          It is not — their subscription agreement says the contract will be terminated if you share it. It doesn’t mean you lose the access to the source code you’ve already shared.

          In a proprietary licensing setup, usually breaking the contract will mean you have to return the encumbered source code and never touch it again.

          In this case, you are free to share the code from the contract but then Red Hat is free to no longer do business with you.

          What Red Hat cannot do is demand you destroy your copies, give back your source code, and pay damages strictly limited to the act of spreading the sources.

          The subscription agreement is “I’ll do business with you” on top of the GPL. Revoking it is “I’ll no longer do business with you going forwards”.

          What it doesn’t do is assert you can’t legally share. You can still legally share. You just won’t get future business from Red Hat.

          However you are still entitled to the exact source code for the binaries you have obtained prior to the contract being terminated.

          6 votes
          1. igemnace
            Link Parent
            Okay, gotcha. This is the premise that I missed. I agree that everything you said afterwards logically follows.

            their subscription agreement says the contract will be terminated if you share it.

            Okay, gotcha. This is the premise that I missed. I agree that everything you said afterwards logically follows.

            1 vote
      2. szczys
        Link Parent
        Nice job of illustrating the subtleties on this one. These issues may seen obvious to you, but you obviously have a very intimate knowledge of the license that not everyone has at front of mind. I...

        Nice job of illustrating the subtleties on this one. These issues may seen obvious to you, but you obviously have a very intimate knowledge of the license that not everyone has at front of mind.

        I agree with you. Though I still appreciated reading the asides from the article. It's nice to consider more than one take. There are grey areas in how these licenses can be applied, and we won't know when we're in that zone without questioning from all angles.

        4 votes