Posted on 04/19/2006 9:43:23 AM PDT by N3WBI3
Open source software advocate Eric S. Raymond is reporting that his name and copyright information for a bit of MIT-licensed code called the GIFLIB library are included in the end user license agreement of a Microsoft application called Expression 3.3.
Expression is a vector and pixel-based image manipulation application originally created by Creature House, a software production company acquired by Microsoft in 2003. The newest release of Expression runs only on Windows XP, whereas previous versions were also compatible with the Macintosh platform.
Raymond says GIFLIB was originally written by Gershon Elber, whose name is also mentioned in the EULA, for DOS. ESR picked it up and ported it to Unix, adding several features and writing some docs before "passing the baton" to the current maintainer, Toshio Kuratomi. "When Unisys started to jump salty about the GIF patents in the mid-1990s," Raymond writes, "I handed the project off to a maintainer outside U.S. jurisdiction, Toshio Kuratomi." Kuratomi has added a patent-avoiding version of GIFLIB called libungif.
Expression uses GIFLIB to read and write GIF images, but Raymond points out that his little library is included in lots of applications. "If you use open-source software that handles either of the two most popular raster-image formats, it is rather likely that you rely on my code every day," he writes. "Yes, that includes all you Firefox and Netscape and Konq and Safari users out there."
Raymond says he doesn't regret licensing the code under terms that would allow even Microsoft to freely use it. "I think empowering everyone is a far more powerful statement than empowering only those I agree with," he writes. "By doing so, I express my confidence that my ideas will win even when my opponents get the benefit of my code."
Microsoft didn't respond to requests for comment in time for publication.
OSS PING
If you are interested in the OSS ping list please mail me
heh--first FTP, and now GIF. Next thing you know, they'll just dump NTFS and go ext3....
OH! that would be sooo sweet!
Heck I would settle for JFS..
Raymond still doesn't get it.
The danger here is that Microshaft will manipulate the laws and the copyright provisions, as well as the EULA to claim royalties, or to prevent others from using the code.
Of course, I'd take Reiser if they went that route.
Man, this just ain't Yellow Bird's day.....
heh--first FTP, and now GIF. Next thing you know, they'll just dump NTFS and go ext3.... |
Not to mention the TCP/IP stack they lifted from BSD years ago.
Wonder if he's pulling a Ballmer in his office right about now...;)
HA!
Windows supports FAT, FAT32, and NTFS. I'm unaware of native support of any other filesystems.
The file system types which are currently supported under Linux include:
adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, nfs4, ntfs, proc, qnx4, ramfs, reiserfs, romfs, smbfs, sysv, tmpfs, udf, ufs, umsdos, usbfs, vfat, xenix, xfs, xiafs. Note that coherent, sysv and xenix are equivalent and that xenix and coherent will be removed at some point in the future use sysv instead. Since kernel version 2.1.21 the types ext and xiafs do not exist anymore. Earlier, usbfs was known as usbdevfs.
No kidding. You know how he likes to go on about Linux being communist?
Well here's more to brighten his day.
No matter how you cook them, trolls never taste good!
Some are greasy--and no matter how you cook them, they never taste good...
Not to mention the TCP/IP stack they lifted from BSD years ago
No problem. Someone has to have sympathy for the devil.
Under the BSD license, they were allowed to. As long as you credit the BSD devs when you use their code, you're in the clear.
Absolutely. Originally though, IIRC, the credit was pretty well hidden. The folks who first figured it out had discovered the fact that it responded to specifically crafted packets in exactly the same way that BSD did. Them was some serious nerds with lots of free time!
As for this story...ESR is making much fuss about nothing. MS didn't intentionally put the code in the app; the previous ownership did. Now that they know this, you can be assured ESR's code will go out the window.
ESR is a huge self-promoter. No doubt about that. As for the code disappearing... Well, you know Microsoft. They patch things into oblivion, but seldom actually remove anything.
Oh, and I do get tired of ESR parroting his expertise. This is the guy, after all, that predicted MS would be in serious financial trouble by 2002. After I read that interview, I've taken his words with a grain of salt ever since.
Yeah, well you know, it is entirely possible that Bill could drown whilst swimming in a lake of money. :-) That would probably put some pressure on MS stock.
Actually, my comment was more bait for our resident troll than anything. The BSD license lets anyone use any of the code as long as credit is given. It makes sense for folks who need a network stack to make use of it, since it is well known and works.
Typical BS from you. Microsoft didn't "lift" it from anyone, they bought it from another company named Spider. You can read it here from one of the admins at freebsd.org, or try some actual research yourself:
http://lists.freebsd.org/pipermail/freebsd-newbies/2003-September/000808.html
Q: Is it true that Microsoft uses BSD's Stack?
A: No, it's not true. For a while we thought it was, but we proved to be incorrect. Microsoft's network stack was written by a Scottish company called Spider.
Here's something else that I found while looking it up...
A Wall Street Journal article titled Microsoft Uses Open-Source Code Despite Denying Use of Such Software recently caused a ruckus on the Web.
The article stated that Microsoft was running FreeBSD on some of the servers used by Hotmail, its free Web email service. It also claimed that "software connected with the FreeBSD open-source operating system is used in several places deep inside several versions of Microsoft's Windows software, such as in the `TCP/IP' section that arranges all connections to the Internet."
I worked at Microsoft for ten years, most of it on the core Windows NT/2000 (hereafter referred to as NT) networking code. As such I briefly dealt with the Hotmail team, mostly to hear them complain about the lameness of the telnet daemon in NT (a valid point). I do know that when Microsoft bought Hotmail, the email system was entirely running on FreeBSD, and Microsoft immediately set about trying to migrate it to NT, and it took many years to do so. Now it seems that the transition is not complete. Well, what are you gonna do.
On the other hand, I know a lot about the TCP/IP stack that is running on NT. Here is a short history of it (some of this may also be told in the book How the Web Was Won, but I haven't read it):
The original plan for NT was that a few members of the core NT team (which numbered about 15 developers) would write all the networking code. However, in 1990 a small team was started up in the LAN Manager group at Microsoft to do some of that NT networking work. Eventually that team moved over to be a part of NT (this coincided with the IBM-OS/2 "divorce", if anyone is interested).
Microsoft's networking software at the time ran over a network protocol called Netbeui, but it was decided that TCP/IP was gaining in importance, and should be included in NT. In addition, the user-mode API associated with Netbeui, which was called Netbios, was too Netbeui-specific and couldn't be adapted to allow user-mode access to TCP/IP. As a result, the decision was made:
1) To put a TCP/IP stack in NT
2) To adapt the sockets user-mode API for NT
#1 was solved by licensing code from a company called Spider Systems. However, Spider's TCP/IP stack was written to run within an environment called STREAMS, which was a wrapper that specified how the various parts of the stack would communicate with each other (TCP/IP is really several pieces of code -- two of which are TCP and IP -- layered on top of each other. Most network protocols are like that, which is why they are referred to as "stacks"). As a result, STREAMS also had to be ported to NT.
#2 involved the creation of the winsock API, which persists today.
It was recognized that using Spider's stack was a temporary measure, because nobody really wanted a stack that depended on STREAMS and its associated overhead. So, a short time after this, work was begun on a new version of TCP/IP, written entirely by Microsoft.
Along with Spider's stack came versions of various TCP/IP-related utility programs, such as ftp, rcp and rsh. Those were ported from BSD sockets to winsock (not a huge change) and bundled with NT.
Now, some of Spider's code (possibly all of it) was based on the TCP/IP stack in the BSD flavors of Unix. These are open source, but distributed under the BSD license, not the GPL that Linux is released under. Whereas the GPL states that any software derived from GPL'ed software must also be released under the GPL, the BSD license basically says, "here's the source, you can do whatever you want, just give credit to the original author."
Eventually the new, from scratch TCP/IP stack was done and shipped with NT 3.5 (the second version, despite the number) in late 1994. The same stack was also included with Windows 95.
However, it looks like some of those Unix utilities were never rewritten. If you look at the executables, you can still see the copyright notice from the regents of the University of California (BSD is short for Berkeley Software Distrubution, Berkeley being a branch of the University of California, for some reason referred to as "Berkeley" on the East Coast and "California" on the West Coast...and "Berkeley" is one of those words that starts to look real funny if you stare at it too long - but I digress).
Keep in mind there is no reason to rewrite that code. If your ftp client works fine (no comments from the peanut gallery!) then why change it? Microsoft has other fish to fry. And the software was licensed perfectly legally, since the inclusion of the copyright notice satisfied the BSD license.
I won't even swear on a stack of bibles that the "new" TCP/IP now shipping in NT/2000/XP and Windows 95/98/Me is completely free of the old code from Spider. Since I don't work there I don't have access to the source code. Certainly some parts of TCP (the checksum calculation comes to mind) are the same everywhere and once someone has written an optimized version, why rewrite it? And once again, this would be perfectly legitimate for Microsoft to do under the license.
But it is certainly misleading of the Wall Street Journal to say that BSD code is used "deep inside" the NT networking code, unless they mean the STREAMS wrapper itself, which I believe is still there in case someone wants to write a transport using it (I think there is an OSI TP4 STREAMS transport lurking somewhere out there, if anyone cares - but I just checked, nobody does). But the TCP/IP in NT certainly doesn't use STREAMS.
And implying that the TCP/IP stack uses BSD code is also false. As I said above there may be small vestiges of it in there, although I doubt it. Anyway the FreeBSD programmers who reported all this to the Wall Street Journal can't see the NT TCP/IP source either, so they can't have been referring to that.
But whatever! It isn't the first time Microsoft has been maligned by the press, and it won't be the last.
However, this history does illustrate Microsoft's view of the GPL. As you may recall, Microsoft VP Craig Mundie recently claimed that the GPL is anti-competitive, un-American, flea-infested, locust-plagued, etc. This followed up on similar claims by another VP, Jim Allchin, so it appears that this is the angle Microsoft has chosen to attack Linux.
On the face of it, Microsoft complaining about the source license used by Linux is like the event horizon calling the kettle black. Microsoft has no source license at allto speak of (for the general public anyway)! Anyway when did the source license of a piece of software become an issue for the average Joe who wants to buy it? As a former Microserf, I'll be the first to admit that Mundie's arguments make no sense for the industry in general.
Still from Microsoft's point of view, the source license of software does matter, because Microsoft might want to license the code. As it did in the case of the TCP/IP code it got from Spider, which was under the BSD license. If Spider's code had been under the GPL, Microsoft couldn't have used it. In other cases, Microsoft has licensed software from companies that were not open source at all, but Microsoft was able to negotiate a private license for its own use.
Again I'm not defending Microsoft's viewpoint. For any given piece of code, there may be five companies in the world that want to license it, 500 programmers who want to modify it, and 5 million users that want to use it. So the GPL is a good thing in general. Microsoft's main goal with the anti-GPL rhetoric is to discredit Linux, not to make it easier for it to license third-party software.
Still you can see how Microsoft's stance, from its own weird, warped perspective, almost makes some little iota of sense.
So, it would appear that they in fact did use BSD code through the purchase of Spider's software. According to the poster, they most likely eventually went back and rewrote it, but it started with existing code taken from BSD's network stack (by Spider). There is nothing particularly wrong with this, as the BSD licence eplicitly allows such things. It just seems strange in light of Microsoft's war against open source (as mentioned above).
Note that the client programs (where it is easily seen) such as ftp, are still using BSD code. (again, properly but a bit hypocritically.
As far as the source of this, adamba, I have no idea who he is, but the article at least appears to be even-handed on the subject, and is not just a rant against MS. It's about as credible as the mailing list link offered by the troll as "proof".
Fine. I was simply objecting to your BS that Microsoft "lifted it". Your education continues.
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.