[Asterisk-Dev] chan_sccp move from lambda-solutions.deto SF.NET

brian brian at bkw.org
Thu Apr 22 09:28:38 MST 2004


You must also point out this one exception:

"Linux Support Services, Inc. reserves the right to allow other parties to
license this paragraph under other terms as well."

Which is how e can have codec_g729b.so :)

bkw

> -----Original Message-----
> From: asterisk-dev-admin at lists.digium.com [mailto:asterisk-dev-
> admin at lists.digium.com] On Behalf Of Steven Sokol
> Sent: Thursday, April 22, 2004 10:38 AM
> To: asterisk-dev at lists.digium.com
> Subject: RE: [Asterisk-Dev] chan_sccp move from lambda-solutions.deto
> SF.NET
>
> == CORRECTION ==
> (Pardon the top posting)
>
> I spoke with Mark regarding the scenario described below.  I am in error
> regarding one point I made.  I stated that you MIGHT be able to build a
> non-GPL module for Asterisk if you created all of the code yourself and
> did
> not link to any of the Asterisk code base.  However:
>
> Each module that is loaded into Asterisk is required to include a function
> that returns a sort of pass-phrase key that MUST declare the code as GPL.
> The function is:
>
> char *key()
> {
> 	return ASTERISK_GPL_KEY;
> }
>
> The key phrase is:
>
> #define ASTERISK_GPL_KEY \
> "This paragraph is Copyright (C) 2000, Linux Support Services, Inc.  \
> In order for your module to load, it must return this key via a function \
> called \"key\".  Any code which includes this paragraph must be licensed
> under \ the GNU General Public License version 2 or later (at your
> option).
> Linux \ Support Services, Inc. reserves the right to allow other parties
> to
> license \ this paragraph under other terms as well."
>
> So there is the definitive answer.  ALL modules loaded by Asterisk must be
> GPL.  This means that any channels, resource modules or applications that
> are distributed must be distributed with source and following all of the
> other rules of the GPL.
>
> - Steven
>
> > > Hmmm....
> > > you mean i could legally sell a non-GPL * module which could then
> > > legally be used by someone else (without requiring a non-GPL *
> license)?
> > > I dont think the GPL would allow this.
> > > --
> >
> > I don't claim to be a GPL expert, but from what I have read (and I have
> > read
> > several legal opinion letters) the GPL extends only to code "that in
> whole
> > or in part contains or is derived from the Program or any part thereof,
> to
> > be licensed as a whole at no charge to all third parties under the terms
> > of
> > this [GPL] License."
> >
> > Chan_sccp (from looking at the header files) really has to be released
> > under
> > the GPL.  It derives from a GPL'd work (Asterisk) by including a bunch
> of
> > the Asterisk code:
> >
> > #include <asterisk/frame.h>
> > #include <asterisk/module.h>
> > #include <asterisk/channel.h>
> > #include <asterisk/lock.h>
> > #include <asterisk/logger.h>
> > #include <asterisk/sched.h>
> > #include <asterisk/io.h>
> > #include <asterisk/rtp.h>
> > #include <asterisk/config.h>
> > #include <asterisk/options.h>
> > #include <asterisk/channel_pvt.h>
> > (from chan_sccp.h)
> >
> > This is not universal.  Channels and applications _can_ be created that
> > don't link to Asterisk.  It just requires a lot of extra work.
> >
> > Example: HP can create printer drivers that adhere to the CUPS driver
> > standard that are loaded by CUPS (GPL) on a Linux (GPL) system without
> > being
> > required to release the source for their driver, or to license the use
> of
> > that driver under GPL.
> >
> > If chan_sccp was created starting with any of the Asterisk (GPL) code
> then
> > it MUST be GPL, or it can't be released (but it can be used internally).
> > If
> > the author copied chan_zap.c to chan_sccp.c, then began making changes,
> > then
> > it is a derivative work and GPL requires all "derivative work" be
> released
> > as GPL.  If he linked to any of the Asterisk libraries (which he did -
> see
> > the above list of .h files) the GPL mandates that he release his product
> > as
> > GPL software.
> >
> > If the author analyzed the interface mechanism used by the channels in
> > Asterisk and then created chan_sccp.c from scratch, not copying the
> code,
> > then he can license it as he sees fit.  This, however, is pretty hard to
> > do.
> > He can't use ANY of the header files from Asterisk.  He can't link to
> ANY
> > of
> > the Asterisk code.  His module must stand completely alone.  This will
> > cause
> > him to write a lot of extra code just to avoid violating the GPL.
> >
> > The baseline explanation I got from a lawyer friend:  If you use any of
> a
> > GPL application's code in creating your code (including headers and
> linked
> > functions from dynamic libraries) you must be GPL.  However, if you
> create
> > a
> > module that talks to a GPL application, or is loaded and used by a GPL
> > application (like a channel) without modifying or including the source
> for
> > the GPL application, then you are free to license as NON GPL.
> >
> > Many libraries (including much of the inner guts of Linux) are released
> as
> > LGPL (lesser General Public License) so that people _can_ release non
> GPL
> > code that makes use of the GPL code.  This includes such goodies as
> glibc
> > (the core c library for gcc).  LGPL does not have the stipulation
> > regarding
> > derived works, so it is generally "safe" for non-GPL code to link to
> LGPL
> > code.
> >
> > IMHO: the authors of chan_sccp must either remove all GPL code from
> their
> > application, or release it under the GPL.  I would think that the latter
> > is
> > by far the easiest suggestion (especially since the code is already open
> > source and publicly available).
> >
> > Am I off base here?
> >
> > Thanks,
> >
> > -S
> >
> > Disclaimer: I'm not a lawyer and I'm not giving legal advice.
> >
> >
> > _______________________________________________
> > Asterisk-Dev mailing list
> > Asterisk-Dev at lists.digium.com
> > http://lists.digium.com/mailman/listinfo/asterisk-dev
> > To UNSUBSCRIBE or update options visit:
> >    http://lists.digium.com/mailman/listinfo/asterisk-dev
>
>
> _______________________________________________
> Asterisk-Dev mailing list
> Asterisk-Dev at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-dev
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-dev





More information about the asterisk-dev mailing list