Friday, 15 September 2006

Jin chess client

I have just learned of a article about the alleged GPL violation by IChessU using the Jin chess client with their proprietary video chat extension. I was somewhat surprised to read that Alexander Rabinovitch was quoting this blog as supporting his position. I cannot imagine what post he is referring to, and noone has contacted me about this. For the record, I do not support his position. From what I understand of the case, Rabinovich initially contacted the author of Jin about licensing his code for a proprietary chess client he was intending to distribute. The Jin author made an offer of licensing the Jin source for a one off fee of US$4000, which would have allowed Rabinovich to distribute unlimited copies without needing to comply fully with the GPL. Rabonivich turned down this offer and decided to try to sneakily get around the GPL, by linking to the Jin code via a socket layer which he wrote [update: it seems he may not have even used sockets in the end, and in fact linked more directly].

It is a common misconception that the GPL only applies to statically linked modules within a program. It is an even more common misconception that the GPL cannot apply if there is a socket link between two modules. This has never been tested in court as far as I am aware, and it all boils down to what constitutes a derived work under copyright law.

My opinion is that if you add a network protocol to a GPL program specifically to get your proprietary module working with it, then you are creating a derived work, and the GPL applies to the work as a whole.

No comments: