Ethereal-dev: Re: [ethereal-dev] Ethereal and H.323 dissector possible license solution
On Tue, Sep 19, 2000 at 08:42:34PM -0400, Bill Fumerola wrote:
> On Tue, Sep 19, 2000 at 06:47:17PM +0200, Florian Lohoff wrote:
>
> > Me and a lot of others disagree with that. The virulogic clause
> > of the GPL causes people to be sure that THEIR work will be free
> > FOREVER.
>
> I believe the word you're looking for is "encumbered" not "free".
>
> If it was "free" I could put it in my product and do whatever I'd
> like with it.
While I agree that the GPL does encumber software (but in a good
way), I don't agree with that last statement. I think there is a
distinction between "the software being free" (in the "libre" sense,
of course) and "do whatever I'd like with it".
When I write software and choose the GPL, I do so because I am
trying to attribute some quality of freedom to the software itself.
That is, I want this piece of work that I created to have freedom,
freedom from the bonds of binary-only distribution, to remain available
to the public in source-code form, to be modifiable by anyone.
(Maybe there are other licenses that do something similar; the MPL
*seems* to do the same; am I reading it wrong?)
If one only wants the freedom to put my software into his product and do
whatever with it, then they care only for their *own* freedom to
use and modify the software, not the freedom of the software. (Remember,
I'm trying to attribute "freedom" to the software itself.) The modifer
of my program might add some new feature, but decide to distribute
it only as binary. Sure, the programmer had the freedom to use my
work as a stepping stone, but the freedom of the software has been
squashed and exterminated. I have become a supplier of stepping
stones, not a maintainer of a community-developed code base.
I could choose another license, but would do so only if I cared
about making my code the most pervasive and ubiquitous, but didn't
care about keeping a body of source code freely available.
> If the ethereal developers really feel that the heavy restrictions
> of the GPL is worth the comfort that you get by knowing someone
> can't just make a binary program called Athereal, then they're going
> to have to realize that they are going to get hit hard when someone
> else submits something in a non-GPVirus licensed.
Why must the hit be hard? If the protocol that needs to be supported
is publically available (in an RFC), then someone who wants to write
support for that protocol and believes in the same principles
as we do can write support for it. Yes, the GPL causes duplication
of effort, but it protects from the pirating of effort.
>
> I think it's more likely that you'll attract corporate developers
> who don't want to deal with a million clause license just so Ethereal
> can display their protocol. They'll have their own license and since
But at what cost? Of having OpenEthereal have some features and
full source code, while Brand X Ethereal has more features but no
source code availability? Then binary Brand Y Ethereal comes along
that has more features than OpenEthereal, but different features
than Brand X. Oh, and the plugin API is different, so modules for
Brand X don't work with Brand Y.
Yes, forking can occur with GPLed software too, but since source
code is available, someone will be able to make sense of the whole
forked mess. With multiple binary-only versions of vendor-extended
Ethereals floating around, the fork is made worse because source code
is not available.
I would rather maintain a GPLed Ethereal and allow dynamically-loaded
plugins. We keep control of the plugin API, and the developers
who can't use the GPL adhere to our plugin standard. In the case of
H.323, we have learned that our plugin API needs more work to support
this distribution model.
> the GPV is so protective of being the only license in town, they'll
> just not submit. Think it won't happen? It already has in multiple
> projects.
So what? My goal is not to have the most complete protocol analyzer
at the cost of allowing people to pirate my work, use it in their
own binary-only product, and mention me in their copyright notice.
My goal is to produce the most complete protocol analyzer whose
source code will be usable by everyone; if someone wishes to extend
it with some new feature, fine. But since our work was a stepping
stone for him, he needs to give back and contribute to the *free*
body of source code.
Do you know of another way to do this? Or should I not care about
making sure that those who use my work for their programming benefit
contribute back by making their extensions to my work freely
available? I'm not trying to be sarcastic; I truly do want to know
if you think that that's not a desirable goal or if there's another
way to accomplish this.
Where do we go from here? I'm still not convinced about the MPL/GPL
incompatibility, even though the GNU website says they're incompatible
w/o giving a specific example of license conflicts. I want to do
some more research on that. Are there further examples on the Web? What
about the fact that Mozilla will be releasing under both MPL and GPL?
In parallel to the GPL/MPL research, we could work on making the
Ethereal plugin API better. Andreas -- do you still have the work
you did in trying to get H.323 to work as a plugin? Besides the
problem with multiple dissectors in a single loadable module (which
someone said "should work"), where there other problems? If the
plugin API needs work, we will fix it. I know you also had cross-platform
code problems, so those would have to be addressed as well. (or we
just compile H.323 on the platforms which work with the C++ code).
--gilbert