CryptoAPI

Patrik Stridvall ps at leissner.se
Thu Sep 6 18:26:15 CDT 2001


> > Beside the GPL doesn't cover use, only distribution, so if the user
> > would install a Winelib that uses a GPL library that would be
> > completely legal as far as that user would be concern despite the
> > fact that he has a non-GPL:ed application that uses Winelib.
> 
> Hmm, if only distribution is covered, then can we still write 
> code for a GPL 
> library (use) as long as the library isn't shipped with wine 
> and test for it 
> on the user's system?

Well, actually since the Wine license is GPL compatible that is
not a problem either.

The problem is that some 3rd party might use Winelib for
an application that has non-GPL compatible license.

See below.

> > However Alexandre has clearly expressed that he doesn't want Wine
> > to be a legal test bed, if not primarily for the legal issues, so
> > because he doesn't want an unsuspecting company using Winelib be
> > "cruficed" on Slashdot or wherever for alleged GPL violation. :-)
> >
> > While I, in some meaning, agree, I do not believe that we should
> > refrain from doing so because of fear of what might never be.
> > Obviously we should turn off the use of any GPL:ed library 
> by default.
> 
> I tend to agree with Alexandre and suggest little or no work 
> in this area 
> proceed until the legal debate is over.  It seems only best 
> for the project 
> to avoid the possibility of legal action against us, 
> especially for something 
> we don't fully understand.

As far as the Wine source code is concerned the debate as over as it
can be without a real court case. The Wine license is GPL compatible
so saying that the Wine source code violates the GPL is ridiculous.
So what you have to claim is that the Wine source code facillitates
others to violate the GPL. This is ridicioulous too for other reasons,
foremost because none of requirements of contributary or vicarious (sp?)
is even remotely fullfilled.

As far as the binaries are concerned, well, the Wine project itself
doesn't distribute binaries so it doesn't matter as far as the
project is concerned. OK it links to others binaries but claiming
liabillity for that is ridiculos too.

So far the Wine project. As for other people, well no one really
knows since there are very few (if any) relevant court cases on
the subject.

However consider this, that is actually not a hypotetical
situation at all. Even if it is, it still illustrates an example.

IIRC when Corel ported Corel Office it used some sort of
font rendering library made by Bitstream IIRC. The library cost
money to use, but the use of library was optional. If you
had it was used if not you didn't get as good fonts as
otherwise.

So does Corel Office violate Bitstream's copyright?
Obviously not, no sane court would claim that and beside
Bitstream haven't and won't sue because they benefit from
the sitution since now consumers has one more reason to
buy their product. Beside that will make it a much harder
for them to show damages since their are none.

That covers pretty much the use of all normal commersial libraries.
In short they have no reason to sue and no chance of success
either.

Now enter the GPL. The problem is that GPL has an entirely
different goal than normal commersial licenses.

The commersial library developers wants as many users as possible
since each legal user pays money for their product and even
illegal users might help them to make the library more
widely spread and more of a defacto standard that will
likely generate more users (both legal and illegal) in the
long run. Note that they normaly don't care what license any
user of library distributes his code under either.
In short they don't make any difference between different
users as long as they are paid.

The copyright holder a GPL:ed library on the other hand have no 
intrest in that software under non-GPL compatible licenses uses
their library. This is a fundmental difference. On the other
hand the GPL is a distribution not a use license. Paradox? :-)

I could speak about this much longer but the point what is
legal or what is not is entirely dependent on:
1. Is the GPL is virus that can infect users of the code?
2. If it is a virus, to what extent does the infection spread.

Put is another way: GPL:ed libraries discriminates again
different kinds of users (developers and end user). The
commersial libraries does not normaly do that.

Whether and how far copyright law permits this is IMHO one
of the most fundamental unresolved questions for open source
software development.

Even worse. Note that a ruling a _either_ direction have
enormous implications for the future of open source
software so keep that in mind. 

"United we stand, divided we fall."

Another small note if you are less hostile to the GPL you
could say that the GPL is not a virus it is a contract.
However all copyright is a contract between the author
and society question what contract takes predence is
still revelant and unresolved.

However if you see the problem with Wine project use
of GPL:ed for a contract perspective you could in
addition argue that you never have accepted the
contract since you didn't have to since you didn't
redistribute or modify the library and claim Wine
and derived work of the library is rediculous.

> > Anyway, unless or until Alexandre changes his mind, I think that
> > you should submit all general code that needn't use a specific
> > library and distribute that rest as a patch. Preferable so
> > that Winelib could dynamically load it so it could be
> > distributed seperately in binary form as well.
> 
> Hmm, I never thought about libgcrypt, but if we can somehow 
> use it legally 
> then it could be a possible back-end as opposed to or 
> inconjunction with 
> OpenSSL.  Naturally, I would prefer not to re-invent the 
> wheel by having to 
> re-write every needed algorithm used in the M$ API, if we can 
> find a library 
> that is legal in all circumstances :-!

Use of all normal commersial libraries are "legal" as shown above,
at least if you only distribute your Winelib application.
Only the GPL and similar viral license can be a problem.
 
> But has anyone considered the following:
> -Writing code that interfaces with either OpenSSL or 
> libgcrypt depending on 
> what the USER (or any winelib developer) requires AND has 
> installed on their 
> system.  Providing this is legal.  From what I understand 
> this *should* be 
> legal long as we're not DISTRIBUTING whatever is illegal to do so.

Most probably yes. The only issue as I can see it is how far the
GPL extends.

> -Use OpenSSL by default if it is more compatible with our own license.
> -Disabling the cryptoAPI to winelib developers by default to 
> make them aware 
> of these issue and allow them to choose the interface that 
> matches their 
> requirements.
> -Provide adequate documentation that discusses these points 
> and touches the 
> legalities of this software.
> 
> One thing we should probably do no matter what is contact the 
> developers for 
> both OpenSSL and libgcrpyt and make them aware of out situation. (and 
> possibly see which one or both is willing to bend on their 
> license(s)).

That is probably a good idea.

> Oh and one other possibility may be to find a way to modify 
> our own license 
> such that it fits this problem.

Since only GPL libraries AFAICS can be a problem and our license
it already GPL compatible that not possible (or needed).

> However, I'm not sure how 
> willing Alexandre 
> or any of us are about doing this (...again?, I think it's 
> has been done 
> before).

Well I don't know. Ask him. However he is currently away
so that will have to wait I guess.

Anyway what you suggested above is fine by me.




More information about the wine-devel mailing list