[ros-dev] Bye bye

Joseph Galbraith galb at vandyke.com
Thu Jan 19 18:58:24 CET 2006


Steven Edwards wrote:
> Hi Hartmut,
> 
> On 1/19/06, Hartmut Birr <osexpert at googlemail.com> wrote:
>> If it is legal by the ReactOS policy to disassemble every piece of
>> windows code to implement ReactOS, I would like it if ReactOS can put
>> this on the home page as the first topic.
>>
>> This type of reverse-engineering is prohibited by law in many countries.
>> It gives M$ a very easy way to kick the project.
>>
>> I can't believe that the project was started with this justification.
> 
> No this is clearly a violation of the policy
> 
>>From Section C of the ReactOS IP Statement (C. Copyrights of Others)
> 
> ....Any source code produced by direct reverse engineering should be
> treated in exactly the same way as any other non-free source code -
> useful for study and understanding of the system, but not permitted
> for inclusion in ReactOS.
> 
>> My recommendation for ReactOS is:
>>
>> 1) Review the ReactOS project development policy
> 
> I think the policy is clear that this type of dirty-room reverse
> engineering should be used as a last resort only.

Personally, I think that if the project is to survive
(and I suspect it may be too late) the policy should
be:

  If you look at a piece of windows in a disassembler,
  you MUST NOT implement that code for ReactOS.  You
  can write a document describing what is necessary
  and put that document in SVN.  Some other developer(s)
  MUST do the implementation-- furthermore, they MUST
  do the implementation without discussing it with
  you-- they MUST work strictly from the document you wrote.

That may be harsh, and slow down progress, but I suspect
that is the only way ReactOS would survive a legal challenge.

Probably, to be safe, we'd actually need to say:

  If you look at windows in a disassembler, you
  MUST NOT write code for ReactOS.  Sorry, thats
  the way it is.  But wait!  You can still help with
  the project by looking at this list (link to list)
  of things we need to know in order to be compatible
  with windows.  Then, discover this information using
  the disassembler, and write a specification (plain
  English, no code or pseudo-code please) that describes
  what we need to know and submit it to the project
  for inclusion in our repository.  One of our developers
  will then (eventually) get around to using your
  specification to correct our implementation to be
  compatible.

I'm not sure we'd ever get that through... but that is the
way it should be.

Of course, I'm not a lawyer ... so what do I know.

Thanks,

Joseph


More information about the Ros-dev mailing list