Licence question...

Jun 7, 2012 at 1:47 AM

What exactly does this means?

If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.

what does complies means here?

Jun 7, 2012 at 5:47 AM

For the record, you are talking about the Microsoft Public License (Ms-PL) under which Enterprise Library is licensed.  

Typically complies is defined as "conforms" or in "accordance with".  With that said, I am not a Lawyer and I have no knowledge of the laws in your (or any other!) jurisdiction.  

See: for a similar question.

The license appears to be quite permissive; perhaps if you could outline a specific scenario it might help?

Randy Levy
Enterprise Library support engineer 

Jun 7, 2012 at 4:20 PM

We would like to use EntLib, however our legal told us there is an issue with the license because it might suggest that our code might to be open source. We are planning to ship compiled code, and we would like to use EntLib, what would we need to do to be able to do this without violating the license agreement, and how can we can get a written letter for our legal department so they feel comfortable with the license considering the language used can be interpreted differently.

Jun 7, 2012 at 4:56 PM

I'm not a lawyer, but that's not how it reads to me.  What you describe sounds more like the Microsoft Reciprocal License.

The Ms-PL has 2 grants: a copyright grant to reproduce the contribution and a patent grant to allow royalty-free use of any patents.

The conditions and limitations are:

(A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.

So you can't use names, logos and trademarks associated with the product.

(B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your patent license from such contributor to the software ends automatically.

If you bring a patent claim the patent license (Grant 2.B.) ends.

(C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution notices that are present in the software.

If you are distributing binaries this doesn't really apply.

(D) If you distribute any portion of the software in source code form, you may do so only under this license by including a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.

You are planning to ship binaries so you don't need to include the license with your product.  Binaries need to comply with the license.  The license limitations are 3A (use of trademarks), 3B (loss of patent license if a patent claim is brought), and 3C (doesn't seem to apply for binaries -- maybe if the AssemblyCopyright property is set it might apply as 3C (but AssemblyCopyright is not set)).

(E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees, or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a particular purpose and non-infringement.

Typical as-is clause.


Probably an internet posting from me is not what your legal team needs; so what do you need from us?

Randy Levy
Enterprise Library support engineer

Jun 11, 2012 at 7:22 PM

I Am Not A Lawyer.

The intent of the MS-PL has always been: use this code or binaries for whatever you want. Don't claim anything you changed came from Microsoft. Don't sue Microsoft. This was the intent behind using this license for Entlib - make the code & binaries as freely usable as possible.

The "complies with" language is actually to prevent usage with the GPL - GPL code requires that you relicense the other code you're using as GPL as well. That's the part that's not compatible.