diff mbox

[v2] Remove ambiguities in the COPYING file; add CONTRIBUTING file

Message ID 1470994648-2019-1-git-send-email-lars.kurth@citrix.com (mailing list archive)
State New, archived
Headers show

Commit Message

Lars Kurth Aug. 12, 2016, 9:37 a.m. UTC
COPYING file:
The motivation of this change is to make it easier for new
contributors to conduct a license and patent review, WITHOUT
changing any licenses.
- Remove references to BSD-style licenses as we have more
  common license exceptions and replace with "other license
  stanzas"
- List the most common situations under which code is licensed
  under licenses other than GPLv2 (section "Licensing Exceptions")
- List the most common non-GPLv2 licenses that are in use in
  this repository based on a recent FOSSology scan (section
  "Licensing Exceptions")
- List other license related conventions within the project
  to make it easier to conduct a license review.
- Clarify the incoming license as its omission has confused
  past contributors (section "Contributions")

CONTRIBUTION file:
The motivation of this file is to make it easier for contributors
to find contribution related resources. Add information on existing
license related conventions to avoid unintentional future licensing
issues. Provide templates for copyright headers for the most commonly
used licenses in this repository.

Signed-off-by: Lars Kurth <lars.kurth@citrix.com>

---
Changed since v1:
  * Fixed typos
  * Used GPL / LGPL license header spelling out version instead of v
  
---
 CONTRIBUTING | 210 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 COPYING      |  64 ++++++++++++++----
 2 files changed, 260 insertions(+), 14 deletions(-)
 create mode 100644 CONTRIBUTING

Comments

Stefano Stabellini Aug. 12, 2016, 10:08 p.m. UTC | #1
On Fri, 12 Aug 2016, Lars Kurth wrote:
> COPYING file:
> The motivation of this change is to make it easier for new
> contributors to conduct a license and patent review, WITHOUT
> changing any licenses.
> - Remove references to BSD-style licenses as we have more
>   common license exceptions and replace with "other license
>   stanzas"
> - List the most common situations under which code is licensed
>   under licenses other than GPLv2 (section "Licensing Exceptions")
> - List the most common non-GPLv2 licenses that are in use in
>   this repository based on a recent FOSSology scan (section
>   "Licensing Exceptions")
> - List other license related conventions within the project
>   to make it easier to conduct a license review.
> - Clarify the incoming license as its omission has confused
>   past contributors (section "Contributions")
> 
> CONTRIBUTION file:
> The motivation of this file is to make it easier for contributors
> to find contribution related resources. Add information on existing
> license related conventions to avoid unintentional future licensing
> issues. Provide templates for copyright headers for the most commonly
> used licenses in this repository.
> 
> Signed-off-by: Lars Kurth <lars.kurth@citrix.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> Changed since v1:
>   * Fixed typos
>   * Used GPL / LGPL license header spelling out version instead of v
>   
> ---
>  CONTRIBUTING | 210 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  COPYING      |  64 ++++++++++++++----
>  2 files changed, 260 insertions(+), 14 deletions(-)
>  create mode 100644 CONTRIBUTING
> 
> diff --git a/CONTRIBUTING b/CONTRIBUTING
> new file mode 100644
> index 0000000..67ecdb7
> --- /dev/null
> +++ b/CONTRIBUTING
> @@ -0,0 +1,210 @@
> +
> +CONTRIBUTING
> +============
> +
> +INBOUND LICENSE
> +---------------
> +
> +Contributions are governed by the license that applies to relevant 
> +specific file or by the license specified in the COPYING file, that
> +governs the license of its containing directory and its subdirectories.
> +
> +Most of the Xen Project code is licensed under GPLv2, but a number of 
> +directories are primarily licensed under different licenses. 
> +
> +Most notably:
> + - tools/blktap2      : BSD-Modified
> + - tools/libxc        : LGPL v2.1
> + - tools/libxl        : LGPL v2.1
> + - xen/include/public : MIT license
> +
> +When creating new components and directories that contain a 
> +significant amount of files that are licensed under licenses other 
> +than GPLv2 or the license specified in the COPYING file, please 
> +create a new COPYING file in that directory containing a copy of the 
> +license text and a rationale for using a different license. This helps 
> +ensure that the license of this new component/directory is maintained 
> +consistently with the original intention.
> +
> +When importing code from other upstream projects into this repository, 
> +please create a README.source file in the directory the code is imported 
> +to, listing the original source of the code. An example can be found at 
> +m4/README.source
> +
> +The COMMON COPYRIGHT NOTICES section of this document contains 
> +sample copyright notices for the most common licenses used within 
> +this repository.
> +
> +Developer's Certificate of Origin
> +---------------------------------
> +
> +All patches to the Xen Project code base must include the line 
> +"Signed-off-by: your_name <your_email>" at the end of the change 
> +description. This is required and indicates that you certify the patch 
> +under the "Developer's Certificate of Origin" which states:
> +
> +  Developer's Certificate of Origin 1.1
> +
> +  By making a contribution to this project, I certify that:
> +
> +  (a) The contribution was created in whole or in part by me and I
> +      have the right to submit it under the open source license
> +      indicated in the file; or
> +
> +  (b) The contribution is based upon previous work that, to the best
> +      of my knowledge, is covered under an appropriate open source
> +      license and I have the right under that license to submit that
> +      work with modifications, whether created in whole or in part
> +      by me, under the same open source license (unless I am
> +      permitted to submit under a different license), as indicated
> +      in the file; or
> +
> +  (c) The contribution was provided directly to me by some other
> +      person who certified (a), (b) or (c) and I have not modified
> +      it.
> +
> +  (d) I understand and agree that this project and the contribution
> +      are public and that a record of the contribution (including all
> +      personal information I submit with it, including my sign-off) is
> +      maintained indefinitely and may be redistributed consistent with
> +      this project or the open source license(s) involved.
> +
> +GOVERNANCE AND WORKFLOW
> +-----------------------
> +
> +The following documents provide a general overview of governance and
> +contribution guidelines for the Xen Project:
> + - https://xenproject.org/governance.html  
> + - https://xenproject.org/help/contribution-guidelines.html 
> +
> +For more information on contributing to this repository, see
> + - CODING_STYLE file in this directory
> + - https://wiki.xenproject.org/wiki/Submitting_Xen_Project_Patches
> + - https://wiki.xenproject.org/wiki/Submitting_Xen_Patches_with_Git
> + - https://wiki.xenproject.org/wiki/Asking_Developer_Questions
> + - https://wiki.xenproject.org/wiki/Category:Developers
> +
> +
> +COMMON COPYRIGHT NOTICES
> +========================
> +
> +The following section contains sample copyright notice for the most 
> +common licenses used within the Xen Project that is consistent with the
> +projects coding standards.
> +
> +GPL v2 License
> +--------------
> +
> +/*
> + * <File name>
> + *
> + * <One line description of the file and what it does>
> + * 
> + * Copyright (C) <year>  <name of author and/or company>
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms and conditions of the GNU General Public 
> + * License, version 2, as published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + * General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public
> + * License along with this program; If not, see <http://www.gnu.org/licenses/>.
> + */
> +
> +
> +LGPL v2.1 License
> +-----------------
> +
> +/*
> + * <File name>
> + *
> + * <One line description of the file and what it does>
> + * 
> + * Copyright (C) <year>  <name of author and/or company>
> + *
> + * This library is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU Lesser General Public
> + * License, version 2.1, as published by the Free Software Foundation.
> + *
> + * This library is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + * Lesser General Public License for more details.
> + *
> + * You should have received a copy of the GNU Lesser General Public
> + * License along with this library; If not, see <http://www.gnu.org/licenses/>.
> + */
> +
> +BSD-Modified License (also known as BSD-3-Clause)
> +-------------------------------------------------
> +
> +/*
> + * <File name>
> + *
> + * <One line description of the file and what it does>
> + * 
> + * Copyright (C) <year>  <name of author and/or company>
> + * All rights reserved.
> + *
> + * Redistribution and use in source and binary forms, with or without
> + * modification, are permitted provided that the following conditions
> + * are met:
> + *
> + *   1. Redistributions of source code must retain the above copyright
> + *      notice, this list of conditions and the following disclaimer.
> + *   2. Redistributions in binary form must reproduce the above
> + *      copyright notice, this list of conditions and the following
> + *      disclaimer in the documentation and/or other materials provided
> + *      with the distribution.
> + *   3. Neither the name of the copyright holder nor the names of its
> + *      contributors may be used to endorse or promote products derived
> + *      from this software without specific prior written permission.
> + *
> + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
> + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
> + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
> + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
> + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
> + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
> + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
> + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
> + * OF THE POSSIBILITY OF SUCH DAMAGE.
> + */
> +
> +
> +MIT License
> +-----------
> +
> +/*
> + * <File name>
> + *
> + * <One line description of the file and what it does>
> + * 
> + * Copyright (C) <year>  <name of author and/or company>
> + *
> + * Permission is hereby granted, free of charge, to any person 
> + * obtaining a copy of this software and associated documentation 
> + * files (the "Software"), to deal in the Software without restriction, 
> + * including without limitation the rights to use, copy, modify, merge,
> + * publish, distribute, sublicense, and/or sell copies of the Software,
> + * and to permit persons to whom the Software is furnished to do so, 
> + * subject to the following conditions:
> + *
> + * The above copyright notice and this permission notice shall be 
> + * included in all copies or substantial portions of the Software.
> + * 
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
> + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
> + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 
> + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
> + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
> + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> + */
> \ No newline at end of file
> diff --git a/COPYING b/COPYING
> index acd3016..bf697f3 100644
> --- a/COPYING
> +++ b/COPYING
> @@ -10,30 +10,66 @@ version of the license (i.e., *only* v2, not v2.2 or v3.x or
>  whatever), unless explicitly otherwise stated.
>  
>  Some code fragments in the hypervisor and associated subsystems
> -include the 2- or 3-clause BSD license stanzas (also known as Modified
> -BSD licenses). When these code sections are compiled as part of a
> +include other license stanzas: the most common ones are listed in 
> +the *License Exceptions* section of this file. 
> +
> +When these code sections are compiled as part of a
>  GPLv2-licensed program, such as Xen, the result is licensed under
>  GPLv2. See the FSF's definition of GPL compatibility:
>   http://www.gnu.org/licenses/gpl-faq.html#WhatDoesCompatMean
>  And how this applies to a range of open source licenses:
>   http://www.gnu.org/licenses/license-list.html
>  
> -Licensing Exceptions (the relaxed BSD-style license)
> -----------------------------------------------------
> +A number of files will also specify GPL exceptions, such as
> + - Autoconf exception
> + - Bison exception
> + - GCC exception
> +
> +In addition the xen directory also contains a XEN NOTICE clarifying 
> +what constitutes a derived work, which applies to the xen directory
> +and its subdirectories (see xen/COPYING).
> +
> +Licensing Exceptions
> +--------------------
>  
>  For the convenience of users and those who are porting OSes to run as
>  Xen guests, certain files in this repository are not subject to the
>  GPL when distributed separately or included in software packages
> -outside this repository. Instead we specify a much more relaxed
> -BSD-style license. Affected files include the Xen interface headers
> -(xen/include/public/COPYING), MiniOS (extras/mini-os) and various
> -drivers, support functions and header files within Xen-aware Linux
> -source trees.  In all such cases, license terms are stated at the top
> -of the file or in a COPYING file in the same directory. Note that
> -_any_ file that is modified and then distributed within a Linux kernel
> -is still subject to the GNU GPL.
> -
> - -- Keir Fraser (on behalf of the Xen team)
> +outside this repository. 
> +
> +Instead we specify more relaxed licenses, depending on need, such as
> +  - BSD style license (BSD Original, BSD Modified, Intel BSD)
> +  - MIT license
> +  - LGPL 2.1
> +
> +Affected files include the Xen interface headers (xen/include/public), 
> +various drivers, support functions and header files within Xen-aware 
> +Linux source trees. In all such cases, license terms are stated at the 
> +top of the file or in a COPYING file in the same directory. 
> +
> +In some cases, compatible 3rd party code has been imported into the
> +Xen tree, retaining the original license, such as
> +  - AES-128 3.0
> +  - FSF Unlimited License
> +  - Laurikari License
> +  - Public Domain
> +  - ZLIB License 
> +  - ZPL 2.0
> +
> +Significant code imports are highlighted in a README.source file
> +in the directory into which the file or code snippet was imported. 
> +
> +Note that *any* file that is modified and then distributed within a 
> +Linux kernel is still subject to the GNU GPL.
> +
> +Contributions
> +-------------
> +
> +Contributions are governed by the license that applies to the relevant 
> +specific file or by the license specified in the COPYING file, that
> +governs the license of its containing directory and its subdirectories.
> +
> +For more information, see the CONTRIBUTING file.
>  
>  =====================================================================
>  
> -- 
> 2.5.4 (Apple Git-61)
>
Andrew Cooper Aug. 15, 2016, 10:24 a.m. UTC | #2
On 12/08/16 10:37, Lars Kurth wrote:
> COPYING file:
> The motivation of this change is to make it easier for new
> contributors to conduct a license and patent review, WITHOUT
> changing any licenses.
> - Remove references to BSD-style licenses as we have more
>   common license exceptions and replace with "other license
>   stanzas"
> - List the most common situations under which code is licensed
>   under licenses other than GPLv2 (section "Licensing Exceptions")
> - List the most common non-GPLv2 licenses that are in use in
>   this repository based on a recent FOSSology scan (section
>   "Licensing Exceptions")
> - List other license related conventions within the project
>   to make it easier to conduct a license review.
> - Clarify the incoming license as its omission has confused
>   past contributors (section "Contributions")
>
> CONTRIBUTION file:
> The motivation of this file is to make it easier for contributors
> to find contribution related resources. Add information on existing
> license related conventions to avoid unintentional future licensing
> issues. Provide templates for copyright headers for the most commonly
> used licenses in this repository.
>
> Signed-off-by: Lars Kurth <lars.kurth@citrix.com>

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>, with one style
correction.

> diff --git a/CONTRIBUTING b/CONTRIBUTING
> new file mode 100644
> index 0000000..67ecdb7
> --- /dev/null
> +++ b/CONTRIBUTING
> @@ -0,0 +1,210 @@
> <snip>
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
> + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
> + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 
> + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
> + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
> + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> + */
> \ No newline at end of file

Newline at the end.

~Andrew
George Dunlap Aug. 16, 2016, 8:19 a.m. UTC | #3
On Mon, Aug 15, 2016 at 11:24 AM, Andrew Cooper
<andrew.cooper3@citrix.com> wrote:
> On 12/08/16 10:37, Lars Kurth wrote:
>> COPYING file:
>> The motivation of this change is to make it easier for new
>> contributors to conduct a license and patent review, WITHOUT
>> changing any licenses.
>> - Remove references to BSD-style licenses as we have more
>>   common license exceptions and replace with "other license
>>   stanzas"
>> - List the most common situations under which code is licensed
>>   under licenses other than GPLv2 (section "Licensing Exceptions")
>> - List the most common non-GPLv2 licenses that are in use in
>>   this repository based on a recent FOSSology scan (section
>>   "Licensing Exceptions")
>> - List other license related conventions within the project
>>   to make it easier to conduct a license review.
>> - Clarify the incoming license as its omission has confused
>>   past contributors (section "Contributions")
>>
>> CONTRIBUTION file:
>> The motivation of this file is to make it easier for contributors
>> to find contribution related resources. Add information on existing
>> license related conventions to avoid unintentional future licensing
>> issues. Provide templates for copyright headers for the most commonly
>> used licenses in this repository.
>>
>> Signed-off-by: Lars Kurth <lars.kurth@citrix.com>
>
> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>, with one style
> correction.
>
>> diff --git a/CONTRIBUTING b/CONTRIBUTING
>> new file mode 100644
>> index 0000000..67ecdb7
>> --- /dev/null
>> +++ b/CONTRIBUTING
>> @@ -0,0 +1,210 @@
>> <snip>
>> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
>> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
>> + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
>> + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
>> + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
>> + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
>> + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
>> + */
>> \ No newline at end of file
>
> Newline at the end.

That can presumably be fixed up on check-in -- no need to resend.

 -George
Lars Kurth Sept. 8, 2016, 2:36 p.m. UTC | #4
> On 16 Aug 2016, at 09:19, George Dunlap <dunlapg@umich.edu> wrote:
> 
> On Mon, Aug 15, 2016 at 11:24 AM, Andrew Cooper
> <andrew.cooper3@citrix.com> wrote:
>> On 12/08/16 10:37, Lars Kurth wrote:
>>> COPYING file:
>>> The motivation of this change is to make it easier for new
>>> contributors to conduct a license and patent review, WITHOUT
>>> changing any licenses.
>>> - Remove references to BSD-style licenses as we have more
>>>  common license exceptions and replace with "other license
>>>  stanzas"
>>> - List the most common situations under which code is licensed
>>>  under licenses other than GPLv2 (section "Licensing Exceptions")
>>> - List the most common non-GPLv2 licenses that are in use in
>>>  this repository based on a recent FOSSology scan (section
>>>  "Licensing Exceptions")
>>> - List other license related conventions within the project
>>>  to make it easier to conduct a license review.
>>> - Clarify the incoming license as its omission has confused
>>>  past contributors (section "Contributions")
>>> 
>>> CONTRIBUTION file:
>>> The motivation of this file is to make it easier for contributors
>>> to find contribution related resources. Add information on existing
>>> license related conventions to avoid unintentional future licensing
>>> issues. Provide templates for copyright headers for the most commonly
>>> used licenses in this repository.
>>> 
>>> Signed-off-by: Lars Kurth <lars.kurth@citrix.com>
>> 
>> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>, with one style
>> correction.
>> 
>>> diff --git a/CONTRIBUTING b/CONTRIBUTING
>>> new file mode 100644
>>> index 0000000..67ecdb7
>>> --- /dev/null
>>> +++ b/CONTRIBUTING
>>> @@ -0,0 +1,210 @@
>>> <snip>
>>> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
>>> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
>>> + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
>>> + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
>>> + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
>>> + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
>>> + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
>>> + */
>>> \ No newline at end of file
>> 
>> Newline at the end.
> 
> That can presumably be fixed up on check-in -- no need to resend.
> 
> -George

Thank you. 

Otherwise: Ping? Who else needs to ACK to check this in
Lars
Andrew Cooper Sept. 8, 2016, 2:42 p.m. UTC | #5
On 08/09/16 15:36, Lars Kurth wrote:
>> On 16 Aug 2016, at 09:19, George Dunlap <dunlapg@umich.edu> wrote:
>>
>> On Mon, Aug 15, 2016 at 11:24 AM, Andrew Cooper
>> <andrew.cooper3@citrix.com> wrote:
>>> On 12/08/16 10:37, Lars Kurth wrote:
>>>> COPYING file:
>>>> The motivation of this change is to make it easier for new
>>>> contributors to conduct a license and patent review, WITHOUT
>>>> changing any licenses.
>>>> - Remove references to BSD-style licenses as we have more
>>>>  common license exceptions and replace with "other license
>>>>  stanzas"
>>>> - List the most common situations under which code is licensed
>>>>  under licenses other than GPLv2 (section "Licensing Exceptions")
>>>> - List the most common non-GPLv2 licenses that are in use in
>>>>  this repository based on a recent FOSSology scan (section
>>>>  "Licensing Exceptions")
>>>> - List other license related conventions within the project
>>>>  to make it easier to conduct a license review.
>>>> - Clarify the incoming license as its omission has confused
>>>>  past contributors (section "Contributions")
>>>>
>>>> CONTRIBUTION file:
>>>> The motivation of this file is to make it easier for contributors
>>>> to find contribution related resources. Add information on existing
>>>> license related conventions to avoid unintentional future licensing
>>>> issues. Provide templates for copyright headers for the most commonly
>>>> used licenses in this repository.
>>>>
>>>> Signed-off-by: Lars Kurth <lars.kurth@citrix.com>
>>> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>, with one style
>>> correction.
>>>
>>>> diff --git a/CONTRIBUTING b/CONTRIBUTING
>>>> new file mode 100644
>>>> index 0000000..67ecdb7
>>>> --- /dev/null
>>>> +++ b/CONTRIBUTING
>>>> @@ -0,0 +1,210 @@
>>>> <snip>
>>>> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
>>>> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
>>>> + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
>>>> + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
>>>> + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
>>>> + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
>>>> + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
>>>> + */
>>>> \ No newline at end of file
>>> Newline at the end.
>> That can presumably be fixed up on check-in -- no need to resend.
>>
>> -George
> Thank you. 
>
> Otherwise: Ping? Who else needs to ACK to check this in
> Lars

Given the lack of any objections, I declare that agreement via lazy
consensus.  I reckon it is fine to go in with its current review/ack set.

~Andrew
Wei Liu Sept. 9, 2016, 7:35 a.m. UTC | #6
On Thu, Sep 08, 2016 at 03:42:58PM +0100, Andrew Cooper wrote:
> On 08/09/16 15:36, Lars Kurth wrote:
> >> On 16 Aug 2016, at 09:19, George Dunlap <dunlapg@umich.edu> wrote:
> >>
> >> On Mon, Aug 15, 2016 at 11:24 AM, Andrew Cooper
> >> <andrew.cooper3@citrix.com> wrote:
> >>> On 12/08/16 10:37, Lars Kurth wrote:
> >>>> COPYING file:
> >>>> The motivation of this change is to make it easier for new
> >>>> contributors to conduct a license and patent review, WITHOUT
> >>>> changing any licenses.
> >>>> - Remove references to BSD-style licenses as we have more
> >>>>  common license exceptions and replace with "other license
> >>>>  stanzas"
> >>>> - List the most common situations under which code is licensed
> >>>>  under licenses other than GPLv2 (section "Licensing Exceptions")
> >>>> - List the most common non-GPLv2 licenses that are in use in
> >>>>  this repository based on a recent FOSSology scan (section
> >>>>  "Licensing Exceptions")
> >>>> - List other license related conventions within the project
> >>>>  to make it easier to conduct a license review.
> >>>> - Clarify the incoming license as its omission has confused
> >>>>  past contributors (section "Contributions")
> >>>>
> >>>> CONTRIBUTION file:
> >>>> The motivation of this file is to make it easier for contributors
> >>>> to find contribution related resources. Add information on existing
> >>>> license related conventions to avoid unintentional future licensing
> >>>> issues. Provide templates for copyright headers for the most commonly
> >>>> used licenses in this repository.
> >>>>
> >>>> Signed-off-by: Lars Kurth <lars.kurth@citrix.com>
> >>> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>, with one style
> >>> correction.
> >>>
> >>>> diff --git a/CONTRIBUTING b/CONTRIBUTING
> >>>> new file mode 100644
> >>>> index 0000000..67ecdb7
> >>>> --- /dev/null
> >>>> +++ b/CONTRIBUTING
> >>>> @@ -0,0 +1,210 @@
> >>>> <snip>
> >>>> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> >>>> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
> >>>> + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
> >>>> + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
> >>>> + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
> >>>> + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
> >>>> + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> >>>> + */
> >>>> \ No newline at end of file
> >>> Newline at the end.
> >> That can presumably be fixed up on check-in -- no need to resend.
> >>
> >> -George
> > Thank you. 
> >
> > Otherwise: Ping? Who else needs to ACK to check this in
> > Lars
> 
> Given the lack of any objections, I declare that agreement via lazy
> consensus.  I reckon it is fine to go in with its current review/ack set.
> 

Acked + pushed.

Removed all trailing whitespaces and added a new line to the end of
CONTRIBUTING file while committing.

Wei.

> ~Andrew
Lars Kurth Sept. 9, 2016, 9:46 a.m. UTC | #7
On 09/09/2016 08:35, "Wei Liu" <wei.liu2@citrix.com> wrote:

>> > Otherwise: Ping? Who else needs to ACK to check this in

>> > Lars

>> 

>> Given the lack of any objections, I declare that agreement via lazy

>> consensus.  I reckon it is fine to go in with its current review/ack

>>set.

>> 

>

>Acked + pushed.

>

>Removed all trailing whitespaces and added a new line to the end of

>CONTRIBUTING file while committing.

>

>Wei.


Thank you
Lars
diff mbox

Patch

diff --git a/CONTRIBUTING b/CONTRIBUTING
new file mode 100644
index 0000000..67ecdb7
--- /dev/null
+++ b/CONTRIBUTING
@@ -0,0 +1,210 @@ 
+
+CONTRIBUTING
+============
+
+INBOUND LICENSE
+---------------
+
+Contributions are governed by the license that applies to relevant 
+specific file or by the license specified in the COPYING file, that
+governs the license of its containing directory and its subdirectories.
+
+Most of the Xen Project code is licensed under GPLv2, but a number of 
+directories are primarily licensed under different licenses. 
+
+Most notably:
+ - tools/blktap2      : BSD-Modified
+ - tools/libxc        : LGPL v2.1
+ - tools/libxl        : LGPL v2.1
+ - xen/include/public : MIT license
+
+When creating new components and directories that contain a 
+significant amount of files that are licensed under licenses other 
+than GPLv2 or the license specified in the COPYING file, please 
+create a new COPYING file in that directory containing a copy of the 
+license text and a rationale for using a different license. This helps 
+ensure that the license of this new component/directory is maintained 
+consistently with the original intention.
+
+When importing code from other upstream projects into this repository, 
+please create a README.source file in the directory the code is imported 
+to, listing the original source of the code. An example can be found at 
+m4/README.source
+
+The COMMON COPYRIGHT NOTICES section of this document contains 
+sample copyright notices for the most common licenses used within 
+this repository.
+
+Developer's Certificate of Origin
+---------------------------------
+
+All patches to the Xen Project code base must include the line 
+"Signed-off-by: your_name <your_email>" at the end of the change 
+description. This is required and indicates that you certify the patch 
+under the "Developer's Certificate of Origin" which states:
+
+  Developer's Certificate of Origin 1.1
+
+  By making a contribution to this project, I certify that:
+
+  (a) The contribution was created in whole or in part by me and I
+      have the right to submit it under the open source license
+      indicated in the file; or
+
+  (b) The contribution is based upon previous work that, to the best
+      of my knowledge, is covered under an appropriate open source
+      license and I have the right under that license to submit that
+      work with modifications, whether created in whole or in part
+      by me, under the same open source license (unless I am
+      permitted to submit under a different license), as indicated
+      in the file; or
+
+  (c) The contribution was provided directly to me by some other
+      person who certified (a), (b) or (c) and I have not modified
+      it.
+
+  (d) I understand and agree that this project and the contribution
+      are public and that a record of the contribution (including all
+      personal information I submit with it, including my sign-off) is
+      maintained indefinitely and may be redistributed consistent with
+      this project or the open source license(s) involved.
+
+GOVERNANCE AND WORKFLOW
+-----------------------
+
+The following documents provide a general overview of governance and
+contribution guidelines for the Xen Project:
+ - https://xenproject.org/governance.html  
+ - https://xenproject.org/help/contribution-guidelines.html 
+
+For more information on contributing to this repository, see
+ - CODING_STYLE file in this directory
+ - https://wiki.xenproject.org/wiki/Submitting_Xen_Project_Patches
+ - https://wiki.xenproject.org/wiki/Submitting_Xen_Patches_with_Git
+ - https://wiki.xenproject.org/wiki/Asking_Developer_Questions
+ - https://wiki.xenproject.org/wiki/Category:Developers
+
+
+COMMON COPYRIGHT NOTICES
+========================
+
+The following section contains sample copyright notice for the most 
+common licenses used within the Xen Project that is consistent with the
+projects coding standards.
+
+GPL v2 License
+--------------
+
+/*
+ * <File name>
+ *
+ * <One line description of the file and what it does>
+ * 
+ * Copyright (C) <year>  <name of author and/or company>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms and conditions of the GNU General Public 
+ * License, version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program; If not, see <http://www.gnu.org/licenses/>.
+ */
+
+
+LGPL v2.1 License
+-----------------
+
+/*
+ * <File name>
+ *
+ * <One line description of the file and what it does>
+ * 
+ * Copyright (C) <year>  <name of author and/or company>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License, version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; If not, see <http://www.gnu.org/licenses/>.
+ */
+
+BSD-Modified License (also known as BSD-3-Clause)
+-------------------------------------------------
+
+/*
+ * <File name>
+ *
+ * <One line description of the file and what it does>
+ * 
+ * Copyright (C) <year>  <name of author and/or company>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *   1. Redistributions of source code must retain the above copyright
+ *      notice, this list of conditions and the following disclaimer.
+ *   2. Redistributions in binary form must reproduce the above
+ *      copyright notice, this list of conditions and the following
+ *      disclaimer in the documentation and/or other materials provided
+ *      with the distribution.
+ *   3. Neither the name of the copyright holder nor the names of its
+ *      contributors may be used to endorse or promote products derived
+ *      from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+
+MIT License
+-----------
+
+/*
+ * <File name>
+ *
+ * <One line description of the file and what it does>
+ * 
+ * Copyright (C) <year>  <name of author and/or company>
+ *
+ * Permission is hereby granted, free of charge, to any person 
+ * obtaining a copy of this software and associated documentation 
+ * files (the "Software"), to deal in the Software without restriction, 
+ * including without limitation the rights to use, copy, modify, merge,
+ * publish, distribute, sublicense, and/or sell copies of the Software,
+ * and to permit persons to whom the Software is furnished to do so, 
+ * subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be 
+ * included in all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
+ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
\ No newline at end of file
diff --git a/COPYING b/COPYING
index acd3016..bf697f3 100644
--- a/COPYING
+++ b/COPYING
@@ -10,30 +10,66 @@  version of the license (i.e., *only* v2, not v2.2 or v3.x or
 whatever), unless explicitly otherwise stated.
 
 Some code fragments in the hypervisor and associated subsystems
-include the 2- or 3-clause BSD license stanzas (also known as Modified
-BSD licenses). When these code sections are compiled as part of a
+include other license stanzas: the most common ones are listed in 
+the *License Exceptions* section of this file. 
+
+When these code sections are compiled as part of a
 GPLv2-licensed program, such as Xen, the result is licensed under
 GPLv2. See the FSF's definition of GPL compatibility:
  http://www.gnu.org/licenses/gpl-faq.html#WhatDoesCompatMean
 And how this applies to a range of open source licenses:
  http://www.gnu.org/licenses/license-list.html
 
-Licensing Exceptions (the relaxed BSD-style license)
-----------------------------------------------------
+A number of files will also specify GPL exceptions, such as
+ - Autoconf exception
+ - Bison exception
+ - GCC exception
+
+In addition the xen directory also contains a XEN NOTICE clarifying 
+what constitutes a derived work, which applies to the xen directory
+and its subdirectories (see xen/COPYING).
+
+Licensing Exceptions
+--------------------
 
 For the convenience of users and those who are porting OSes to run as
 Xen guests, certain files in this repository are not subject to the
 GPL when distributed separately or included in software packages
-outside this repository. Instead we specify a much more relaxed
-BSD-style license. Affected files include the Xen interface headers
-(xen/include/public/COPYING), MiniOS (extras/mini-os) and various
-drivers, support functions and header files within Xen-aware Linux
-source trees.  In all such cases, license terms are stated at the top
-of the file or in a COPYING file in the same directory. Note that
-_any_ file that is modified and then distributed within a Linux kernel
-is still subject to the GNU GPL.
-
- -- Keir Fraser (on behalf of the Xen team)
+outside this repository. 
+
+Instead we specify more relaxed licenses, depending on need, such as
+  - BSD style license (BSD Original, BSD Modified, Intel BSD)
+  - MIT license
+  - LGPL 2.1
+
+Affected files include the Xen interface headers (xen/include/public), 
+various drivers, support functions and header files within Xen-aware 
+Linux source trees. In all such cases, license terms are stated at the 
+top of the file or in a COPYING file in the same directory. 
+
+In some cases, compatible 3rd party code has been imported into the
+Xen tree, retaining the original license, such as
+  - AES-128 3.0
+  - FSF Unlimited License
+  - Laurikari License
+  - Public Domain
+  - ZLIB License 
+  - ZPL 2.0
+
+Significant code imports are highlighted in a README.source file
+in the directory into which the file or code snippet was imported. 
+
+Note that *any* file that is modified and then distributed within a 
+Linux kernel is still subject to the GNU GPL.
+
+Contributions
+-------------
+
+Contributions are governed by the license that applies to the relevant 
+specific file or by the license specified in the COPYING file, that
+governs the license of its containing directory and its subdirectories.
+
+For more information, see the CONTRIBUTING file.
 
 =====================================================================