xref: /aosp_15_r20/system/libcppbor/LICENSE (revision 0963554132e37a14524024fa04dc9e883c7a8221)
1*09635541SAndroid Build Coastguard Worker
2*09635541SAndroid Build Coastguard Worker                                 Apache License
3*09635541SAndroid Build Coastguard Worker                           Version 2.0, January 2004
4*09635541SAndroid Build Coastguard Worker                        http://www.apache.org/licenses/
5*09635541SAndroid Build Coastguard Worker
6*09635541SAndroid Build Coastguard Worker   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7*09635541SAndroid Build Coastguard Worker
8*09635541SAndroid Build Coastguard Worker   1. Definitions.
9*09635541SAndroid Build Coastguard Worker
10*09635541SAndroid Build Coastguard Worker      "License" shall mean the terms and conditions for use, reproduction,
11*09635541SAndroid Build Coastguard Worker      and distribution as defined by Sections 1 through 9 of this document.
12*09635541SAndroid Build Coastguard Worker
13*09635541SAndroid Build Coastguard Worker      "Licensor" shall mean the copyright owner or entity authorized by
14*09635541SAndroid Build Coastguard Worker      the copyright owner that is granting the License.
15*09635541SAndroid Build Coastguard Worker
16*09635541SAndroid Build Coastguard Worker      "Legal Entity" shall mean the union of the acting entity and all
17*09635541SAndroid Build Coastguard Worker      other entities that control, are controlled by, or are under common
18*09635541SAndroid Build Coastguard Worker      control with that entity. For the purposes of this definition,
19*09635541SAndroid Build Coastguard Worker      "control" means (i) the power, direct or indirect, to cause the
20*09635541SAndroid Build Coastguard Worker      direction or management of such entity, whether by contract or
21*09635541SAndroid Build Coastguard Worker      otherwise, or (ii) ownership of fifty percent (50%) or more of the
22*09635541SAndroid Build Coastguard Worker      outstanding shares, or (iii) beneficial ownership of such entity.
23*09635541SAndroid Build Coastguard Worker
24*09635541SAndroid Build Coastguard Worker      "You" (or "Your") shall mean an individual or Legal Entity
25*09635541SAndroid Build Coastguard Worker      exercising permissions granted by this License.
26*09635541SAndroid Build Coastguard Worker
27*09635541SAndroid Build Coastguard Worker      "Source" form shall mean the preferred form for making modifications,
28*09635541SAndroid Build Coastguard Worker      including but not limited to software source code, documentation
29*09635541SAndroid Build Coastguard Worker      source, and configuration files.
30*09635541SAndroid Build Coastguard Worker
31*09635541SAndroid Build Coastguard Worker      "Object" form shall mean any form resulting from mechanical
32*09635541SAndroid Build Coastguard Worker      transformation or translation of a Source form, including but
33*09635541SAndroid Build Coastguard Worker      not limited to compiled object code, generated documentation,
34*09635541SAndroid Build Coastguard Worker      and conversions to other media types.
35*09635541SAndroid Build Coastguard Worker
36*09635541SAndroid Build Coastguard Worker      "Work" shall mean the work of authorship, whether in Source or
37*09635541SAndroid Build Coastguard Worker      Object form, made available under the License, as indicated by a
38*09635541SAndroid Build Coastguard Worker      copyright notice that is included in or attached to the work
39*09635541SAndroid Build Coastguard Worker      (an example is provided in the Appendix below).
40*09635541SAndroid Build Coastguard Worker
41*09635541SAndroid Build Coastguard Worker      "Derivative Works" shall mean any work, whether in Source or Object
42*09635541SAndroid Build Coastguard Worker      form, that is based on (or derived from) the Work and for which the
43*09635541SAndroid Build Coastguard Worker      editorial revisions, annotations, elaborations, or other modifications
44*09635541SAndroid Build Coastguard Worker      represent, as a whole, an original work of authorship. For the purposes
45*09635541SAndroid Build Coastguard Worker      of this License, Derivative Works shall not include works that remain
46*09635541SAndroid Build Coastguard Worker      separable from, or merely link (or bind by name) to the interfaces of,
47*09635541SAndroid Build Coastguard Worker      the Work and Derivative Works thereof.
48*09635541SAndroid Build Coastguard Worker
49*09635541SAndroid Build Coastguard Worker      "Contribution" shall mean any work of authorship, including
50*09635541SAndroid Build Coastguard Worker      the original version of the Work and any modifications or additions
51*09635541SAndroid Build Coastguard Worker      to that Work or Derivative Works thereof, that is intentionally
52*09635541SAndroid Build Coastguard Worker      submitted to Licensor for inclusion in the Work by the copyright owner
53*09635541SAndroid Build Coastguard Worker      or by an individual or Legal Entity authorized to submit on behalf of
54*09635541SAndroid Build Coastguard Worker      the copyright owner. For the purposes of this definition, "submitted"
55*09635541SAndroid Build Coastguard Worker      means any form of electronic, verbal, or written communication sent
56*09635541SAndroid Build Coastguard Worker      to the Licensor or its representatives, including but not limited to
57*09635541SAndroid Build Coastguard Worker      communication on electronic mailing lists, source code control systems,
58*09635541SAndroid Build Coastguard Worker      and issue tracking systems that are managed by, or on behalf of, the
59*09635541SAndroid Build Coastguard Worker      Licensor for the purpose of discussing and improving the Work, but
60*09635541SAndroid Build Coastguard Worker      excluding communication that is conspicuously marked or otherwise
61*09635541SAndroid Build Coastguard Worker      designated in writing by the copyright owner as "Not a Contribution."
62*09635541SAndroid Build Coastguard Worker
63*09635541SAndroid Build Coastguard Worker      "Contributor" shall mean Licensor and any individual or Legal Entity
64*09635541SAndroid Build Coastguard Worker      on behalf of whom a Contribution has been received by Licensor and
65*09635541SAndroid Build Coastguard Worker      subsequently incorporated within the Work.
66*09635541SAndroid Build Coastguard Worker
67*09635541SAndroid Build Coastguard Worker   2. Grant of Copyright License. Subject to the terms and conditions of
68*09635541SAndroid Build Coastguard Worker      this License, each Contributor hereby grants to You a perpetual,
69*09635541SAndroid Build Coastguard Worker      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70*09635541SAndroid Build Coastguard Worker      copyright license to reproduce, prepare Derivative Works of,
71*09635541SAndroid Build Coastguard Worker      publicly display, publicly perform, sublicense, and distribute the
72*09635541SAndroid Build Coastguard Worker      Work and such Derivative Works in Source or Object form.
73*09635541SAndroid Build Coastguard Worker
74*09635541SAndroid Build Coastguard Worker   3. Grant of Patent License. Subject to the terms and conditions of
75*09635541SAndroid Build Coastguard Worker      this License, each Contributor hereby grants to You a perpetual,
76*09635541SAndroid Build Coastguard Worker      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77*09635541SAndroid Build Coastguard Worker      (except as stated in this section) patent license to make, have made,
78*09635541SAndroid Build Coastguard Worker      use, offer to sell, sell, import, and otherwise transfer the Work,
79*09635541SAndroid Build Coastguard Worker      where such license applies only to those patent claims licensable
80*09635541SAndroid Build Coastguard Worker      by such Contributor that are necessarily infringed by their
81*09635541SAndroid Build Coastguard Worker      Contribution(s) alone or by combination of their Contribution(s)
82*09635541SAndroid Build Coastguard Worker      with the Work to which such Contribution(s) was submitted. If You
83*09635541SAndroid Build Coastguard Worker      institute patent litigation against any entity (including a
84*09635541SAndroid Build Coastguard Worker      cross-claim or counterclaim in a lawsuit) alleging that the Work
85*09635541SAndroid Build Coastguard Worker      or a Contribution incorporated within the Work constitutes direct
86*09635541SAndroid Build Coastguard Worker      or contributory patent infringement, then any patent licenses
87*09635541SAndroid Build Coastguard Worker      granted to You under this License for that Work shall terminate
88*09635541SAndroid Build Coastguard Worker      as of the date such litigation is filed.
89*09635541SAndroid Build Coastguard Worker
90*09635541SAndroid Build Coastguard Worker   4. Redistribution. You may reproduce and distribute copies of the
91*09635541SAndroid Build Coastguard Worker      Work or Derivative Works thereof in any medium, with or without
92*09635541SAndroid Build Coastguard Worker      modifications, and in Source or Object form, provided that You
93*09635541SAndroid Build Coastguard Worker      meet the following conditions:
94*09635541SAndroid Build Coastguard Worker
95*09635541SAndroid Build Coastguard Worker      (a) You must give any other recipients of the Work or
96*09635541SAndroid Build Coastguard Worker          Derivative Works a copy of this License; and
97*09635541SAndroid Build Coastguard Worker
98*09635541SAndroid Build Coastguard Worker      (b) You must cause any modified files to carry prominent notices
99*09635541SAndroid Build Coastguard Worker          stating that You changed the files; and
100*09635541SAndroid Build Coastguard Worker
101*09635541SAndroid Build Coastguard Worker      (c) You must retain, in the Source form of any Derivative Works
102*09635541SAndroid Build Coastguard Worker          that You distribute, all copyright, patent, trademark, and
103*09635541SAndroid Build Coastguard Worker          attribution notices from the Source form of the Work,
104*09635541SAndroid Build Coastguard Worker          excluding those notices that do not pertain to any part of
105*09635541SAndroid Build Coastguard Worker          the Derivative Works; and
106*09635541SAndroid Build Coastguard Worker
107*09635541SAndroid Build Coastguard Worker      (d) If the Work includes a "NOTICE" text file as part of its
108*09635541SAndroid Build Coastguard Worker          distribution, then any Derivative Works that You distribute must
109*09635541SAndroid Build Coastguard Worker          include a readable copy of the attribution notices contained
110*09635541SAndroid Build Coastguard Worker          within such NOTICE file, excluding those notices that do not
111*09635541SAndroid Build Coastguard Worker          pertain to any part of the Derivative Works, in at least one
112*09635541SAndroid Build Coastguard Worker          of the following places: within a NOTICE text file distributed
113*09635541SAndroid Build Coastguard Worker          as part of the Derivative Works; within the Source form or
114*09635541SAndroid Build Coastguard Worker          documentation, if provided along with the Derivative Works; or,
115*09635541SAndroid Build Coastguard Worker          within a display generated by the Derivative Works, if and
116*09635541SAndroid Build Coastguard Worker          wherever such third-party notices normally appear. The contents
117*09635541SAndroid Build Coastguard Worker          of the NOTICE file are for informational purposes only and
118*09635541SAndroid Build Coastguard Worker          do not modify the License. You may add Your own attribution
119*09635541SAndroid Build Coastguard Worker          notices within Derivative Works that You distribute, alongside
120*09635541SAndroid Build Coastguard Worker          or as an addendum to the NOTICE text from the Work, provided
121*09635541SAndroid Build Coastguard Worker          that such additional attribution notices cannot be construed
122*09635541SAndroid Build Coastguard Worker          as modifying the License.
123*09635541SAndroid Build Coastguard Worker
124*09635541SAndroid Build Coastguard Worker      You may add Your own copyright statement to Your modifications and
125*09635541SAndroid Build Coastguard Worker      may provide additional or different license terms and conditions
126*09635541SAndroid Build Coastguard Worker      for use, reproduction, or distribution of Your modifications, or
127*09635541SAndroid Build Coastguard Worker      for any such Derivative Works as a whole, provided Your use,
128*09635541SAndroid Build Coastguard Worker      reproduction, and distribution of the Work otherwise complies with
129*09635541SAndroid Build Coastguard Worker      the conditions stated in this License.
130*09635541SAndroid Build Coastguard Worker
131*09635541SAndroid Build Coastguard Worker   5. Submission of Contributions. Unless You explicitly state otherwise,
132*09635541SAndroid Build Coastguard Worker      any Contribution intentionally submitted for inclusion in the Work
133*09635541SAndroid Build Coastguard Worker      by You to the Licensor shall be under the terms and conditions of
134*09635541SAndroid Build Coastguard Worker      this License, without any additional terms or conditions.
135*09635541SAndroid Build Coastguard Worker      Notwithstanding the above, nothing herein shall supersede or modify
136*09635541SAndroid Build Coastguard Worker      the terms of any separate license agreement you may have executed
137*09635541SAndroid Build Coastguard Worker      with Licensor regarding such Contributions.
138*09635541SAndroid Build Coastguard Worker
139*09635541SAndroid Build Coastguard Worker   6. Trademarks. This License does not grant permission to use the trade
140*09635541SAndroid Build Coastguard Worker      names, trademarks, service marks, or product names of the Licensor,
141*09635541SAndroid Build Coastguard Worker      except as required for reasonable and customary use in describing the
142*09635541SAndroid Build Coastguard Worker      origin of the Work and reproducing the content of the NOTICE file.
143*09635541SAndroid Build Coastguard Worker
144*09635541SAndroid Build Coastguard Worker   7. Disclaimer of Warranty. Unless required by applicable law or
145*09635541SAndroid Build Coastguard Worker      agreed to in writing, Licensor provides the Work (and each
146*09635541SAndroid Build Coastguard Worker      Contributor provides its Contributions) on an "AS IS" BASIS,
147*09635541SAndroid Build Coastguard Worker      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148*09635541SAndroid Build Coastguard Worker      implied, including, without limitation, any warranties or conditions
149*09635541SAndroid Build Coastguard Worker      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150*09635541SAndroid Build Coastguard Worker      PARTICULAR PURPOSE. You are solely responsible for determining the
151*09635541SAndroid Build Coastguard Worker      appropriateness of using or redistributing the Work and assume any
152*09635541SAndroid Build Coastguard Worker      risks associated with Your exercise of permissions under this License.
153*09635541SAndroid Build Coastguard Worker
154*09635541SAndroid Build Coastguard Worker   8. Limitation of Liability. In no event and under no legal theory,
155*09635541SAndroid Build Coastguard Worker      whether in tort (including negligence), contract, or otherwise,
156*09635541SAndroid Build Coastguard Worker      unless required by applicable law (such as deliberate and grossly
157*09635541SAndroid Build Coastguard Worker      negligent acts) or agreed to in writing, shall any Contributor be
158*09635541SAndroid Build Coastguard Worker      liable to You for damages, including any direct, indirect, special,
159*09635541SAndroid Build Coastguard Worker      incidental, or consequential damages of any character arising as a
160*09635541SAndroid Build Coastguard Worker      result of this License or out of the use or inability to use the
161*09635541SAndroid Build Coastguard Worker      Work (including but not limited to damages for loss of goodwill,
162*09635541SAndroid Build Coastguard Worker      work stoppage, computer failure or malfunction, or any and all
163*09635541SAndroid Build Coastguard Worker      other commercial damages or losses), even if such Contributor
164*09635541SAndroid Build Coastguard Worker      has been advised of the possibility of such damages.
165*09635541SAndroid Build Coastguard Worker
166*09635541SAndroid Build Coastguard Worker   9. Accepting Warranty or Additional Liability. While redistributing
167*09635541SAndroid Build Coastguard Worker      the Work or Derivative Works thereof, You may choose to offer,
168*09635541SAndroid Build Coastguard Worker      and charge a fee for, acceptance of support, warranty, indemnity,
169*09635541SAndroid Build Coastguard Worker      or other liability obligations and/or rights consistent with this
170*09635541SAndroid Build Coastguard Worker      License. However, in accepting such obligations, You may act only
171*09635541SAndroid Build Coastguard Worker      on Your own behalf and on Your sole responsibility, not on behalf
172*09635541SAndroid Build Coastguard Worker      of any other Contributor, and only if You agree to indemnify,
173*09635541SAndroid Build Coastguard Worker      defend, and hold each Contributor harmless for any liability
174*09635541SAndroid Build Coastguard Worker      incurred by, or claims asserted against, such Contributor by reason
175*09635541SAndroid Build Coastguard Worker      of your accepting any such warranty or additional liability.
176*09635541SAndroid Build Coastguard Worker
177*09635541SAndroid Build Coastguard Worker   END OF TERMS AND CONDITIONS
178*09635541SAndroid Build Coastguard Worker
179*09635541SAndroid Build Coastguard Worker   APPENDIX: How to apply the Apache License to your work.
180*09635541SAndroid Build Coastguard Worker
181*09635541SAndroid Build Coastguard Worker      To apply the Apache License to your work, attach the following
182*09635541SAndroid Build Coastguard Worker      boilerplate notice, with the fields enclosed by brackets "[]"
183*09635541SAndroid Build Coastguard Worker      replaced with your own identifying information. (Don't include
184*09635541SAndroid Build Coastguard Worker      the brackets!)  The text should be enclosed in the appropriate
185*09635541SAndroid Build Coastguard Worker      comment syntax for the file format. We also recommend that a
186*09635541SAndroid Build Coastguard Worker      file or class name and description of purpose be included on the
187*09635541SAndroid Build Coastguard Worker      same "printed page" as the copyright notice for easier
188*09635541SAndroid Build Coastguard Worker      identification within third-party archives.
189*09635541SAndroid Build Coastguard Worker
190*09635541SAndroid Build Coastguard Worker   Copyright [yyyy] [name of copyright owner]
191*09635541SAndroid Build Coastguard Worker
192*09635541SAndroid Build Coastguard Worker   Licensed under the Apache License, Version 2.0 (the "License");
193*09635541SAndroid Build Coastguard Worker   you may not use this file except in compliance with the License.
194*09635541SAndroid Build Coastguard Worker   You may obtain a copy of the License at
195*09635541SAndroid Build Coastguard Worker
196*09635541SAndroid Build Coastguard Worker       http://www.apache.org/licenses/LICENSE-2.0
197*09635541SAndroid Build Coastguard Worker
198*09635541SAndroid Build Coastguard Worker   Unless required by applicable law or agreed to in writing, software
199*09635541SAndroid Build Coastguard Worker   distributed under the License is distributed on an "AS IS" BASIS,
200*09635541SAndroid Build Coastguard Worker   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201*09635541SAndroid Build Coastguard Worker   See the License for the specific language governing permissions and
202*09635541SAndroid Build Coastguard Worker   limitations under the License.
203