Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Linux Software

Did SCO 'Borrow' Linux Code? 688

An Anonymous Reader writes "Apparently someone inside SCO has stated that SCO(actually Caldera) copied Linux code into System V. They did it to build what they now market as Linux Kernel Personality - the ability to run Linux software on their Unix. Now, the open source community(of course they don't mention who) is jumping on this, because they didn't return the changes to the OS community or give the community credit. Of course, SCO says it's a misunderstanding and, get this 'SCO also never used any of the Linux kernel code.'"
This discussion has been archived. No new comments can be posted.

Did SCO 'Borrow' Linux Code?

Comments Filter:
  • by Anonymous Coward on Tuesday June 10, 2003 @07:53PM (#6166417)


    This is exactly the kind of scenario that Cringely pointed out in his latest column about the SCO vs. IBM situation on his PBS.org website:

    I, Cringely: Technician, Steal Thyself [pbs.org]

    Related past columns:

    May 22, 2003 [pbs.org]
    May 29, 2003 [pbs.org]

  • by Mensa Babe ( 675349 ) on Tuesday June 10, 2003 @07:53PM (#6166418) Homepage Journal
    read Eric S. Raymond's OSI Position Paper on the SCO-vs.-IBM Complaint [opensource.org], I suggest to read it. It is very interesting and shows that we have nothing at all to worry about. Great job, ESR!
  • by Jeremy Erwin ( 2054 ) on Tuesday June 10, 2003 @07:58PM (#6166474) Journal

    That could violate the conditions of the GNU GPL, which states that any amendments to open-source code used in a commercial product must be given back to the community or a copyright notice must be displayed attributable to Linux, he said.


    Sounds as if the source doesn't understand the difference between the BSD license and the GPL.
  • by Anonymous Coward on Tuesday June 10, 2003 @08:02PM (#6166514)
    No. The only evidence SCO has presented is that there are 80 lines of somewhat duplicate code. That does not constitute evidence that the code was copied from SCO to Linux. Rather the opposite is more likely since Linux code is far more accessible than SCO Unix.

  • GPL (Score:3, Informative)

    by sparkz ( 146432 ) on Tuesday June 10, 2003 @08:04PM (#6166526) Homepage
    That could violate the conditions of the GNU GPL, which states that any amendments to open-source code used in a commercial product must be given back to the community or a copyright notice must be displayed attributable to Linux, he said.

    Err... hello? If you distribute it (SCO did) it must be given back; I can't find anything in the GPL which mentions a copyright notice as an alternative.

  • Re:Two Words (Score:3, Informative)

    by Daniel Phillips ( 238627 ) on Tuesday June 10, 2003 @08:18PM (#6166609)
    No, the original poster didn't fail to read the article; you failed to read his comment.

    The original poster has a point, but it has little to do with the article. Please read the article again. This is a new claim. If substantiated, it basically constitutes a large torpedo headed in the direction of SCO.
  • Re:Get this! (Score:3, Informative)

    by stox ( 131684 ) on Tuesday June 10, 2003 @08:18PM (#6166611) Homepage
    Answer to #1, FreeBSD maps the Linux system calls into its own. No Linux code or kernel is used to provide this interface. However, to "really" use it, you need to copy Linux libraries and binaries onto the system.
  • Re:The other way ... (Score:3, Informative)

    by Arker ( 91948 ) on Tuesday June 10, 2003 @08:22PM (#6166643) Homepage

    if the code examples Sco are showing are identical ... how do they prove who had it first

    You can assign a date for when a line entered linux pretty easily, you just search the kernel list archives. Since they're public and mirrored sufficiently they can be considered reliable - even if someone wanted to fake them it would be impossible to get away with it. You can set a date on calderas end but less easily, because you must have a check - they can fake anything they want since it's proprietary code. Essentially you would need to take the code they claimed came from a certain date, compile it, and compare it with a properly attested binary that actually matches the claimed date.

    Note also that this method isn't perfect - they can change the comments all they want and there's no way you could possibly prove that, since it doesn't affect the compiled code.

  • by Surak ( 18578 ) * <surakNO@SPAMmailblocks.com> on Tuesday June 10, 2003 @08:39PM (#6166779) Homepage Journal
    Interestingly enough, paragraph 81 in particular is also complete FUD:

     In addition, the GPL provides that, unlike SCOâ(TM)s UNIX operating system or IBMâ(TM)s AIX operating system or Sunâ(TM)s Solaris operating system, no warranty whatsoever runs with its software. The GPL includes the following language:

    NO WARRANTY

    BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAWâ¦THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.


    These limitations of liability are no different that those included in Sun's Solaris BCL, despite SCO's claim above the contrary:


    3. LIMITED WARRANTY. Sun warrants to you that for a period of ninety (90) days from the date of purchase, as evidenced by a copy of the receipt, the media on which Software is furnished (if any) will be free of defects in materials and workmanship under normal use. Except for the foregoing, Software is provided "AS IS". Your exclusive remedy and Sun's entire liability under this limited warranty will be at Sun's option to replace Software media or refund the fee paid for Software.

    4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.

    5. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event will Sun's liability to you, whether in contract, tort (including negligence), or otherwise, exceed the amount paid by you for Software under this Agreement. The foregoing limitations will apply even if the above stated warranty fails of its essential purpose.


    All Sun's guaranteeing is that the media is good and that they'll replace your media if defective. All current Linux distributions that distribute on physical media will, of course, do the same. Sun is essentially saying that they'll give you your money back for the license fee paid if and only if a court determines that it's limitations of liability (read: disclaimer of all liability) are held to be invalid under the law. And the only reason they're saying that is so that their whole limitations of liability (read: disclaimer of liability) doesn't wholesale get tossed out on the basis that it violates contract law. (IANAL, but I did have a business law class ;)

    This is the same for Linux, except, in all cases regarding the licensing of the kernel, there is no license fee paid, hence, you get no money back. Duh.

  • by polished look 2 ( 662705 ) on Tuesday June 10, 2003 @08:46PM (#6166819) Journal

    do you not understand? The article states:

    A source close to SCO, who spoke on condition of anonymity, told eWEEK that parts of the Linux kernel code
    were copied into the Unix System V source tree by former or current SCO employees. [emphasis mine]
  • by rifter ( 147452 ) on Tuesday June 10, 2003 @08:50PM (#6166840) Homepage

    From the article:

    A source close to SCO, who spoke on condition of anonymity, told eWEEK that parts of the Linux kernel code were copied into the Unix System V source tree by former or current SCO employees.

    That could violate the conditions of the GNU GPL, which states that any amendments to open-source code used in a commercial product must be given back to the community or a copyright notice must be displayed attributable to Linux, he said.

    That would be the BSD license. The GPL requires a project that incorporates GPL code to be GPLed as well, which means the source must be made available to people who get binaries and their rights to distribute the program under the GPL cannot be infringed. If this does not happen the right to distribute the GPL code is revoked and its distribution is therefore a copyright violation. Therefore if SCO really stole GPL code for its Linux Kernel Personality it has a serious problem on its hands.

  • by etymxris ( 121288 ) on Tuesday June 10, 2003 @08:57PM (#6166896)
    THe source does not say they copied the code itself. they just added ts functionality in to SCO.
    Yes he does. Read again:
    "These system call implementations had to be quite compatible with the behavior of the real Linux kernel, otherwise Linux applications would not work on SCO Unix. It is quite obvious to argue that in order to get these right, Linux kernel code had to be studied and possibly copied into the SCO Unix kernel to implement the Linux Kernel Personality.


    "How else would you get the Java Hotspot VM or the X-window server (Linux binaries) to work on SCO Unix?" the source questioned.

  • by Zach Fine ( 12869 ) on Tuesday June 10, 2003 @09:00PM (#6166918) Homepage
    I'm glad you are encouraging people to read the article before posting, but I think YOU have it backwards. The article I read stated that the SCO engineers were implementing a layer that would interpret Linux system calls so that SCO's Unix implementation could run Linux binaries. The anonymous source quoted in the article was one of the engineers assisting on this project, and s/he was surprised by how similar the "new" SCO code was to the pre-existing Linux code.

    The SCO code in question was in the process of being written and could not yet have been copied into the Linux kernel unless someone on the Linux team had a time machine. I repeat, the article is about a SCO engineer encountering supposedly NEW SCO code that appeared to have been cribbed from already existing Linux code.

    Please re-read the following quote from the article and evaluate how it fits with your interpretation of the article:

    A source close to SCO, who spoke on condition of anonymity, told eWEEK that parts of the Linux kernel code were copied into the Unix System V source tree by former or current SCO employees.

    This is not about old SCO code finding its way into Linux, this is about supposedly new SCO code written to implement Linux kernel functions that looked suspiciously like code taken straight out of existing versions of Linux.

  • by TheFrood ( 163934 ) on Tuesday June 10, 2003 @09:01PM (#6166920) Homepage Journal
    first the SCO engineers were not re-writing the SCO linux kernel they were simply writing stubs and wrappers for the SCO kernel to make an API (if you will) that looked like Linux on the outside and was actually calling SCO unix routines. they were NOT changing the SCO unix routines or making SCO kernel more linux like. they just wanted to allow Linux application to be able to execute in a Linux Personality Module layer that made SCO look like linux without having to change the SCO kernel

    Yes, this is what the unnamed "source close to SCO" says he was doing -- re-implementing certain Linux kernel APIs in the UnixWare kernel. And you're correct that that's perfectly legal.

    But what he's saying is that while he and the other programmers on the project were implementing the LKP, they discovered that portions of the UnixWare kernel were already very similar to portions of the Linux kernel -- to the point of having identical variable names (presumably non-trivial ones), etc. In other words, although the LKP project is perfectly legal, this anonymous source says that while working on it, he and the other programmers on the project uncovered evidence of prior code-copying by SCO.

    TheFrood
  • by paroneayea ( 642895 ) on Tuesday June 10, 2003 @09:05PM (#6166957) Homepage
    Hm.
    I don't agree that SCO produces "nothing," because they are clearly selling server computers and such on their website. Yet I would agree that they produce nothing unique, new, or innovative (quite like Microsoft... sorry, couldn't help it). I spent a while looking over their "products and services" and I couldn't find a single thing a sysadmin couldn't get somewhere else. And, correct me if I'm wrong, but sysadmins are SCO's main customers, and even more specifically, Unix sysadmins.
    Now I got thinking: most Unix sysadmins are Linux and Open Source advocates. At least this has been my experience. So it seems to me that even if SCO won this lawsuit, they would lose most of their customers. As I said before, SCO doesn't provide anything unique, new or innovative in any form, so there are plenty of viable alternatives to their services us sysadmins can move on to. In conclusion: this lawsuit is a lose-lose situation to SCO no matter what. Either they lose the lawsuit and their company collapses, or they win the lawsuit and angry system administrators simply move on to any of the billion other companies that provide exactly the same things they do.

    A short note before I wrap this up: I sent a message like this to SCO early on in their lawsuit against IBM, urging them to cancel it quickly. After clicking the send button, I noticed a little message that said something like "Thank you for your input, you will hear from us soon!" I realized at that moment that I was stupid enough to write in my personal email address in that email, rather than my standard spam distraction. Well, I did get a message from SCO very quickly, in a way, for the next day my inbox was littered with spam... something I had never gotten before I wrote that message.
    Thanks SCO. Thanks.
  • No, not microsoft. (Score:1, Informative)

    by Anonymous Coward on Tuesday June 10, 2003 @09:06PM (#6166966)
    They said that they received around
    16 million in licensing fees the last
    quarter, mostly from two sources. One
    of them was acknowledged to be
    Microsoft, and the other did not wish
    to have their identity disclosed.

    Microsoft was estimated to have given
    them ~$8.8 million dollars. That leaves
    another unnamed player on the stage.
  • by soloport ( 312487 ) on Tuesday June 10, 2003 @09:17PM (#6167042) Homepage
    Ernie Ball (a company that primarily makes music hardware/parts/guitar strings) was ordered to pay $90,000 to Microsoft within 120 days to be compliant (not enough licenses).

    Besides the article you site supports these facts. The $90k was paid to Microsoft. It was afterward, when MS made EB out to be a poster child of licence abuse, that the EB Executives themselves decided to give their own IT department 120 days to become Windows-free.

    Real good read, tho!
  • Re:Proving the code (Score:4, Informative)

    by isn't my name ( 514234 ) <.moc.htroneerht. .ta. .hsals.> on Tuesday June 10, 2003 @09:17PM (#6167046)
    Of course, make sure you are using the same patched compiler that was used to make the original binaries, as well as the same compiler switches/optimisations. Ditto for all the libraries.

    Seems to me that even compiling it to prove the binaries are identical will be difficult, whether you are compiling SCO or Linux code.
  • Re:Two Words (Score:4, Informative)

    by Redman ( 8312 ) on Tuesday June 10, 2003 @09:25PM (#6167102)
    I'd like to see a timeline.

    I found a November 2002 article [com.com] talking about SCO, high end computing work that they had done with Compaq in the clustering arena and a brief touch on LKP.

    I found a February 2001 article [vnunet.com] just about Linux and SCO integration and LKP.

    I found a 2002 SCO Newsletter [wimal.com.pl] touting LKP.

    I also found Simon Baldwin's resume [geocities.com] who has a long history at SCO and who was the "Lead Kernel Engineer and Architect for the Linux Kernel Personality (LKP)" from February of 2000 to "present".

    So the LKP stuff was going on quite some time ago. Before or after IBM allegedly put the offending into Linux? Inquiring minds want to know.
  • Closeley protected? (Score:2, Informative)

    by Anonymous Coward on Tuesday June 10, 2003 @09:43PM (#6167206)
    There must be easily hundreds of thousands of people with read access to various UNIX source codes; I do [of one implementation of it] (as if reading that or Linux kernel source meant anything to me). I don't have read access to SCO's source, FWIW.

    UNIX source isn't some close-held secret; everyone's implementation is, of course, but there are tons of licensees; it is certainly possible that "generic" UNIX source could be passed on to Linux for various reasons (stupidity, ignorance, arrogance, maliciousness against either party). If it's SCO's own customisation of what they license to other parties, then it's one of their people (or IBM, of course).

    That's all assuming that we believe this anonymous story, which could well have been perpetrated by a slashdot reader, of course....

    And then, SCO could be making it all up, as has been said enough times before to be not worth repeating.

  • Re:Two Words (Score:2, Informative)

    by Oriumpor ( 446718 ) * on Tuesday June 10, 2003 @10:22PM (#6167463) Homepage Journal
    No... I used "offending" code loosely because that is what I have always used to represent SCO's original claims that Linux is an unlicensed (stolen code) derivative or Unixware. I read the article, it had no substantial claims: (READ, A BROTHER OF A FRIEND OF A NEFEW OF A GRANDSON WHO'S STEPSISTER KNOWS A GUY WHO WORK-ED (NO DATE GIVEN) AT SCO.)



    This exact possibility HAS been mentioned before NUMEROUS times in other SCO threads. Now if you actually followed them you wouldn't use your "excellent" account to mod me down then comment with your hater. (READ: INSUBSTANTIAL CLAIMS SIMILAR TO YOUR INSUBSTATIAL CLAIM OF MY NOT RTFA)



    SO, as I was saying, this WAS brought up before. AND I won't believe this until I see it in court or SCO settles for peanuts.



    NOW, if you wanna hate cause I got FP, please do, but don't yell at me for misreading my post.

  • Hmm. No. (Score:5, Informative)

    by mindstrm ( 20013 ) on Tuesday June 10, 2003 @11:42PM (#6167895)
    This is a common mistake people make when looknig at the situation.

    If they distribute code derived form a GPL work, they aer not BOUND by the gpl; they are BOUND by copyright law, and the copyright holders who's rights are being violated can sue. The GPL is simply something they could cite to demonstrate they had permission to do what they do.

    IT's not a GPL violation, it's code theft. There is a difference.

    Yes, there is a clause in the GPL that says "By distributing siad work, you accept this license"... but that can only apply if you have READ the license in the first place. So it's dodgy.

  • by Mensa Babe ( 675349 ) on Wednesday June 11, 2003 @12:00AM (#6167974) Homepage Journal

    This could be the case that tests the GPL. We *need* this and should embrace it. It will put to the death once and for all the FUD that Open Source licenses won't pass legal muster.

    There is no need to prove the legality of GPL. If it was invalid, or if someone doesn't want to agree with its terms (because no one has to accept GPL, as it is stated in the GPL itself -- you don't have to sign it, after all) then the only rules there are, are those imposed by the copyright law, which makes it illegal to distribute copyrighted works. If anyone wants to distribute GPL'ed software while saying that she doesn't agree with the GPL, or while questioning its legality, then all she has is a copyright law, which clearly states that what she's doing is illegal. I have posted a comment [slashdot.org] about it, but it has only Score:2, so obviously no one has read it. Basically, if SCO thinks GPL doesn't mean anything from the legal point of view, then, after rejecting the GPL, when they look at the Linux kernel, what they have is just a piece of software with "Copyright (C) 1991-2003 Linus & Co. All right reserved."

  • Re:The other way ... (Score:3, Informative)

    by liquidsin ( 398151 ) on Wednesday June 11, 2003 @12:26AM (#6168149) Homepage
    But we know they license their code to IBM (and probably to others too...too lazy to look it up) so I'd bet that anybody licensing that code has archives that they could pull up to check against SCO pulling any shenanigans like changing comments / code / dates.
  • by Overly Critical Guy ( 663429 ) on Wednesday June 11, 2003 @12:28AM (#6168168)
    I'm sure as a comedian he would've loved you stealing his joke from "Relentless."
  • Article seems bogus (Score:3, Informative)

    by Anonymous Coward on Wednesday June 11, 2003 @12:30AM (#6168177)
    The quoted "source" does not seem to know much, or talk like a sane kernel hacker would.

    "We were even surprised by the identical variable names of both codes !!" Honestly, who talks like that?

    And socketcall() is listed as an example of a syscall that is "fairly hard to wrap." socketcall() is a cheap socket API syscall... Most UNIXes have socket(), listen(), send(), sendto(), etc., all as different syscalls, but not Linux. Linux has:

    int socketcall( int call, unsigned long *args );

    "call" is an integer representing which socket syscall. "args" is effectively a stack pointer..

    Now... This call is INSANELY easy to wrap. Create a table of function pointers:

    void *funcs[] = { sys_socket, sys_connect, ... };

    Then, essentially, copy "args" to the stack, and call funcs[call], after verifying that "call" is legal and good... This could be done with a touch of assembler that manipulates the stack pointer. Or, you could do it the long way in straight C, the way the Linux kernel itself does.

    This would all be very little work. I don't even know much about kernels and I could do it. For that to be described as "hard" is a bit much.

    I can think of a lot of other places in the Linux syscall interface that are much harder to wrap than "socketcall()"... Also, it shouldn't surprise anyone that most syscalls map one-to-one across 2 different types of UNIX systems. It's that way for a reason.

    This article is... Somewhat confusing... And by all means, sounds bogus.
  • by Anonymous Coward on Wednesday June 11, 2003 @12:43AM (#6168239)
    I've heard that things often get lost in translation when talking to journalists but there are some elements in this article which just plainly don't sound consistent.


    Especially to any one who worked as an engineer at SCO.


    My suspicions were raised by the quote:

    The source, who has seen both the Unix System V source code and the Linux source code and who assisted with a SCO project to bring the two kernels closer together, said that SCO "basically re-implemented the Linux kernel with functions available in the Unix kernel to build what is now known as the Linux Kernel Personality (LKP) in SCO Unix."


    Unless they were a real newbie no engineer who worked at SCO would refer to SCO Unix because this would be internally confusing. SCO had two flavours of unix - SCO Openserver and Unixware.


    LKP was really an enhancement on the basis of the lxrun application developed originally by Mike Davidson - I think Sun now doesn't some work with this - also I think it is open source. By implementing a system call trap handler you can implement a system call handling interface for our linux binaries. The LKP was really about making this system call handling and environment emulation more realistic and efficient. You don't 'necessarily' need to put parts of the linux kernel in your kernel to do this.


    It is also quite suprising how much lxrun could actually do without all the LKP stuff.


    I get the impression that the 'SCO source' didnt really understand how this emulation worked.


    This statement is dodgy: Parts of linux were copied in to "The Unix System V tree".


    Presumably this refers to OpenServer, it certainly doesn't refer to Unixware. This is inconsistent because UnixWare is OS on the LKP was implemented - and it certainly would not be refered to as Unix System V.


    The facts seem a bit muddled to me. It might be that the engineer was telling truth but some facts got lost in translation - and just don't ring true to me. I left SCO before the LKP project was in full flight and I guess they would want to engineer some system calls into the kernel.


    There was a lot of crap (usually ignorant or laughably incorrect) on slashdot about SCO before all of this stuff happened. But I do know that SCO had plenty of customers who were very happy with the products and that it was a great place to work.


    And by the way, I and no one I've talked to since have seen any Unixware source in the Linux kernel.


    Its a massive shame to me that a decent company was taken over by the bandits and shysters called Caldera. It beats me why they had change the company name back to 'SCO' before launching this pointless action.

  • by Mensa Babe ( 675349 ) on Wednesday June 11, 2003 @01:02AM (#6168317) Homepage Journal
    It had to be compiled with the same compiler and with the same options, but the binary comparicon might not be enough, because the same code in different context would be compiled with different registers, different memory addresses, etc. But a disassembly of both compiled binaries could be stripped of everything but the opcodes, and it could be compared by some modified version of diff, which would print common blocks which are larger than some minimal number, maybe even allowing some maximum number of mistakes, etc. This could be done, provided we could compile Linux with exactly the same compiler, the same version, with the same options, as the SCO's system was compiled with.
  • by Anonymous Coward on Wednesday June 11, 2003 @01:23AM (#6168413)
    Umm, in a word NO. You can call GPL programs e.g. gzip for instance through a system() like call but you can not call GPL routines, linked to your source without releasing that source as a GPL program. You can link LGPL code to your source but that's not what you said.

    Furthermore, reading the code while "reimplementing" it is strickly a no-no as far as getting anyone to believe you didn't use it in your program. In fact IBM, the subject of SCO's stupidity, is very strict in this regard. Something that it is obvious that SCO isn't!
  • by kompiluj ( 677438 ) on Wednesday June 11, 2003 @03:48AM (#6168798)
    You can clearly see on http://www.sco.com/scosource/unixtree/unixhistory0 1.html [sco.com] an arrow drawn from Linux 2.2.16 kernel to the SCO UnixWare. Unfortunately you don't see any arrow going the other direction :). Check out http://www.levenez.com/unix/history.html [levenez.com] for a non obfuscated version of the graph.
  • by nagora ( 177841 ) on Wednesday June 11, 2003 @04:19AM (#6168905)
    I'm sure as a comedian he would've loved you stealing his joke from "Relentless."

    Since when was a simple statement of the facts a joke? Rumsfeld arranged the sale of several types of plague, plus Anthrax and West Nile Virus, to Saddam, so what's the joke in pointing this out?

    TWW

  • by Cyberdyne ( 104305 ) * on Wednesday June 11, 2003 @04:34AM (#6168937) Journal
    BSD code is perfectly GPL compatible. You can include it line-for-line, but IIRC you have to keep the copyright notice and BSD license in the file.

    Only true of the newer BSD license: the original contains the "advertising clause", which is incompatible with the GPL. Alan Cox had a problem with this: he wanted to integrate a BSD IP stack (back before Linux had one), but at the time the BSD license wasn't GPL compatible. So, he wrote his own GPLed one and integrated that instead.

With your bare hands?!?

Working...