[ros-kernel] FAQ: Clean Room reverse engineering vs Disassmbly

Casper Hornstrup chorns at users.sourceforge.net
Thu May 27 11:58:49 CEST 2004


 

> -----Original Message-----
> From: ros-kernel-bounces at reactos.com 
> [mailto:ros-kernel-bounces at reactos.com] On Behalf Of Steven Edwards
> Sent: 27. maj 2004 04:48
> To: ros-kernel at reactos.com
> Cc: jasonfilby at reactos.com
> Subject: [ros-kernel] FAQ: Clean Room reverse engineering vs 
> Disassmbly
> 
> But what happens if you step in to ntoskrnl with 
> IDA? Well if you implement the functions in question then you 
> are creating a derivitive work. 

The US 9th circuit court does not agree with that statement.

"The Sega court completed its analysis by stating the general rule that "where disassembly is the only way to gain access to the
ideas and functional elements embodied in a copyrighted computer program and where there is legitimate reason for seeking such
access, disassembly is a fair use of the copyrighted work, as a matter of law."".

Where Microsoft does not document their OS, disassembly is the only way for us to "gain access to the ideas and functional elements
embodied in a copyrighted computer program". I don't think the court will accept reading the leaked source code as a way to gain the
needed information. I believe cloning the OS is a "legitimate reason for seeking such access". Connectix's reason was "building an
emulator". Now, of course, you cannot just copy the assembly instructions needed to implement the API, but you can use what you have
learned from the disassembly to express the implementation of the API so it behaves identical.

This information is available in many places, see for instance:
http://www.carrferrell.com/about/resources/fairuse.html

Casper



More information about the Ros-kernel mailing list