Add unit test for buf_move_all(), including a failing case
[tor.git] / LICENSE
blobcc276684271fdfb4fff6f13726544a3501317ddb
1                     This file contains the license for Tor,
2         a free software project to provide anonymity on the Internet.
4         It also lists the licenses for other components used by Tor.
6        For more information about Tor, see https://www.torproject.org/.
8              If you got this file as a part of a larger bundle,
9         there may be other license terms that you should be aware of.
11 ===============================================================================
12 Tor is distributed under this license:
14 Copyright (c) 2001-2004, Roger Dingledine
15 Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson
16 Copyright (c) 2007-2019, The Tor Project, Inc.
18 Redistribution and use in source and binary forms, with or without
19 modification, are permitted provided that the following conditions are
20 met:
22     * Redistributions of source code must retain the above copyright
23 notice, this list of conditions and the following disclaimer.
25     * Redistributions in binary form must reproduce the above
26 copyright notice, this list of conditions and the following disclaimer
27 in the documentation and/or other materials provided with the
28 distribution.
30     * Neither the names of the copyright owners nor the names of its
31 contributors may be used to endorse or promote products derived from
32 this software without specific prior written permission.
34 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
35 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
36 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
37 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
38 OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
39 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
40 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
41 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
42 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
43 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
44 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
45 ===============================================================================
46 src/ext/strlcat.c and src/ext/strlcpy.c by Todd C. Miller are licensed
47 under the following license:
49  * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
50  * All rights reserved.
51  *
52  * Redistribution and use in source and binary forms, with or without
53  * modification, are permitted provided that the following conditions
54  * are met:
55  * 1. Redistributions of source code must retain the above copyright
56  *    notice, this list of conditions and the following disclaimer.
57  * 2. Redistributions in binary form must reproduce the above copyright
58  *    notice, this list of conditions and the following disclaimer in the
59  *    documentation and/or other materials provided with the distribution.
60  * 3. The name of the author may not be used to endorse or promote products
61  *    derived from this software without specific prior written permission.
62  *
63  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
64  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
65  * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL
66  * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
67  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
68  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
69  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
70  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
71  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
72  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
73 ===============================================================================
74 src/ext/tor_queue.h is licensed under the following license:
76  * Copyright (c) 1991, 1993
77  *      The Regents of the University of California.  All rights reserved.
78  *
79  * Redistribution and use in source and binary forms, with or without
80  * modification, are permitted provided that the following conditions
81  * are met:
82  * 1. Redistributions of source code must retain the above copyright
83  *    notice, this list of conditions and the following disclaimer.
84  * 2. Redistributions in binary form must reproduce the above copyright
85  *    notice, this list of conditions and the following disclaimer in the
86  *    documentation and/or other materials provided with the distribution.
87  * 3. Neither the name of the University nor the names of its contributors
88  *    may be used to endorse or promote products derived from this software
89  *    without specific prior written permission.
90  *
91  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
92  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
93  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
94  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
95  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
96  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
97  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
98  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
99  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
100  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
101  * SUCH DAMAGE.
103 ===============================================================================
104 src/ext/csiphash.c is licensed under the following license:
106  Copyright (c) 2013  Marek Majkowski <marek@popcount.org>
108  Permission is hereby granted, free of charge, to any person obtaining a copy
109  of this software and associated documentation files (the "Software"), to deal
110  in the Software without restriction, including without limitation the rights
111  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
112  copies of the Software, and to permit persons to whom the Software is
113  furnished to do so, subject to the following conditions:
115  The above copyright notice and this permission notice shall be included in
116  all copies or substantial portions of the Software.
118  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
119  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
120  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
121  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
122  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
123  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
124  THE SOFTWARE.
125 ===============================================================================
126 Trunnel is distributed under this license:
128 Copyright 2014  The Tor Project, Inc.
130 Redistribution and use in source and binary forms, with or without
131 modification, are permitted provided that the following conditions are
132 met:
134     * Redistributions of source code must retain the above copyright
135 notice, this list of conditions and the following disclaimer.
137     * Redistributions in binary form must reproduce the above
138 copyright notice, this list of conditions and the following disclaimer
139 in the documentation and/or other materials provided with the
140 distribution.
142     * Neither the names of the copyright owners nor the names of its
143 contributors may be used to endorse or promote products derived from
144 this software without specific prior written permission.
146 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
147 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
148 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
149 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
150 OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
151 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
152 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
153 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
154 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
155 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
156 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
158 ===============================================================================
159 getdelim.c is distributed under this license:
161  Copyright (c) 2011 The NetBSD Foundation, Inc.
162  All rights reserved.
164  This code is derived from software contributed to The NetBSD Foundation
165  by Christos Zoulas.
167  Redistribution and use in source and binary forms, with or without
168  modification, are permitted provided that the following conditions
169  are met:
170  1. Redistributions of source code must retain the above copyright
171     notice, this list of conditions and the following disclaimer.
172  2. Redistributions in binary form must reproduce the above copyright
173     notice, this list of conditions and the following disclaimer in the
174     documentation and/or other materials provided with the distribution.
176  THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
177  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
178  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
179  PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
180  BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
181  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
182  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
183  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
184  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
185  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
186  POSSIBILITY OF SUCH DAMAGE.
188 ===============================================================================
189 src/config/geoip is licensed under the following license:
191 OPEN DATA LICENSE (GeoLite Country and GeoLite City databases)
193 Copyright (c) 2008 MaxMind, Inc.  All Rights Reserved.
195 All advertising materials and documentation mentioning features or use of
196 this database must display the following acknowledgment:
197 "This product includes GeoLite data created by MaxMind, available from
198 http://maxmind.com/"
200 Redistribution and use with or without modification, are permitted provided
201 that the following conditions are met:
202 1. Redistributions must retain the above copyright notice, this list of
203 conditions and the following disclaimer in the documentation and/or other
204 materials provided with the distribution.
205 2. All advertising materials and documentation mentioning features or use of
206 this database must display the following acknowledgement:
207 "This product includes GeoLite data created by MaxMind, available from
208 http://maxmind.com/"
209 3. "MaxMind" may not be used to endorse or promote products derived from this
210 database without specific prior written permission.
212 THIS DATABASE IS PROVIDED BY MAXMIND, INC ``AS IS'' AND ANY
213 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
214 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
215 DISCLAIMED. IN NO EVENT SHALL MAXMIND BE LIABLE FOR ANY
216 DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
217 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
218 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
219 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
220 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
221 DATABASE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
222 ===============================================================================
223 m4/pc_from_ucontext.m4 is available under the following license.  Note that
224 it is *not* built into the Tor software.
226 Copyright (c) 2005, Google Inc.
227 All rights reserved.
229 Redistribution and use in source and binary forms, with or without
230 modification, are permitted provided that the following conditions are
231 met:
233     * Redistributions of source code must retain the above copyright
234 notice, this list of conditions and the following disclaimer.
235     * Redistributions in binary form must reproduce the above
236 copyright notice, this list of conditions and the following disclaimer
237 in the documentation and/or other materials provided with the
238 distribution.
239     * Neither the name of Google Inc. nor the names of its
240 contributors may be used to endorse or promote products derived from
241 this software without specific prior written permission.
243 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
244 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
245 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
246 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
247 OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
248 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
249 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
250 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
251 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
252 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
253 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
255 ===============================================================================
256 m4/pkg.m4 is available under the following license.  Note that
257 it is *not* built into the Tor software.
259 pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
260 serial 1 (pkg-config-0.24)
262 Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
264 This program is free software; you can redistribute it and/or modify
265 it under the terms of the GNU General Public License as published by
266 the Free Software Foundation; either version 2 of the License, or
267 (at your option) any later version.
269 This program is distributed in the hope that it will be useful, but
270 WITHOUT ANY WARRANTY; without even the implied warranty of
271 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
272 General Public License for more details.
274 You should have received a copy of the GNU General Public License
275 along with this program; if not, write to the Free Software
276 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
278 As a special exception to the GNU General Public License, if you
279 distribute this file as part of a program that contains a
280 configuration script generated by Autoconf, you may include it under
281 the same distribution terms that you use for the rest of that program.
282 ===============================================================================
283 src/ext/readpassphrase.[ch] are distributed under this license:
285   Copyright (c) 2000-2002, 2007 Todd C. Miller <Todd.Miller@courtesan.com>
287   Permission to use, copy, modify, and distribute this software for any
288   purpose with or without fee is hereby granted, provided that the above
289   copyright notice and this permission notice appear in all copies.
291   THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
292   WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
293   MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
294   ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
295   WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
296   ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
297   OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
299   Sponsored in part by the Defense Advanced Research Projects
300   Agency (DARPA) and Air Force Research Laboratory, Air Force
301   Materiel Command, USAF, under agreement number F39502-99-1-0512.
303 ===============================================================================
304 src/ext/mulodi4.c is distributed under this license:
306      =========================================================================
307      compiler_rt License
308      =========================================================================
310      The compiler_rt library is dual licensed under both the
311      University of Illinois "BSD-Like" license and the MIT license.
312      As a user of this code you may choose to use it under either
313      license.  As a contributor, you agree to allow your code to be
314      used under both.
316      Full text of the relevant licenses is included below.
318      =========================================================================
320      University of Illinois/NCSA
321      Open Source License
323      Copyright (c) 2009-2016 by the contributors listed in CREDITS.TXT
325      All rights reserved.
327      Developed by:
329          LLVM Team
331          University of Illinois at Urbana-Champaign
333          http://llvm.org
335      Permission is hereby granted, free of charge, to any person
336      obtaining a copy of this software and associated documentation
337      files (the "Software"), to deal with the Software without
338      restriction, including without limitation the rights to use,
339      copy, modify, merge, publish, distribute, sublicense, and/or sell
340      copies of the Software, and to permit persons to whom the
341      Software is furnished to do so, subject to the following
342      conditions:
344          * Redistributions of source code must retain the above
345            copyright notice, this list of conditions and the following
346            disclaimers.
348          * Redistributions in binary form must reproduce the above
349            copyright notice, this list of conditions and the following
350            disclaimers in the documentation and/or other materials
351            provided with the distribution.
353          * Neither the names of the LLVM Team, University of Illinois
354            at Urbana-Champaign, nor the names of its contributors may
355            be used to endorse or promote products derived from this
356            Software without specific prior written permission.
358      THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
359      EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
360      OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
361      NONINFRINGEMENT.  IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT
362      HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
363      WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
364      FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
365      OTHER DEALINGS WITH THE SOFTWARE.
367      =========================================================================
369      Copyright (c) 2009-2015 by the contributors listed in CREDITS.TXT
371      Permission is hereby granted, free of charge, to any person
372      obtaining a copy of this software and associated documentation
373      files (the "Software"), to deal in the Software without
374      restriction, including without limitation the rights to use,
375      copy, modify, merge, publish, distribute, sublicense, and/or sell
376      copies of the Software, and to permit persons to whom the
377      Software is furnished to do so, subject to the following
378      conditions:
380      The above copyright notice and this permission notice shall be
381      included in all copies or substantial portions of the Software.
383      THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
384      EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
385      OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
386      NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
387      HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
388      WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
389      FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
390      OTHER DEALINGS IN THE SOFTWARE.
392      =========================================================================
393      Copyrights and Licenses for Third Party Software Distributed with LLVM:
394      =========================================================================
396      The LLVM software contains code written by third parties.  Such
397      software will have its own individual LICENSE.TXT file in the
398      directory in which it appears.  This file will describe the
399      copyrights, license, and restrictions which apply to that code.
401      The disclaimer of warranty in the University of Illinois Open
402      Source License applies to all code in the LLVM Distribution, and
403      nothing in any of the other licenses gives permission to use the
404      names of the LLVM Team or the University of Illinois to endorse
405      or promote products derived from this Software.
407 ===============================================================================
408 If you got Tor as a static binary with OpenSSL included, then you should know:
409  "This product includes software developed by the OpenSSL Project
410  for use in the OpenSSL Toolkit (http://www.openssl.org/)"
411 ===============================================================================