|
Is Sony in violation of the LGPL? - Part II
Hey, Im sure youve been waiting for updates that prove what were talking about. Here it comes. I want to talk about the file ECDPlayerControl.ocx which the fanstastic muzzy found yesterday while I had nothing better to do than to listen to my pillow. It uses LAME code (and code from at least one other LGPL library). At virtual offset 0x100607D0 you can find a function thats called GetVbrTag in the LAME source code (it can be found in the file VbrTag.c). Heres some code straight from the LAME source code (its only the first part of the function, I dont want this post to get too long): int GetVbrTag(VBRTAGDATA *pTagData, unsigned char buf) Now compare this to the disassembly. You can easily spot "pTagData->flags = 0", the three shifts, the array access and the if-comparison (although the code was a bit optimized by the compiler). To make it easier, heres the flow-chart diagram of the function too. .text:100607D0 GetVbrTag proc near ; CODE XREF: sub_10059240+77p I think you agree with me that this is a clear case. I also want to mention that the entire id3lib library (also LGPL software) is in the file too. Thankfully id3lib is written in C++ and not in C and therefore finding matches is significantly faster as the original function names are part of the binary files (thanks for the debug build too). Just click this link to see some of the id3lib functions in the file. I want to summarize what we have and raise a few questions at this point: - The LGPL is not mentioned on the CD. - That means no copyright notice as the LGPL demands either. - Does an OCX qualify as a linked library? Probably. But I am not able to re-create the OCX file because it contains at least two LGPL libraries and additional (probably proprietary) code. Is this necessary to be LGPL-compliant? (see the end of the article). - Are the files part of this LGPL-licensed software by Sony? Does that have any effect on the legality of the OCX? The first two points would still stand. All this legalese is killing me, I can only report on the code. I think weve reached a certain point where its time to take a break. Weve definitely found LGPL code in the software. Now its time for the license gurus to find out if that constitutes a license violation. Until this is cleared up I think Im going to do something else. Edit: There are differences in opinion about what constitutes a LGPL infringement. Wikipedia says "Essentially, it must be possible for the software to be linked with a newer version of the LGPL-covered program. The most commonly used method for doing so is to use "a suitable shared library mechanism for linking". Alternatively, static linking is allowed if either source code or linkable object files are provided." Does that mean everybody must be able to recreate the OCX file? Or what does that mean? Comments
| ||||||