Re: [Qemu-devel] Add support for new image type

Il 17/05/2012 11:10, Artyom Tarasenko ha scritto:
> 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 code
>> (or rather what file) can I see this distinction? It seems like something
>> critical to be aware of, and I'd like to avoid missing something like this
>> in the future as I give advice on what software we can use.
Roughly speaking, each file has its own license. So you can take for
example vl.c or tcg/* and use it in a proprietary program, because those
are under a non-copyleft license. You 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.
For QEMU this license is the GPLv2.
>> 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 testing
>> the filesystem integrity inside a backup image by using guestmount to mount
>> 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. Patches 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. As long as you share the changes within your company for example
you are safe. Here is what the GPL FAQ says:
Is making and using multiple copies within one organization or
company “distribution”? (#InternalDistribution)
No, in that case the organization is just making the copies for
itself. As a consequence, a company or other organization can
develop a modified version and install that version through its own
facilities, without giving the staff permission to release that
modified version to outsiders.
However, when the organization transfers copies to other
organizations or individuals, that is distribution. In particular,
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. Those
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. Legally, you should consult a lawyer. Practically:
- 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