Initialize Tizen 2.3
[external/libiri.git] / libiri / p_libiri.h
1 /*
2  * libiri: An IRI/URI/URL parsing library
3  * @(#) $Id$
4  */
5
6 /*
7  * Copyright (c) 2005, 2008 Mo McRoberts.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions
11  * are met:
12  * 1. Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  * 2. Redistributions in binary form must reproduce the above copyright
15  * notice, this list of conditions and the following disclaimer in the
16  * documentation and/or other materials provided with the distribution.
17  * 3. The names of the author(s) of this software may not be used to endorse
18  * or promote products derived from this software without specific prior
19  * written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, 
22  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
23  * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
24  * AUTHORS OF THIS SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
26  * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
28  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 
30  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32
33
34 /*
35  
36 The following code was added by Samsung Electronics.
37
38 --- a/libiri/p_libiri.h
39 +++ b/libiri/p_libiri.h
40 @@ -33,6 +33,8 @@
41  #ifndef P_LIBIRI_H_
42  # define P_LIBIRI_H_                   1
43    
44 +#define LIBIRI_INTERNAL
45 +
46  #include <stdlib.h>
47
48
49 License of the above code is Apache License
50
51
52     Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
53
54                                  Apache License
55                            Version 2.0, January 2004
56                         http://www.apache.org/licenses/
57
58    TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
59
60    1. Definitions.
61
62       "License" shall mean the terms and conditions for use, reproduction,
63       and distribution as defined by Sections 1 through 9 of this document.
64
65       "Licensor" shall mean the copyright owner or entity authorized by
66       the copyright owner that is granting the License.
67
68       "Legal Entity" shall mean the union of the acting entity and all
69       other entities that control, are controlled by, or are under common
70       control with that entity. For the purposes of this definition,
71       "control" means (i) the power, direct or indirect, to cause the
72       direction or management of such entity, whether by contract or
73       otherwise, or (ii) ownership of fifty percent (50%) or more of the
74       outstanding shares, or (iii) beneficial ownership of such entity.
75
76       "You" (or "Your") shall mean an individual or Legal Entity
77       exercising permissions granted by this License.
78
79       "Source" form shall mean the preferred form for making modifications,
80       including but not limited to software source code, documentation
81       source, and configuration files.
82
83       "Object" form shall mean any form resulting from mechanical
84       transformation or translation of a Source form, including but
85       not limited to compiled object code, generated documentation,
86       and conversions to other media types.
87
88       "Work" shall mean the work of authorship, whether in Source or
89       Object form, made available under the License, as indicated by a
90       copyright notice that is included in or attached to the work
91       (an example is provided in the Appendix below).
92
93       "Derivative Works" shall mean any work, whether in Source or Object
94       form, that is based on (or derived from) the Work and for which the
95       editorial revisions, annotations, elaborations, or other modifications
96       represent, as a whole, an original work of authorship. For the purposes
97       of this License, Derivative Works shall not include works that remain
98       separable from, or merely link (or bind by name) to the interfaces of,
99       the Work and Derivative Works thereof.
100
101       "Contribution" shall mean any work of authorship, including
102       the original version of the Work and any modifications or additions
103       to that Work or Derivative Works thereof, that is intentionally
104       submitted to Licensor for inclusion in the Work by the copyright owner
105       or by an individual or Legal Entity authorized to submit on behalf of
106       the copyright owner. For the purposes of this definition, "submitted"
107       means any form of electronic, verbal, or written communication sent
108       to the Licensor or its representatives, including but not limited to
109       communication on electronic mailing lists, source code control systems,
110       and issue tracking systems that are managed by, or on behalf of, the
111       Licensor for the purpose of discussing and improving the Work, but
112       excluding communication that is conspicuously marked or otherwise
113       designated in writing by the copyright owner as "Not a Contribution."
114
115       "Contributor" shall mean Licensor and any individual or Legal Entity
116       on behalf of whom a Contribution has been received by Licensor and
117       subsequently incorporated within the Work.
118
119    2. Grant of Copyright License. Subject to the terms and conditions of
120       this License, each Contributor hereby grants to You a perpetual,
121       worldwide, non-exclusive, no-charge, royalty-free, irrevocable
122       copyright license to reproduce, prepare Derivative Works of,
123       publicly display, publicly perform, sublicense, and distribute the
124       Work and such Derivative Works in Source or Object form.
125
126    3. Grant of Patent License. Subject to the terms and conditions of
127       this License, each Contributor hereby grants to You a perpetual,
128       worldwide, non-exclusive, no-charge, royalty-free, irrevocable
129       (except as stated in this section) patent license to make, have made,
130       use, offer to sell, sell, import, and otherwise transfer the Work,
131       where such license applies only to those patent claims licensable
132       by such Contributor that are necessarily infringed by their
133       Contribution(s) alone or by combination of their Contribution(s)
134       with the Work to which such Contribution(s) was submitted. If You
135       institute patent litigation against any entity (including a
136       cross-claim or counterclaim in a lawsuit) alleging that the Work
137       or a Contribution incorporated within the Work constitutes direct
138       or contributory patent infringement, then any patent licenses
139       granted to You under this License for that Work shall terminate
140       as of the date such litigation is filed.
141
142    4. Redistribution. You may reproduce and distribute copies of the
143       Work or Derivative Works thereof in any medium, with or without
144       modifications, and in Source or Object form, provided that You
145       meet the following conditions:
146
147       (a) You must give any other recipients of the Work or
148           Derivative Works a copy of this License; and
149
150       (b) You must cause any modified files to carry prominent notices
151           stating that You changed the files; and
152
153       (c) You must retain, in the Source form of any Derivative Works
154           that You distribute, all copyright, patent, trademark, and
155           attribution notices from the Source form of the Work,
156           excluding those notices that do not pertain to any part of
157           the Derivative Works; and
158
159       (d) If the Work includes a "NOTICE" text file as part of its
160           distribution, then any Derivative Works that You distribute must
161           include a readable copy of the attribution notices contained
162           within such NOTICE file, excluding those notices that do not
163           pertain to any part of the Derivative Works, in at least one
164           of the following places: within a NOTICE text file distributed
165           as part of the Derivative Works; within the Source form or
166           documentation, if provided along with the Derivative Works; or,
167           within a display generated by the Derivative Works, if and
168           wherever such third-party notices normally appear. The contents
169           of the NOTICE file are for informational purposes only and
170           do not modify the License. You may add Your own attribution
171           notices within Derivative Works that You distribute, alongside
172           or as an addendum to the NOTICE text from the Work, provided
173           that such additional attribution notices cannot be construed
174           as modifying the License.
175
176       You may add Your own copyright statement to Your modifications and
177       may provide additional or different license terms and conditions
178       for use, reproduction, or distribution of Your modifications, or
179       for any such Derivative Works as a whole, provided Your use,
180       reproduction, and distribution of the Work otherwise complies with
181       the conditions stated in this License.
182
183    5. Submission of Contributions. Unless You explicitly state otherwise,
184       any Contribution intentionally submitted for inclusion in the Work
185       by You to the Licensor shall be under the terms and conditions of
186       this License, without any additional terms or conditions.
187       Notwithstanding the above, nothing herein shall supersede or modify
188       the terms of any separate license agreement you may have executed
189       with Licensor regarding such Contributions.
190
191    6. Trademarks. This License does not grant permission to use the trade
192       names, trademarks, service marks, or product names of the Licensor,
193       except as required for reasonable and customary use in describing the
194       origin of the Work and reproducing the content of the NOTICE file.
195
196    7. Disclaimer of Warranty. Unless required by applicable law or
197       agreed to in writing, Licensor provides the Work (and each
198       Contributor provides its Contributions) on an "AS IS" BASIS,
199       WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
200       implied, including, without limitation, any warranties or conditions
201       of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
202       PARTICULAR PURPOSE. You are solely responsible for determining the
203       appropriateness of using or redistributing the Work and assume any
204       risks associated with Your exercise of permissions under this License.
205
206    8. Limitation of Liability. In no event and under no legal theory,
207       whether in tort (including negligence), contract, or otherwise,
208       unless required by applicable law (such as deliberate and grossly
209       negligent acts) or agreed to in writing, shall any Contributor be
210       liable to You for damages, including any direct, indirect, special,
211       incidental, or consequential damages of any character arising as a
212       result of this License or out of the use or inability to use the
213       Work (including but not limited to damages for loss of goodwill,
214       work stoppage, computer failure or malfunction, or any and all
215       other commercial damages or losses), even if such Contributor
216       has been advised of the possibility of such damages.
217
218    9. Accepting Warranty or Additional Liability. While redistributing
219       the Work or Derivative Works thereof, You may choose to offer,
220       and charge a fee for, acceptance of support, warranty, indemnity,
221       or other liability obligations and/or rights consistent with this
222       License. However, in accepting such obligations, You may act only
223       on Your own behalf and on Your sole responsibility, not on behalf
224       of any other Contributor, and only if You agree to indemnify,
225       defend, and hold each Contributor harmless for any liability
226       incurred by, or claims asserted against, such Contributor by reason
227       of your accepting any such warranty or additional liability.
228
229    END OF TERMS AND CONDITIONS
230
231    APPENDIX: How to apply the Apache License to your work.
232
233       To apply the Apache License to your work, attach the following
234       boilerplate notice, with the fields enclosed by brackets "[]"
235       replaced with your own identifying information. (Don't include
236       the brackets!)  The text should be enclosed in the appropriate
237       comment syntax for the file format. We also recommend that a
238       file or class name and description of purpose be included on the
239       same "printed page" as the copyright notice for easier
240       identification within third-party archives.
241
242    Copyright [yyyy] [name of copyright owner]
243
244    Licensed under the Apache License, Version 2.0 (the "License");
245    you may not use this file except in compliance with the License.
246    You may obtain a copy of the License at
247
248        http://www.apache.org/licenses/LICENSE-2.0
249
250    Unless required by applicable law or agreed to in writing, software
251    distributed under the License is distributed on an "AS IS" BASIS,
252    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
253    See the License for the specific language governing permissions and
254    limitations under the License.
255
256 */
257
258
259 #ifndef P_LIBIRI_H_
260 # define P_LIBIRI_H_                   1
261
262 #define LIBIRI_INTERNAL
263
264 #include <stdlib.h>
265 #include <string.h>
266 #include <ctype.h>
267
268 typedef struct iri_internal_struct iri_t;
269
270 #include "iri.h"
271
272 struct iri_internal_struct
273 {
274         struct iri_struct iri;
275         void *base;
276         size_t nbytes;
277 };
278
279 #endif /* !P_LIBIRI_H_ */