[Libwebsockets] If is it possible to change the licence from LGPL to BSD or MIT?

"Andy Green (林安廸)" andy at warmcat.com
Thu Feb 7 02:40:23 CET 2013

On 07/02/13 02:19, the mail apparently from FNA included:
> A little while back, i saw a project that stated it was dual licensed
> under LGPL and BSD/MIT. Not quite sure how that works, but it might be
> something to consider.

I actively don't want to see libwebsockets with additional ports, 
features or fixes shipping to customers where no source for the changes 
is provided.  So BSD or MIT is not the right answer for this project.

However I don't really see much loss enabling static builds with the 
rules otherwise LGPL 2.1.

Looking around this is referenced as a template


Copying rider sections 3 & 4 (+/- talk of "widgets") of that and then 
LGPL 2.1 in LICENSE look like they would solve the iOS thing reasonably.

Section 3 is saying we don't consider that static linking gives us any 
right about the code outside the library.  However any changes to the 
library must be provided under LGPL rules.

Section 4 of the rider there is saying you must mention that 
libwebsockets was used somewhere to advise the user he can have the 
sources / rights under the license, but you don't have to do that in the 

So it's still LGPL2.1 the same but an additional right to static link 
and clarification we don't want to liberate your other code unrelated to 

I invited everyone who contributed to lws in the last year to the 
mailing list earlier in January so I guess everyone who cares is here... 
any objections to this plan?


> On Wed, Feb 6, 2013 at 9:44 AM, "Andy Green (林安廸)" <andy at warmcat.com
> <mailto:andy at warmcat.com>> wrote:
>     On 06/02/13 21:56, the mail apparently from Peter Young(杨世玲)
>     included:
>         Hello Andy,
>                   sorry for didn't explain the issue clearly.
>                   In iOS, only statically linked is allowed.
>                   so, if someone want use libwebsockets in iOS game,
>         means the game will be LGPL too, and the source should be
>         public. obviously, in most case this is not an option.
>                   In  this case, can you re-consider this issue?
>                   libwebsockets is a great lib, thanks for your great
>         effort.
>     Well, that's a different issue than needing to change the license to
>     "BSD or MIT".
>     Actually this has come up before, someone else had a similar issue a
>     couple of years ago and I found there's a "static linking exception"
>     possible as a bolt-on for LGPL.  I wrote them that they could
>     consider it under that exception IIRC.  I don't think we will lose
>     much by generally adding the exception, unless there are objections.
>     That leaves intact the LGPL requirement to give sources /
>     modifications for the library part of the binary you're
>     distributing, which I think is very important to keep the project
>     healthy.
>     But it directly solves the static link issue.
>     I'll research the options for wording and such tomorrow and look at
>     adding an explicit LICENSE file to make whatever we do clear,
>     constructive comments welcome.
>     -Andy
>         ------------------ Original ------------------
>         From:  ""Andy Green (林安廸)""<andy at warmcat.com
>         <mailto:andy at warmcat.com>>;
>         Date:  Wed, Feb 6, 2013 04:51 PM
>         To:  "Gregory Junker"<ggjunker at gmail.com
>         <mailto:ggjunker at gmail.com>>;
>         Cc:  "Peter Young(杨世玲)"<young40 at qq.com
>         <mailto:young40 at qq.com>>;
>         "libwebsockets"<libwebsockets at __ml.libwebsockets.org
>         <mailto:libwebsockets at ml.libwebsockets.org>>;
>         Subject:  Re: [Libwebsockets] If is it possible to change the
>         licence from LGPL to BSD or MIT?
>         Hi -
>         Is that a problem with lgpl though or a problem with closed
>         commercial game distribution?
>         MIT is certainly liberal but the result that people use the
>         library without cooperation or giving back is non-liberal. From
>         my pov lgpl is rational because in exchange for giving people
>         the work, contribution back is encouraged that I also can
>         benefit from. Merely hearing that xyz is using this work,
>         charging for it, has added features they are not sharing, is not
>         a satisfying result from my pov considering it is largely my
>         work. I think that should be a reasonable pov.
>         If people can find a way to do shared object linking there's no
>         problem, that sounds pretty fair to me. I am certainly not
>         interested in trying to force liberaliztion of their stuff
>         unrelated to lws. Of course if there is a situation that's
>         unfair we can chew it over. But that's my basic position, giving
>         back is a legitimate demand in exchange for free access to the work.
>         -Andy
>         Gregory Junker <ggjunker at gmail.com <mailto:ggjunker at gmail.com>>
>         wrote:
>         The problem with LGPL usually comes up with commercial game
>         distribution, often on consoles but more often now on handheld
>         devices. It might be possible to distribute a game with shared
>         objects, but usually games prefer to be statically-linked to
>         limit hacking opportunities. Ogre3D, as an example, used to be
>         LGPL until users expressed interest in using it in console games
>         and other statically-linked applications, and the project
>         founder changed it a couple of releases ago to MIT.
>         On Tue, Feb 5, 2013 at 11:30 PM, "Andy Green (林安廸)"
>         <andy at warmcat.com <mailto:andy at warmcat.com>> wrote:
>         On 06/02/13 01:30, the mail apparently from Peter Young(杨世玲)
>         included:
>         Hello Andy,
>                   I'm working on integrate libwebsockets to cocos2d-x.
>                   Cocos2d-x is a cross-platform game engine, can write
>         game for ios, android, blackberry, etc.   The are many popular
>         games based on cocos2d-x. official site: http://cocos2d-x.org
>                   cocos2d-x is under MIT license. so, there will be a
>         license issue if a game using libwebsockets and the  developer
>         wants to keep there codes close source.
>                   If is it possible to change the licence from LGPL to
>         BSD or MIT?
>         I think LGPL is pretty liberal, and the git history shows a good
>         level of contribution coming back.
>         Originally and without much thought, libwebsockets was actually
>         GPL2, simply because I do Linux kernel work and that was my default.
>         However it was pointed out that's not really a fair choice for
>         libraries, and it's true I don't want to force people to license
>         the rest of their stuff liberally if they don't want to.  So I
>         changed it a long while back to LGPL.
>         Can you explain what the license problem is with cocos2d-x?
>           Presumably if it's dynamically linked, there should be no
>         problem including LGPL sources in a project that is otherwise
>         MIT.  If it's statically linked, that can be a problem.
>         If you consider a distro like Fedora or whatever, it's made up
>         of all kinds of licensed sources you can freely download the
>         same although redistribution rules differ part by part.  In
>         itself, so long as it's clearly stated, it doesn't make trouble
>         AFAIK.
>         -Andy
>         _________________________________________________
>         Libwebsockets mailing list
>         Libwebsockets at ml.__libwebsockets.org
>         <mailto:Libwebsockets at ml.libwebsockets.org>
>         http://ml.libwebsockets.org/__mailman/listinfo/libwebsockets
>         <http://ml.libwebsockets.org/mailman/listinfo/libwebsockets>
>     _________________________________________________
>     Libwebsockets mailing list
>     Libwebsockets at ml.__libwebsockets.org
>     <mailto:Libwebsockets at ml.libwebsockets.org>
>     http://ml.libwebsockets.org/__mailman/listinfo/libwebsockets
>     <http://ml.libwebsockets.org/mailman/listinfo/libwebsockets>
> --
> --A programmer started to cuss
> --Because getting to sleep was a fuss
> --As he lay there in bed
> --Looping 'round in his head
> --was: while( !asleep() ) sheep++;
> --Nothing is impossible! It is merely a matter of figuring out How?

More information about the Libwebsockets mailing list