Skip to content
This repository has been archived by the owner on Jan 27, 2024. It is now read-only.

Use of OpenSSL is GPL-incompatible #1

Closed
EionRobb opened this issue Oct 3, 2014 · 5 comments
Closed

Use of OpenSSL is GPL-incompatible #1

EionRobb opened this issue Oct 3, 2014 · 5 comments

Comments

@EionRobb
Copy link
Contributor

EionRobb commented Oct 3, 2014

This plugin uses OpenSSL of which there is no GPL-exception for in the libpurple GPL license. Consider switching to using the SSL functions built into libpurple or use an alternatively library such as PolarSSL

@majn
Copy link
Owner

majn commented Oct 4, 2014

Getting rid of OpenSSL shouldn't be easy since its used heavily. If there isn't some kind of drop-in replacement with the same functions I probably would have to refactor the whole crypto code for that.

@EionRobb
Copy link
Contributor Author

Any movement on this? I see that there are people distributing compiled versions of this plugin which is in violation of the GPL and removing the OpenSSL portions of this plugin will help them legally distribute the plugin.

@majn
Copy link
Owner

majn commented Nov 12, 2014

Hi, unfortunately no. I've checked PolarSSL and GnuTLS and they both don't seem to support the IGE mode of operation that Telegram needs.
In the development version, I'm only linking against current version of libtgl, which in turn requires OpenSSL, but I fear that the advertising clause of the 4-claus BSD will still apply to my project and still make it GPL-incompatible.

To solve this someone would need to do the following changes to libtgl:

  • Implement Infinite Garble Extension using the AES implementation of GnuTLS or PolarSSL
  • Replace all occurrences of OpenSSL functions that are used to implement the MTProto protocol

@Croydon
Copy link

Croydon commented Aug 29, 2015

As mentioned here: #52 (comment)
the OpenSSL license is going to change to Apache v2

@majn
Copy link
Owner

majn commented Nov 13, 2015

Now that libtgl is ported thanks to ben and the whole thing is tested and merged into the master, I think we can finally get rid of this annoying issue :)

@majn majn closed this as completed Nov 13, 2015
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants