LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - General
User Name
Password
Linux - General This Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.

Notices


Reply
  Search this Thread
Old 11-28-2010, 01:00 AM   #1
MALDATA
Member
 
Registered: Mar 2005
Posts: 157

Rep: Reputation: 19
The legality of rewriting proprietary code


I frequently use GNU Octave in lieu of MATLAB. In most cases it gets the job done just fine, but there are the occasional missing functions.

Some of MATLAB's code can easily be viewed by simply finding the appropriate m-file in the MATLAB directory. I could easily take some of that code and more-or-less paste it into Octave's source, but obviously that's not right. If I rewrote it from scratch, that would be fine, but since I've already seen the code, I am obviously going to tend toward the same algorithms and conventions.

This can't be the first time this has come up. How is it usually handled? If proprietary code can easily be viewed and edited, how can it ever become part of an open-source package? Any similarity would be cause for suspicion.

Thoughts?
 
Old 11-28-2010, 02:57 AM   #2
macemoneta
Senior Member
 
Registered: Jan 2005
Location: Manalapan, NJ
Distribution: Fedora x86 and x86_64, Debian PPC and ARM, Android
Posts: 4,593
Blog Entries: 2

Rep: Reputation: 344Reputation: 344Reputation: 344Reputation: 344
See: Clean room design. This is how software is functionally replicated in a completely legal manner.
 
Old 11-28-2010, 03:24 PM   #3
MALDATA
Member
 
Registered: Mar 2005
Posts: 157

Original Poster
Rep: Reputation: 19
Unless I misunderstand what I read in that article, basically this means that the only way to add that code to Octave is to make sure that whoever writes it never sees the original MATLAB script.

In other words, since I've already seen their script, I'm "contaminated by knowledge of the proprietary techniques," so I can't do it myself.

What's odd is that there's an open-source package that uses this particular script more-or-less unchanged. It even has the Mathworks copyright notice in it.
 
Old 11-28-2010, 10:56 PM   #4
Dark_Helmet
Senior Member
 
Registered: Jan 2003
Posts: 2,786

Rep: Reputation: 374Reputation: 374Reputation: 374Reputation: 374
Quote:
Originally Posted by MALDATA
Some of MATLAB's code can easily be viewed by simply finding the appropriate m-file in the MATLAB directory. I could easily take some of that code and more-or-less paste it into Octave's source, but obviously that's not right. If I rewrote it from scratch, that would be fine, but since I've already seen the code, I am obviously going to tend toward the same algorithms and conventions.
Just because something is easily accessible doesn't mean it's entitled to less protection. For instance, if you leave the front door to your house unlocked doesn't mean an intruder shouldn't be punished for trespassing.

Quote:
Originally Posted by MALDATA
Unless I misunderstand what I read in that article, basically this means that the only way to add that code to Octave is to make sure that whoever writes it never sees the original MATLAB script.

In other words, since I've already seen their script, I'm "contaminated by knowledge of the proprietary techniques," so I can't do it myself.
Essentially, yes. In addition, having seen and been exposed to the code, you should not advise, comment on, or direct any individual's efforts to implement the code either. If you did write the new code or instructed someone else how to write it, then it would easily be argued that the new code is a derivative work of the old.

Quote:
Originally Posted by MALDATA
What's odd is that there's an open-source package that uses this particular script more-or-less unchanged. It even has the Mathworks copyright notice in it.
There's an easy explanation: permission. The open-source package maintainers may have requested and received permission from MATLAB to include the script. Getting permission to include code usually requires inclusion of the copyright notice to specify which portion of code is covered by copyright A versus other code protected by copyright B.

Alternatively, they could be approaching this as a "quote" from an original source. If they attribute the code to the original source, then they make no claims as to original authorship. Given that MATLAB, as a whole, is significantly larger than a single script, it could be likened to quoting a paragraph from a novel for a book report. That's not exactly analogous here, but you get the idea.

Certainly, don't rely on LinuxQuestions for legal expertise. You should talk to an attorney if you're thinking of doing something that you can't afford to be on the "losing side" of.
 
Old 11-29-2010, 10:21 AM   #5
MALDATA
Member
 
Registered: Mar 2005
Posts: 157

Original Poster
Rep: Reputation: 19
Quote:
Certainly, don't rely on LinuxQuestions for legal expertise. You should talk to an attorney if you're thinking of doing something that you can't afford to be on the "losing side" of.
I can't afford to lose, and I can't afford to talk to an attorney, either...

My lab has a valid MATLAB license, I just prefer to use Octave when I can. So, I rewrote the code for my own use, and just figured that if it wouldn't be a huge headache, I'd add it to the Octave repo. But it sounds like there would be all manner of trouble with that, since I used the same references for my code as the ones they cited in theirs.

Thanks for the help!
 
Old 11-29-2010, 04:00 PM   #6
jefro
Moderator
 
Registered: Mar 2008
Posts: 22,001

Rep: Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629
Why do you ask? You are stealing code and using it against the law.
 
0 members found this post helpful.
Old 11-29-2010, 04:11 PM   #7
MALDATA
Member
 
Registered: Mar 2005
Posts: 157

Original Poster
Rep: Reputation: 19
I think you've wildly misinterpreted my question.

My question was about how visible functions in non-free software could ever be legally replicated and added to a GPL'ed project. I'm not real keen on being accused of "stealing code and using it against the law."

All I was asking was how the scripts could be referenced or rewritten without violating the copyright. Question answered. Sheesh.
 
Old 11-29-2010, 04:28 PM   #8
impert
Member
 
Registered: Feb 2009
Posts: 282

Rep: Reputation: 54
Quote:
You are stealing code and using it against the law.
How can this be true?
He is using the software that he has paid for. He is not (as far as we know) re-distributing it.

Does anyone seriously believe that all this soul-searching goes on on the other side of the fence?
 
Old 11-29-2010, 09:38 PM   #9
jefro
Moderator
 
Registered: Mar 2008
Posts: 22,001

Rep: Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629
Most software is protected not only in terms of how many copies you can have as well as how it's works are used directly or indirectly. I can legally copy a MS disk but that is for backup use not for use. I can have as a tech a second copy of some software and use it to test but when I am done I have to remove it.

Because you ask you have reason to believe copying is wrong.


As to the legal way to reverse engineer it may be up to some court. I know that method that has both failed in courts and passed.

I would contact the owner of the software in question and ask for legal use.

Not all companies are a bunch of crooks. I retired from a major computer maker. Patents and other intellectual property was very seriously treated as to source and legal status. Workers were warned that they may be libel for any losses from their actions.

Last edited by jefro; 11-30-2010 at 02:53 PM.
 
Old 11-30-2010, 07:57 AM   #10
impert
Member
 
Registered: Feb 2009
Posts: 282

Rep: Reputation: 54
@jefro
Thanks for the reply.
In the real world, if I buy, say, a hammer, I am free to replace the handle, or shorten it, if a shorter handle suits me. I am not free to sell copies of it with the original maker's stamp or logo.
You are saying then that in the world of non-free software, I can't even shorten the handle to fit me.
Non-free indeed!
Quote:
Not all companies are a bunch of crooks
No doubt. But there appears to be a culture in some quarters that what is acceptable for "us" is whatever our lawyers think we can get away with, and what is acceptable for "them" is whatever we can't prevent them doing, by fair means or foul.
 
Old 11-30-2010, 03:55 PM   #11
jefro
Moderator
 
Registered: Mar 2008
Posts: 22,001

Rep: Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629Reputation: 3629
Some of my relative are lawyers. I know all too well both sides of the coin.

I can't say what you own or don't own.

Yes, you can replace the handle on the hammer. You do own it and by various court cases you can change it. It is a product and not software. Some products are protected though. In a similar deal you do not have to use Mercury outboard oil to insure warranty claims. But it took many years for that and a very expensive legal case.


If you are a company that uses software for a profit (not your own home use) you can usually not replace code from some application unless it is in the EULA. In recent years the software creators do not sell you the software. They sell you a rent agreement. You have no legal right to use it except in the terms of the agreement.


I'd still read the EULA and contact matlab for legal use of the code in question. It may be that they do not own the code but some other person or company does.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Billions and billions of...lines of proprietary code to go open source LXer Syndicated Linux News 0 11-27-2007 01:40 PM
LXer: Using a hypervisor to reconcile GPL and proprietary embedded code LXer Syndicated Linux News 0 08-28-2007 01:50 AM
LXer: Why proprietary code is bad for security LXer Syndicated Linux News 0 08-25-2007 05:20 PM
LXer: Linux: Rewriting the x86 Setup Code LXer Syndicated Linux News 0 07-15-2007 06:31 PM
nVidia proprietary drivers - different code for different cards? jhwilliams Linux - Hardware 1 06-13-2007 09:59 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - General

All times are GMT -5. The time now is 08:13 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration