From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:40083) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SUyVD-0001Hk-92 for qemu-devel@nongnu.org; Thu, 17 May 2012 07:04:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SUyV7-0007cA-Fy for qemu-devel@nongnu.org; Thu, 17 May 2012 07:04:14 -0400 Received: from mail-qc0-f173.google.com ([209.85.216.173]:63882) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SUyV7-0007bf-8g for qemu-devel@nongnu.org; Thu, 17 May 2012 07:04:09 -0400 Received: by qcsc20 with SMTP id c20so1293876qcs.4 for ; Thu, 17 May 2012 04:04:07 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <4FB4C7D8.4010609@redhat.com> References: <4F4E9E31.50903@storagecraft.com> <4F4F8FCD.7010106@redhat.com> <4F4FD1C9.8050006@storagecraft.com> <4F4FD7C7.7030001@mail.berlios.de> <4F4FD9A6.9060308@mail.berlios.de> <4F4FE4AA.20902@codemonkey.ws> <4F4FE6C6.1070302@storagecraft.com> <4F506E92.9080902@redhat.com> <4FB3DE79.9090504@storagecraft.com> <4FB3E86B.7020206@redhat.com> <4FB3FE16.3000608@storagecraft.com> <4FB4C7D8.4010609@redhat.com> From: Artyom Tarasenko Date: Thu, 17 May 2012 13:03:47 +0200 Message-ID: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] Add support for new image type List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Stefan Weil , Kai Meyer , qemu-devel@nongnu.org, Anthony Liguori , Nate Bushman On Thu, May 17, 2012 at 11:41 AM, Paolo Bonzini wrote= : > To help me better understand, what would >>> be the terminology used for the explanation between what I would call >>> "source code" licensing, and "project" licensing? Also, where in the co= de >>> (or rather what file) can I see this distinction? It seems like somethi= ng >>> critical to be aware of, and I'd like to avoid missing something like t= his >>> in the future as I give advice on what software we can use. > > Roughly speaking, each file has its own license. =A0So you can take for > example vl.c or tcg/* and use it in a proprietary program, because those > are under a non-copyleft license. =A0You cannot do the same for > event_notifier.c, because it is released under GPLv2 or later. > > For the project to be distributable at all, there has to be a license > that is compatible with all the others: such a license has to allow all > restrictions imposed by the other licenses used in the project, and all > other licenses have to allow all restrictions imposed by such a license. > =A0For QEMU this license is the GPLv2. Strictly speaking it must be GPLv2 with exceptions/restrictions. The code can not be moved freely between GPL and BSD licensed files. Why the GPL->BSD move is illegal is obvious. The BSD->GPL move is not allowed because of the : " * The above copyright notice and this permission notice shall be included= in * all copies or substantial portions of the Software." clause of the BSD license. So the result of GPL and BSD intersection must be GPL with some files licensed under BSD. >>> If you would help clarify a separate point, I would be grateful. As I >>> understand it, I am able to modify qemu for my own purposes (like testi= ng >>> the filesystem integrity inside a backup image by using guestmount to m= ount >>> it). How much of that work (source code, principles, explanations, ect)= can >>> I share, and with whom can I share it with? > > Principles, explanations can be shared with whoever you want, however > you want. =A0Patches are more of a grey area and I suggest you consult a > (good) lawyer. > > Remember that the GPL only becomes relevant once you start distributing > code. =A0As long as you share the changes within your company for example > you are safe. =A0Here is what the GPL FAQ says: > > =A0 Is making and using multiple copies within one organization or > =A0 company =93distribution=94? (#InternalDistribution) > > =A0 No, in that case the organization is just making the copies for > =A0 itself. As a consequence, a company or other organization can > =A0 develop a modified version and install that version through its own > =A0 facilities, without giving the staff permission to release that > =A0 modified version to outsiders. > > =A0 However, when the organization transfers copies to other > =A0 organizations or individuals, that is distribution. In particular, > =A0 providing copies to contractors for use off-site is distribution. > > What you suggested with run-time linking sounds like you are adding a > functionality that is totally useless to the general public. =A0Those > people who are able to combine it with the shared library could use it > as in the above answer without distributing the result. > > Morally it's wrong, but a copyright holder cannot stop you on moral > grounds. =A0Legally, you should consult a lawyer. =A0Practically: > > - if you go with iSCSI or something like that you would provide the same > functionality to your customers, keep clear from legal grey areas, and > the QEMU community probably could not care less. > > - if you go with a clean reimplementation under the GPL you would > provide the same functionality to your customers, keep clear from legal > grey areas, contribute to QEMU positively, and perhaps get some > advertising for your product. > > Paolo --=20 Regards, Artyom Tarasenko solaris/sparc under qemu blog: http://tyom.blogspot.com/search/label/qemu