[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