[sane-devel] A doubt about reverse engineering

Matthew Duggan stauff@guarana.org
Sun, 5 Sep 2004 15:44:32 +1000

On Fri, Sep 03, 2004 at 10:52:24PM +0200, JKD wrote:
> Hello everyone,
> I'm writting a program to control hp scanjet 3970 (at this momment I
> can not call it 'backend') using reverse engineering to a windows
> library provided by HP. And I have a doubt. Due to the structure of
> the program is similar to functions debugged in the library... could I
> have any legal problems with HP? Could exist any problem in making GPL
> any code derived from aplying reverse engineering to a copyrighted
> library?
> Sincerelly, JKD


I've thought quite a bit about this in the past, and have come to a
few conclusions.

Firstly, the purely legal answer is that it depends on your local laws.
There are clauses in nearly every software license agreement which say
you can't reverse engineer things, but these are not always valid.  For
example, in Australia, the Copyright Act sections 47D and 47H mostly
protect this activity, from a copyright point of view at least.

The second answer is a commercial reality one.  Companies don't always
go after people just because they have a legal leg to stand on.  It has
to be worth their while.  Would a company be willing to spend hundreds
of thousands of dollars preparing a case trying to stop someone who is
not hurting their revenue or revealing any real secrets?  Unless they
have something pretty magical they want to protect, probably not.  They
also have the bad PR which would come from such a venture to consider -
the OSS community does not take kindly to that sort of thing.
Regardless, it's always cheaper for them to wave their lawyers at people
first, and only prepare a real case if the person is stubborn.

The third answer is that writing the backend on my resume made me look
more interesting than most fresh graduates, and helped me get an
interview with CISRA (http://www.cisra.com.au/) when I probably wouldn't
have gotten one otherwise :)


- Matthew