[Wine] Legal Issues
James Mckenzie
jjmckenzie51 at earthlink.net
Sun Dec 27 20:20:24 CST 2009
army_ant7 wrote:
>
>
>@James Mckenzie: You said though,
>> Black boxed code is allowed if you can prove that the results are what are obtained by running test scenarios through a 'black
>> box' or some Windows code.
> and
>> Wine does not and cannot contain code that is in Windows.
>>
> I found the last part, "...or some Windows code." of the former, and the latter to be contradictory. I may have just understood it
> wrong though. Please clarify though if you may. :-) Your grammar was great! I clearly understood you. I have same compliments for
> you like those I gave oiaohm. I'd appreciate it too if you try answering the questions I asked him. I values both of your opinions.
>
Here is the clarification: You can run a test against a Windows Dynamically Linked Library, say riched20.dll looking for the results for a specific test. In my case, this is EM_FORMATRANGE and the dll comes from WindowsXP. I get back values for specific input values. Since I know only what is MSDN, I input a window handle, the call name, TRUE or FALSE, an invalid input value of zero and a FORMATRANGE structure location, I then look at what is returned for each. Then I post the results and build code to replicate what is returned from the call into Wine code. I did not do the original code but I have refined it and am now looking at one final fix so that the code will return the values returned by the call in Windows. That is what black-boxing is about. Now, if I did this with reverse engineering or clean room code, I would run the .dll through a code reversal process that would give me an approximation of the original c or C++ code. Now, if the original programmer threw in 'junk code' this would be detected and I could option to remove it. However, the original code base would remain and I would be liable for a copyright violation. Using a black-box approach, even by several programmers, is not a liable incident, unless the laws or judicial rulings change.
The point is that the Wine project contains no line-for-line Windows code. Yes, we replicate the Windows32 API and are working on expanding/improving the code and adding Win16/WindowsOnWindows64 code, but this project is far from complete and there are portions of the API that are undocumented as well.
James McKenzie
More information about the wine-users
mailing list