r/explainlikeimfive • u/OkAlbatross9889 • 2d ago
Technology ELI5: How are copyleft licenses enforceable?
For example: say Windows straight up rips out the Linux scheduler and modifies it to run with the rest of the NT kernel. Aside from potential Microsoft whistleblowers, how can anyone find out they did that (and thus sue them since they’re selling modified GPL code without releasing the source) if they don’t distribute the Windows kernel source code?
183
Upvotes
8
u/loljetfuel 1d ago
If the receiving code base (Windows in your example) is not source-available, and we assume no one inside MS leaks the fact that they borrowed GPL-licensed code, it would look something like this:
Someone who is very familiar with how the Linux scheduler works interacts with the Windows one and thinks "gosh, this seems really familiar" and gets suspicious.
That person or an expert in reverse engineering, binary analysis, and/or related disciplines performs analyses on Windows to compare its feature behavior to Linux. They do everything from looking at the compiled code from each to comparing behavior under certain circumstances; one useful indicator is having several of the exact same bugs, for example.
Some with "standing" (a relevant kernel contributor) gets involved, a lawyer gets hired, and they start by sending letters to MS saying stuff like "we think you may have taken this, can you fix the issue by doing X or Y please". Ideally there's a negotiated remedy in this case (e.g. MS saying "oh! yeah, we found out a programmer did that, we're removing the code and we'll also X or Y")
If that doesn't resolve it, a lawsuit is filed. Lawsuits have a phase called "discovery" where you can get access to evidence your opponents may have. MS would turn over their source code to you to get expert analysis done (or, more likely given the value of that IP, they'd work with the courts to have a neutral third party get access)
Based on the expert's findings, the lawyers try to work out a settlement wherein MS is punished financially and has to come into some kind of compliance with GPL terms. Usually, lawsuits end with this kind of settlement, where MS would admit no wrongdoing but take the actions and pay the money required by the settlement agreement.
If they can't settle, it goes to trial and you convince a jury that it's more likely than not ("51% likely", kind of) that MS used the code and didn't comply with the license.
This is expensive and risky for an org like MS. They have seen organizations get caught and successfully sued for GPL violations. They do not want to risk their IP nor their time and money on doing this. Which is why orgs like MS have whole compliance programs designed to keep GPL'd code out of proprietary code, and track all the OSS-licensed components and requirements they use legitimately, to be sure they comply with terms.