top | item 24827042

Dr.Mario 64's gzip implementation is taken almost verbatim from gzip source code

71 points| blacktulip | 5 years ago |twitter.com | reply

61 comments

order
[+] jbarberu|5 years ago|reply
If you check the file in GZip from 1999 (1.2.4a) it is not licensed with GPL:

   inflate.c -- Not copyrighted 1992 by Mark Adler
   version c10p1, 10 January 1993

   You can do whatever you like with this source file, though I would
   prefer that if you modify it and redistribute it that you include
   comments to that effect with your name and the date.  Thank you.
   [The history has been moved to the file ChangeLog.]
EDIT: Changed formatting
[+] monocasa|5 years ago|reply
Does that file contain GPLed changes from the gzip project? I know linux's copy is effectively GPL2 because of that. Wouldn't be surprised if gzip's is the same.

It's sort of how bringing BSD code into a GPL project is a bit of a one way street.

[+] FartyMcFarter|5 years ago|reply
The zlib license [1] is very permissive, so I'm not sure there's any real issue here.

[1] https://en.wikipedia.org/wiki/Zlib_License

[+] clankyclanker|5 years ago|reply
Wrong software: the tweeter claims it’s copied from the GPLed Gzip, not zlib. Probably GPLv2, given the release timeline.

Man, if copyright wasn’t 85 years long, Nintendo might already be off the hook.

[+] saagarjha|5 years ago|reply
I'm unsure why the tweet author thinks this would be a GPL violation?
[+] russdill|5 years ago|reply
zlib and gzip are two different source packages with very different licensing.
[+] bonyt|5 years ago|reply
Isn't this post talking about gzip, not zlib?
[+] AdmiralAsshat|5 years ago|reply
An interesting historical curiosity, but I doubt anything actionable would come of it.

Also, damn, Nintendo was still releasing N64 games in 2001? The release date would've been mere months before the Gamecube launch and Luigi's Mansion.

[+] meddlepal|5 years ago|reply
Conker's Bad Fur Day came out in 2001. There were a few last minute games.
[+] kevinmchugh|5 years ago|reply
A contemporaneous review said it was budget-priced ($30 usd)
[+] Ashanmaril|5 years ago|reply
It was within the final 10 games released for the N64
[+] gowld|5 years ago|reply
Why are uninvestigated Twitter allegations still being reposted to HN and upvoted, causing distraction and confusion?
[+] klyrs|5 years ago|reply
I think such cases are interesting.

One result is that the allegation got investigated here: HN isn't just regurgitating the news, its readers are making news. Sometimes, misinformation is the result of an honest confusion. Better to discuss it out in the open, than cover it up.

The other result is that it's a teaching moment for people who have incomplete understanding of related licensing issues.

[+] chrismeller|5 years ago|reply
As someone who has written userland implementations of several crypto algorithms in the past (parts of PKCS5: PBKDF2 and PBES2), I’m positive you could say this about my code as well.

If you were both following the same spec, they should be very similar. Intentionally renaming things would just make it more confusing for the next guy and more difficult for anyone to validate your code.

EDIT: and of course that’s not to say they didn’t “steal” it, just saying that similarity in this kind of code is to be highly expected.

[+] hinkley|5 years ago|reply
My first assignment as a developer was porting some common formats to Java, mostly PNG and MD5 (weird combo I know, but there were reasons).

I spent a week banging my head against the FFI for Java to get MD5 C code wrapped, and then in a fit of pique tried to do an all-Java implementation.

Since Java is a C-family language, transcribing the code from the specification was a cakewalk, and I had something working within a day.

Because of the PNG work (and a fascination with compression) I've also spent some time in the zlib code, and the zlib code is... unusual. Among other things, it has longjmp support built in so you can do cooperative multitasking in single-threaded systems. That and some aggressive work to assert that there is sufficient free memory to run zlib properly, makes the code a bit more novel. I don't think you or I would write the code that way, so it's implausible that someone would accidentally replicate the code, in this scenario or any other.

[+] Jaruzel|5 years ago|reply
Does that include creating comments in the code that are the same too? :)
[+] relativitypro|5 years ago|reply
Screenshot displayed seems generic coding style.
[+] edu|5 years ago|reply
The style might be generic, but the comments are exactly the same too. For me this creates a reasonable suspicion.
[+] dharmab|5 years ago|reply
Variable names and code comments are character-for-character identical. Highly unlikely for two programmers in different industries in different countries who speak different languages.