All of lore.kernel.org
 help / color / mirror / Atom feed
* [dm-crypt] License Clarification
@ 2016-11-10 19:41 Nathaniel McCallum
  2016-11-14 20:22 ` Milan Broz
  0 siblings, 1 reply; 3+ messages in thread
From: Nathaniel McCallum @ 2016-11-10 19:41 UTC (permalink / raw)
  To: dm-crypt; +Cc: Sorce, Simo

In reviewing the license choices of a set of my projects, I have
noticed an inconsistency in licensing and I would like to receive some
clarification.

There is a commit that changes some of the code to LGPLv2.1+:
https://gitlab.com/cryptsetup/cryptsetup/commit/7eccb7ff5031a4f42f1ae8f7ffaefe80ba0d53dd

However, the main header still reads GPLv2+:
https://gitlab.com/cryptsetup/cryptsetup/blob/master/lib/libcryptsetup.h

Further, the API examples have LGPLv2.1+:
https://gitlab.com/cryptsetup/cryptsetup/wikis/API/index.html

Again, the openssl crypto backend are licensed as LGPLv2.1+ w/ openssl
exception. However, this exception doesn't seem to apply to the whole
library:
https://gitlab.com/cryptsetup/cryptsetup/blob/master/lib/crypto_backend/crypto_openssl.c

In short, it is very unclear to me how this licensing is supposed to work.

The best I can ascertain is this:

crypto-backend (LGPLv2+) ==> libcryptsetup (GPLv2+) ==> API examples (LGPLv2+)

It would, thus, seem to me that the API examples are incompatibly
licensed and cannot actually link against libcryptsetup.

Further, it seems to me that the crypto-backend can link against
openssl, but not libcryptsetup itself. This further implies that
consumers of libcryptsetup cannot link against openssl.

Have I understood this correctly?

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-11-14 21:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-10 19:41 [dm-crypt] License Clarification Nathaniel McCallum
2016-11-14 20:22 ` Milan Broz
2016-11-14 21:47   ` Nathaniel McCallum

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.