1
2CONTRIBUTING
3============
4
5INBOUND LICENSE
6---------------
7
8Contributions are governed by the license that applies to relevant
9specific file or by the license specified in the COPYING file, that
10governs the license of its containing directory and its subdirectories.
11
12Most of the Xen Project code is licensed under GPLv2, but a number of
13directories are primarily licensed under different licenses.
14
15Most notably:
16 - tools/libs         : LGPL v2.1
17 - tools/libxc        : LGPL v2.1
18 - tools/libxl        : LGPL v2.1
19 - tools/xl           : LGPL v2.1
20 - xen/include/public : MIT license
21
22The COMMON COPYRIGHT NOTICES section of this document contains
23sample copyright notices for the most common licenses used within
24this repository.
25
26When creating new components, new files, or importing code please follow
27the conventions outlined below. As a general rule, whenever code using a
28license other than GPLv2 is introduced, attention must be drawn to the
29difference, such that maintainers can make an informed decision about the
30deviation. Any new code must be GPLv2 compatible.
31
32New components
33--------------
34
35When creating new components and directories that contain a
36significant amount of files that are licensed under licenses other
37than GPLv2 or the license specified in the COPYING file, please
38create a new COPYING file in that directory containing a copy of the
39license text and a rationale for using a different license. This helps
40ensure that the license of this new component/directory is maintained
41consistently with the original intention.
42
43New files
44---------
45
46If specific files that differ from the license in a directory are introduced,
47exceptions should be highlighted and discussed in the commit message or cover
48letter introducing the file.
49
50Importing code
51--------------
52
53When importing code from other upstream projects into this repository,
54please create a README.source file in the directory the code is imported
55to, listing the original source of the code. An example can be found at
56m4/README.source
57
58Developer's Certificate of Origin
59---------------------------------
60
61All patches to the Xen Project code base must include the line
62"Signed-off-by: your_name <your_email>" at the end of the change
63description. This is required and indicates that you certify the patch
64under the "Developer's Certificate of Origin" which states:
65
66  Developer's Certificate of Origin 1.1
67
68  By making a contribution to this project, I certify that:
69
70  (a) The contribution was created in whole or in part by me and I
71      have the right to submit it under the open source license
72      indicated in the file; or
73
74  (b) The contribution is based upon previous work that, to the best
75      of my knowledge, is covered under an appropriate open source
76      license and I have the right under that license to submit that
77      work with modifications, whether created in whole or in part
78      by me, under the same open source license (unless I am
79      permitted to submit under a different license), as indicated
80      in the file; or
81
82  (c) The contribution was provided directly to me by some other
83      person who certified (a), (b) or (c) and I have not modified
84      it.
85
86  (d) I understand and agree that this project and the contribution
87      are public and that a record of the contribution (including all
88      personal information I submit with it, including my sign-off) is
89      maintained indefinitely and may be redistributed consistent with
90      this project or the open source license(s) involved.
91
92GOVERNANCE AND WORKFLOW
93-----------------------
94
95The following documents provide a general overview of governance and
96contribution guidelines for the Xen Project:
97 - https://xenproject.org/governance.html
98 - https://xenproject.org/help/contribution-guidelines.html
99
100For more information on contributing to this repository, see
101 - CODING_STYLE file in this directory
102 - https://wiki.xenproject.org/wiki/Submitting_Xen_Project_Patches
103 - https://wiki.xenproject.org/wiki/Submitting_Xen_Patches_with_Git
104 - https://wiki.xenproject.org/wiki/Asking_Developer_Questions
105 - https://wiki.xenproject.org/wiki/Category:Developers
106
107
108COMMON COPYRIGHT NOTICES
109========================
110
111The following section contains sample copyright notice for the most
112common licenses used within the Xen Project that is consistent with the
113projects coding standards.
114
115GPL v2 License
116--------------
117
118/*
119 * <File name>
120 *
121 * <One line description of the file and what it does>
122 *
123 * Copyright (C) <year>  <name of author and/or company>
124 *
125 * This program is free software; you can redistribute it and/or
126 * modify it under the terms and conditions of the GNU General Public
127 * License, version 2, as published by the Free Software Foundation.
128 *
129 * This program is distributed in the hope that it will be useful,
130 * but WITHOUT ANY WARRANTY; without even the implied warranty of
131 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
132 * General Public License for more details.
133 *
134 * You should have received a copy of the GNU General Public
135 * License along with this program; If not, see <http://www.gnu.org/licenses/>.
136 */
137
138
139LGPL v2.1 License
140-----------------
141
142/*
143 * <File name>
144 *
145 * <One line description of the file and what it does>
146 *
147 * Copyright (C) <year>  <name of author and/or company>
148 *
149 * This library is free software; you can redistribute it and/or
150 * modify it under the terms of the GNU Lesser General Public
151 * License, version 2.1, as published by the Free Software Foundation.
152 *
153 * This library is distributed in the hope that it will be useful,
154 * but WITHOUT ANY WARRANTY; without even the implied warranty of
155 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
156 * Lesser General Public License for more details.
157 *
158 * You should have received a copy of the GNU Lesser General Public
159 * License along with this library; If not, see <http://www.gnu.org/licenses/>.
160 */
161
162BSD-Modified License (also known as BSD-3-Clause)
163-------------------------------------------------
164
165/*
166 * <File name>
167 *
168 * <One line description of the file and what it does>
169 *
170 * Copyright (C) <year>  <name of author and/or company>
171 * All rights reserved.
172 *
173 * Redistribution and use in source and binary forms, with or without
174 * modification, are permitted provided that the following conditions
175 * are met:
176 *
177 *   1. Redistributions of source code must retain the above copyright
178 *      notice, this list of conditions and the following disclaimer.
179 *   2. Redistributions in binary form must reproduce the above
180 *      copyright notice, this list of conditions and the following
181 *      disclaimer in the documentation and/or other materials provided
182 *      with the distribution.
183 *   3. Neither the name of the copyright holder nor the names of its
184 *      contributors may be used to endorse or promote products derived
185 *      from this software without specific prior written permission.
186 *
187 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
188 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
189 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
190 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
191 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
192 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
193 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
194 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
195 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
196 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
197 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
198 * OF THE POSSIBILITY OF SUCH DAMAGE.
199 */
200
201
202MIT License
203-----------
204
205/*
206 * <File name>
207 *
208 * <One line description of the file and what it does>
209 *
210 * Copyright (C) <year>  <name of author and/or company>
211 *
212 * Permission is hereby granted, free of charge, to any person
213 * obtaining a copy of this software and associated documentation
214 * files (the "Software"), to deal in the Software without restriction,
215 * including without limitation the rights to use, copy, modify, merge,
216 * publish, distribute, sublicense, and/or sell copies of the Software,
217 * and to permit persons to whom the Software is furnished to do so,
218 * subject to the following conditions:
219 *
220 * The above copyright notice and this permission notice shall be
221 * included in all copies or substantial portions of the Software.
222 *
223 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
224 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
225 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
226 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
227 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
228 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
229 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
230 */
231
232