4 ms·
I don't think this is actually as big a loophole as he makes it out to be. The AGPL does not require the person who modifies the software to offer source code,
by Denvercoder9 5y ago
I don't think this is actually as big a loophole as he makes it out to be. The AGPL does not require the person who modifies the software to offer source code, but it requires the software itself to do so.
Say Alice modified some AGPL software, and gives it to Bob, who then hosts his blog with it. It's true that the AGPL doesn't directly impose anything on Bob. However, as Alice modified the software, she must make her modified software offer source code. As Bob is using that software, his blog also offers the source code. He cannot remove that offer, because then he has modified the software and he is required to add the offer.
Yes, this could be problematic if Alice violates the license and doesn't make it offer source code, but every license fails when it's violated.
- gpm 5y agoIf this is a valid argument, then I believe it's the case that practically every github pull request on AGPL software that that isn't a quine and is capable of remote interaction with users via computer networks would involve violating the license... I'm willing to bet there are a lot of those. You modified the software to make a pull request, you even distributed it to github. You need a valid license to do this. You didn't update the software to point at your github repository, after all if you did that your pull request would be rejected. So the software is presumably not serving users an offer to download the source code (with the exception of quines) since it's now pointing at the wrong repository. So congrats, you didn't have a valid license and are committing copyright infringement. --- I'm not sure it's valid, it's not clear to me that the source code of a program is a "version [that] supports such [remote] interaction [with users via computer networks". It strikes me as the case that only copies of programs running on physical hardware serving requests, or capable of being moved (not copied) to such hardware, are capable of such remote interaction. The end user meanwhile takes your version not capable of supporting such an interaction, and compiles/interprets into a version that is capable of supporting such an interaction. But remember that the licenses defines "To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission". Compiling/interpreting/running the program does not require copyright permission [1]. [1] See (a), 1 https://www.law.cornell.edu/uscode/text/17/117 https://www.law.cornell.edu/uscode/text/17/117 PS. Note I am not a lawyer and this is not legal advice.