views:

500

answers:

2

Is the combined use of NHibernate (LGPL) and MySQL Connector/Net (GPL) inside a commercial (non-GPL) product legal if the commercial product only directly talks to NHibernate and NHibernate is talking to the MySQL Connector/Net? (And if so what part of the license(s) is telling me that it is?)

Here is what I think to know so far (correct me if I'm wrong):

  • NHibernate is licensed under LGPL what means that I'm free to use it (link to its assembly) inside a commercial product as long is I do not modify NHibernate itself.
  • NHibernate is able to optionaly use the MySQL Connector/Net in order to communicate with a MySQL database. (NHibernate can still be LGPL because of the FOSS License Exception)
  • Since I will only link to the NHibernate core itself from my commercial product I will indirectly be able to communicate to a MySQL database with the help of the MySQL Connector/Net that if it were used directly would force my commercial product to be licensed under the GPL.

I wouldn't even depend on shipping MySQL Connector/Net along with my commercial product but only download & install it (like I do it with the MySQL server itself) if required at the customers site. (I hope/think that NHibernate is allowing that)

A: 

I think you are on shaky ground.

The MySQL Connector is designed to run linked in a shared address space with the program using it, in this case, NHibernate, which is also linked in the same address space as your program.

The FOSS License exception requires that the Independent Work (your own code) of your Derivative Work meets the conditions laid out in the exception, which includes that it must be licensed under the terms of one of the listed licenses, which it is not.

Having your customer download the connector doesn't alter the fact that you are distributing a Derivative Work (a program that links to the MySQL Connector) that does not meet the terms of the FOSS Exception license ; by asking them to do this you are making them assume the risk arising from your potential license infringement.

Adrian
+2  A: 

For both Connector and Connector/J, the download page of MySQL site informs that the driver is released in a GPL license, and for other licenses it links to a "sales representative". By contacting MySQL directly, I found out that the connectors are released under a double license, and to get access to the second license, non GLP, compatible with commercial distribution, you have to become MySQL partner. But that is very easy:

just enroll on the MySQL site (it is free), you should receive a confirmation shortly, and then you will be eligible for the other license, and free to redistribute the connector.

Pietro Polsinelli