@helm2/poc_jenki_rce 0.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of @helm2/poc_jenki_rce might be problematic. Click here for more details.

Files changed (160) hide show
  1. package/LICENSE +19 -0
  2. package/Makefile +18 -0
  3. package/README.md +52 -0
  4. package/binding.gyp +81 -0
  5. package/index.d.ts +273 -0
  6. package/index.js +45 -0
  7. package/lib/bindings.js +1 -0
  8. package/lib/document.js +118 -0
  9. package/lib/element.js +82 -0
  10. package/lib/sax_parser.js +38 -0
  11. package/package.json +70 -0
  12. package/src/html_document.cc +7 -0
  13. package/src/html_document.h +18 -0
  14. package/src/libxmljs.cc +252 -0
  15. package/src/libxmljs.h +53 -0
  16. package/src/xml_attribute.cc +173 -0
  17. package/src/xml_attribute.h +40 -0
  18. package/src/xml_comment.cc +117 -0
  19. package/src/xml_comment.h +30 -0
  20. package/src/xml_document.cc +810 -0
  21. package/src/xml_document.h +67 -0
  22. package/src/xml_element.cc +565 -0
  23. package/src/xml_element.h +61 -0
  24. package/src/xml_namespace.cc +158 -0
  25. package/src/xml_namespace.h +39 -0
  26. package/src/xml_node.cc +761 -0
  27. package/src/xml_node.h +73 -0
  28. package/src/xml_pi.cc +161 -0
  29. package/src/xml_pi.h +34 -0
  30. package/src/xml_sax_parser.cc +424 -0
  31. package/src/xml_sax_parser.h +73 -0
  32. package/src/xml_syntax_error.cc +66 -0
  33. package/src/xml_syntax_error.h +25 -0
  34. package/src/xml_text.cc +320 -0
  35. package/src/xml_text.h +48 -0
  36. package/src/xml_textwriter.cc +315 -0
  37. package/src/xml_textwriter.h +62 -0
  38. package/src/xml_xpath_context.cc +70 -0
  39. package/src/xml_xpath_context.h +23 -0
  40. package/vendor/libxml/Copyright +23 -0
  41. package/vendor/libxml/DOCBparser.c +305 -0
  42. package/vendor/libxml/HTMLparser.c +7287 -0
  43. package/vendor/libxml/HTMLtree.c +1200 -0
  44. package/vendor/libxml/Makefile +2983 -0
  45. package/vendor/libxml/SAX.c +180 -0
  46. package/vendor/libxml/SAX2.c +3036 -0
  47. package/vendor/libxml/buf.c +1351 -0
  48. package/vendor/libxml/buf.h +72 -0
  49. package/vendor/libxml/c14n.c +2234 -0
  50. package/vendor/libxml/catalog.c +3828 -0
  51. package/vendor/libxml/chvalid.c +336 -0
  52. package/vendor/libxml/config.h +294 -0
  53. package/vendor/libxml/config.h.gch +0 -0
  54. package/vendor/libxml/debugXML.c +3423 -0
  55. package/vendor/libxml/dict.c +1298 -0
  56. package/vendor/libxml/elfgcchack.h +17818 -0
  57. package/vendor/libxml/enc.h +32 -0
  58. package/vendor/libxml/encoding.c +3975 -0
  59. package/vendor/libxml/entities.c +1163 -0
  60. package/vendor/libxml/error.c +998 -0
  61. package/vendor/libxml/globals.c +1126 -0
  62. package/vendor/libxml/hash.c +1146 -0
  63. package/vendor/libxml/include/libxml/DOCBparser.h +96 -0
  64. package/vendor/libxml/include/libxml/HTMLparser.h +306 -0
  65. package/vendor/libxml/include/libxml/HTMLtree.h +147 -0
  66. package/vendor/libxml/include/libxml/Makefile +725 -0
  67. package/vendor/libxml/include/libxml/Makefile.am +54 -0
  68. package/vendor/libxml/include/libxml/Makefile.in +725 -0
  69. package/vendor/libxml/include/libxml/SAX.h +173 -0
  70. package/vendor/libxml/include/libxml/SAX2.h +178 -0
  71. package/vendor/libxml/include/libxml/c14n.h +128 -0
  72. package/vendor/libxml/include/libxml/catalog.h +182 -0
  73. package/vendor/libxml/include/libxml/chvalid.h +230 -0
  74. package/vendor/libxml/include/libxml/debugXML.h +217 -0
  75. package/vendor/libxml/include/libxml/dict.h +79 -0
  76. package/vendor/libxml/include/libxml/encoding.h +245 -0
  77. package/vendor/libxml/include/libxml/entities.h +151 -0
  78. package/vendor/libxml/include/libxml/globals.h +508 -0
  79. package/vendor/libxml/include/libxml/hash.h +236 -0
  80. package/vendor/libxml/include/libxml/list.h +137 -0
  81. package/vendor/libxml/include/libxml/nanoftp.h +163 -0
  82. package/vendor/libxml/include/libxml/nanohttp.h +81 -0
  83. package/vendor/libxml/include/libxml/parser.h +1243 -0
  84. package/vendor/libxml/include/libxml/parserInternals.h +644 -0
  85. package/vendor/libxml/include/libxml/pattern.h +100 -0
  86. package/vendor/libxml/include/libxml/relaxng.h +217 -0
  87. package/vendor/libxml/include/libxml/schemasInternals.h +958 -0
  88. package/vendor/libxml/include/libxml/schematron.h +142 -0
  89. package/vendor/libxml/include/libxml/threads.h +89 -0
  90. package/vendor/libxml/include/libxml/tree.h +1311 -0
  91. package/vendor/libxml/include/libxml/uri.h +94 -0
  92. package/vendor/libxml/include/libxml/valid.h +458 -0
  93. package/vendor/libxml/include/libxml/xinclude.h +129 -0
  94. package/vendor/libxml/include/libxml/xlink.h +189 -0
  95. package/vendor/libxml/include/libxml/xmlIO.h +368 -0
  96. package/vendor/libxml/include/libxml/xmlautomata.h +146 -0
  97. package/vendor/libxml/include/libxml/xmlerror.h +945 -0
  98. package/vendor/libxml/include/libxml/xmlexports.h +77 -0
  99. package/vendor/libxml/include/libxml/xmlmemory.h +224 -0
  100. package/vendor/libxml/include/libxml/xmlmodule.h +57 -0
  101. package/vendor/libxml/include/libxml/xmlreader.h +428 -0
  102. package/vendor/libxml/include/libxml/xmlregexp.h +222 -0
  103. package/vendor/libxml/include/libxml/xmlsave.h +88 -0
  104. package/vendor/libxml/include/libxml/xmlschemas.h +246 -0
  105. package/vendor/libxml/include/libxml/xmlschemastypes.h +151 -0
  106. package/vendor/libxml/include/libxml/xmlstring.h +140 -0
  107. package/vendor/libxml/include/libxml/xmlunicode.h +202 -0
  108. package/vendor/libxml/include/libxml/xmlversion.h +484 -0
  109. package/vendor/libxml/include/libxml/xmlwin32version.h +239 -0
  110. package/vendor/libxml/include/libxml/xmlwriter.h +488 -0
  111. package/vendor/libxml/include/libxml/xpath.h +564 -0
  112. package/vendor/libxml/include/libxml/xpathInternals.h +632 -0
  113. package/vendor/libxml/include/libxml/xpointer.h +114 -0
  114. package/vendor/libxml/include/win32config.h +122 -0
  115. package/vendor/libxml/include/wsockcompat.h +54 -0
  116. package/vendor/libxml/legacy.c +1343 -0
  117. package/vendor/libxml/libxml.h +134 -0
  118. package/vendor/libxml/list.c +779 -0
  119. package/vendor/libxml/nanoftp.c +2118 -0
  120. package/vendor/libxml/nanohttp.c +1899 -0
  121. package/vendor/libxml/parser.c +15553 -0
  122. package/vendor/libxml/parserInternals.c +2164 -0
  123. package/vendor/libxml/pattern.c +2621 -0
  124. package/vendor/libxml/relaxng.c +11101 -0
  125. package/vendor/libxml/rngparser.c +1595 -0
  126. package/vendor/libxml/runsuite.c +1157 -0
  127. package/vendor/libxml/save.h +36 -0
  128. package/vendor/libxml/schematron.c +1787 -0
  129. package/vendor/libxml/threads.c +1049 -0
  130. package/vendor/libxml/timsort.h +601 -0
  131. package/vendor/libxml/tree.c +10183 -0
  132. package/vendor/libxml/trio.c +6895 -0
  133. package/vendor/libxml/trio.h +230 -0
  134. package/vendor/libxml/triodef.h +228 -0
  135. package/vendor/libxml/trionan.c +914 -0
  136. package/vendor/libxml/trionan.h +84 -0
  137. package/vendor/libxml/triop.h +150 -0
  138. package/vendor/libxml/triostr.c +2112 -0
  139. package/vendor/libxml/triostr.h +144 -0
  140. package/vendor/libxml/uri.c +2561 -0
  141. package/vendor/libxml/valid.c +7138 -0
  142. package/vendor/libxml/xinclude.c +2657 -0
  143. package/vendor/libxml/xlink.c +183 -0
  144. package/vendor/libxml/xmlIO.c +4135 -0
  145. package/vendor/libxml/xmlcatalog.c +624 -0
  146. package/vendor/libxml/xmllint.c +3796 -0
  147. package/vendor/libxml/xmlmemory.c +1163 -0
  148. package/vendor/libxml/xmlmodule.c +468 -0
  149. package/vendor/libxml/xmlreader.c +6033 -0
  150. package/vendor/libxml/xmlregexp.c +8271 -0
  151. package/vendor/libxml/xmlsave.c +2735 -0
  152. package/vendor/libxml/xmlschemas.c +29173 -0
  153. package/vendor/libxml/xmlschemastypes.c +6276 -0
  154. package/vendor/libxml/xmlstring.c +1050 -0
  155. package/vendor/libxml/xmlunicode.c +3179 -0
  156. package/vendor/libxml/xmlwriter.c +4738 -0
  157. package/vendor/libxml/xpath.c +14734 -0
  158. package/vendor/libxml/xpointer.c +2969 -0
  159. package/vendor/libxml/xzlib.c +815 -0
  160. package/vendor/libxml/xzlib.h +19 -0
@@ -0,0 +1,428 @@
1
+ /*
2
+ * Summary: the XMLReader implementation
3
+ * Description: API of the XML streaming API based on C# interfaces.
4
+ *
5
+ * Copy: See Copyright for the status of this software.
6
+ *
7
+ * Author: Daniel Veillard
8
+ */
9
+
10
+ #ifndef __XML_XMLREADER_H__
11
+ #define __XML_XMLREADER_H__
12
+
13
+ #include <libxml/xmlversion.h>
14
+ #include <libxml/tree.h>
15
+ #include <libxml/xmlIO.h>
16
+ #ifdef LIBXML_SCHEMAS_ENABLED
17
+ #include <libxml/relaxng.h>
18
+ #include <libxml/xmlschemas.h>
19
+ #endif
20
+
21
+ #ifdef __cplusplus
22
+ extern "C" {
23
+ #endif
24
+
25
+ /**
26
+ * xmlParserSeverities:
27
+ *
28
+ * How severe an error callback is when the per-reader error callback API
29
+ * is used.
30
+ */
31
+ typedef enum {
32
+ XML_PARSER_SEVERITY_VALIDITY_WARNING = 1,
33
+ XML_PARSER_SEVERITY_VALIDITY_ERROR = 2,
34
+ XML_PARSER_SEVERITY_WARNING = 3,
35
+ XML_PARSER_SEVERITY_ERROR = 4
36
+ } xmlParserSeverities;
37
+
38
+ #ifdef LIBXML_READER_ENABLED
39
+
40
+ /**
41
+ * xmlTextReaderMode:
42
+ *
43
+ * Internal state values for the reader.
44
+ */
45
+ typedef enum {
46
+ XML_TEXTREADER_MODE_INITIAL = 0,
47
+ XML_TEXTREADER_MODE_INTERACTIVE = 1,
48
+ XML_TEXTREADER_MODE_ERROR = 2,
49
+ XML_TEXTREADER_MODE_EOF =3,
50
+ XML_TEXTREADER_MODE_CLOSED = 4,
51
+ XML_TEXTREADER_MODE_READING = 5
52
+ } xmlTextReaderMode;
53
+
54
+ /**
55
+ * xmlParserProperties:
56
+ *
57
+ * Some common options to use with xmlTextReaderSetParserProp, but it
58
+ * is better to use xmlParserOption and the xmlReaderNewxxx and
59
+ * xmlReaderForxxx APIs now.
60
+ */
61
+ typedef enum {
62
+ XML_PARSER_LOADDTD = 1,
63
+ XML_PARSER_DEFAULTATTRS = 2,
64
+ XML_PARSER_VALIDATE = 3,
65
+ XML_PARSER_SUBST_ENTITIES = 4
66
+ } xmlParserProperties;
67
+
68
+ /**
69
+ * xmlReaderTypes:
70
+ *
71
+ * Predefined constants for the different types of nodes.
72
+ */
73
+ typedef enum {
74
+ XML_READER_TYPE_NONE = 0,
75
+ XML_READER_TYPE_ELEMENT = 1,
76
+ XML_READER_TYPE_ATTRIBUTE = 2,
77
+ XML_READER_TYPE_TEXT = 3,
78
+ XML_READER_TYPE_CDATA = 4,
79
+ XML_READER_TYPE_ENTITY_REFERENCE = 5,
80
+ XML_READER_TYPE_ENTITY = 6,
81
+ XML_READER_TYPE_PROCESSING_INSTRUCTION = 7,
82
+ XML_READER_TYPE_COMMENT = 8,
83
+ XML_READER_TYPE_DOCUMENT = 9,
84
+ XML_READER_TYPE_DOCUMENT_TYPE = 10,
85
+ XML_READER_TYPE_DOCUMENT_FRAGMENT = 11,
86
+ XML_READER_TYPE_NOTATION = 12,
87
+ XML_READER_TYPE_WHITESPACE = 13,
88
+ XML_READER_TYPE_SIGNIFICANT_WHITESPACE = 14,
89
+ XML_READER_TYPE_END_ELEMENT = 15,
90
+ XML_READER_TYPE_END_ENTITY = 16,
91
+ XML_READER_TYPE_XML_DECLARATION = 17
92
+ } xmlReaderTypes;
93
+
94
+ /**
95
+ * xmlTextReader:
96
+ *
97
+ * Structure for an xmlReader context.
98
+ */
99
+ typedef struct _xmlTextReader xmlTextReader;
100
+
101
+ /**
102
+ * xmlTextReaderPtr:
103
+ *
104
+ * Pointer to an xmlReader context.
105
+ */
106
+ typedef xmlTextReader *xmlTextReaderPtr;
107
+
108
+ /*
109
+ * Constructors & Destructor
110
+ */
111
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
112
+ xmlNewTextReader (xmlParserInputBufferPtr input,
113
+ const char *URI);
114
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
115
+ xmlNewTextReaderFilename(const char *URI);
116
+
117
+ XMLPUBFUN void XMLCALL
118
+ xmlFreeTextReader (xmlTextReaderPtr reader);
119
+
120
+ XMLPUBFUN int XMLCALL
121
+ xmlTextReaderSetup(xmlTextReaderPtr reader,
122
+ xmlParserInputBufferPtr input, const char *URL,
123
+ const char *encoding, int options);
124
+
125
+ /*
126
+ * Iterators
127
+ */
128
+ XMLPUBFUN int XMLCALL
129
+ xmlTextReaderRead (xmlTextReaderPtr reader);
130
+
131
+ #ifdef LIBXML_WRITER_ENABLED
132
+ XMLPUBFUN xmlChar * XMLCALL
133
+ xmlTextReaderReadInnerXml(xmlTextReaderPtr reader);
134
+
135
+ XMLPUBFUN xmlChar * XMLCALL
136
+ xmlTextReaderReadOuterXml(xmlTextReaderPtr reader);
137
+ #endif
138
+
139
+ XMLPUBFUN xmlChar * XMLCALL
140
+ xmlTextReaderReadString (xmlTextReaderPtr reader);
141
+ XMLPUBFUN int XMLCALL
142
+ xmlTextReaderReadAttributeValue(xmlTextReaderPtr reader);
143
+
144
+ /*
145
+ * Attributes of the node
146
+ */
147
+ XMLPUBFUN int XMLCALL
148
+ xmlTextReaderAttributeCount(xmlTextReaderPtr reader);
149
+ XMLPUBFUN int XMLCALL
150
+ xmlTextReaderDepth (xmlTextReaderPtr reader);
151
+ XMLPUBFUN int XMLCALL
152
+ xmlTextReaderHasAttributes(xmlTextReaderPtr reader);
153
+ XMLPUBFUN int XMLCALL
154
+ xmlTextReaderHasValue(xmlTextReaderPtr reader);
155
+ XMLPUBFUN int XMLCALL
156
+ xmlTextReaderIsDefault (xmlTextReaderPtr reader);
157
+ XMLPUBFUN int XMLCALL
158
+ xmlTextReaderIsEmptyElement(xmlTextReaderPtr reader);
159
+ XMLPUBFUN int XMLCALL
160
+ xmlTextReaderNodeType (xmlTextReaderPtr reader);
161
+ XMLPUBFUN int XMLCALL
162
+ xmlTextReaderQuoteChar (xmlTextReaderPtr reader);
163
+ XMLPUBFUN int XMLCALL
164
+ xmlTextReaderReadState (xmlTextReaderPtr reader);
165
+ XMLPUBFUN int XMLCALL
166
+ xmlTextReaderIsNamespaceDecl(xmlTextReaderPtr reader);
167
+
168
+ XMLPUBFUN const xmlChar * XMLCALL
169
+ xmlTextReaderConstBaseUri (xmlTextReaderPtr reader);
170
+ XMLPUBFUN const xmlChar * XMLCALL
171
+ xmlTextReaderConstLocalName (xmlTextReaderPtr reader);
172
+ XMLPUBFUN const xmlChar * XMLCALL
173
+ xmlTextReaderConstName (xmlTextReaderPtr reader);
174
+ XMLPUBFUN const xmlChar * XMLCALL
175
+ xmlTextReaderConstNamespaceUri(xmlTextReaderPtr reader);
176
+ XMLPUBFUN const xmlChar * XMLCALL
177
+ xmlTextReaderConstPrefix (xmlTextReaderPtr reader);
178
+ XMLPUBFUN const xmlChar * XMLCALL
179
+ xmlTextReaderConstXmlLang (xmlTextReaderPtr reader);
180
+ XMLPUBFUN const xmlChar * XMLCALL
181
+ xmlTextReaderConstString (xmlTextReaderPtr reader,
182
+ const xmlChar *str);
183
+ XMLPUBFUN const xmlChar * XMLCALL
184
+ xmlTextReaderConstValue (xmlTextReaderPtr reader);
185
+
186
+ /*
187
+ * use the Const version of the routine for
188
+ * better performance and simpler code
189
+ */
190
+ XMLPUBFUN xmlChar * XMLCALL
191
+ xmlTextReaderBaseUri (xmlTextReaderPtr reader);
192
+ XMLPUBFUN xmlChar * XMLCALL
193
+ xmlTextReaderLocalName (xmlTextReaderPtr reader);
194
+ XMLPUBFUN xmlChar * XMLCALL
195
+ xmlTextReaderName (xmlTextReaderPtr reader);
196
+ XMLPUBFUN xmlChar * XMLCALL
197
+ xmlTextReaderNamespaceUri(xmlTextReaderPtr reader);
198
+ XMLPUBFUN xmlChar * XMLCALL
199
+ xmlTextReaderPrefix (xmlTextReaderPtr reader);
200
+ XMLPUBFUN xmlChar * XMLCALL
201
+ xmlTextReaderXmlLang (xmlTextReaderPtr reader);
202
+ XMLPUBFUN xmlChar * XMLCALL
203
+ xmlTextReaderValue (xmlTextReaderPtr reader);
204
+
205
+ /*
206
+ * Methods of the XmlTextReader
207
+ */
208
+ XMLPUBFUN int XMLCALL
209
+ xmlTextReaderClose (xmlTextReaderPtr reader);
210
+ XMLPUBFUN xmlChar * XMLCALL
211
+ xmlTextReaderGetAttributeNo (xmlTextReaderPtr reader,
212
+ int no);
213
+ XMLPUBFUN xmlChar * XMLCALL
214
+ xmlTextReaderGetAttribute (xmlTextReaderPtr reader,
215
+ const xmlChar *name);
216
+ XMLPUBFUN xmlChar * XMLCALL
217
+ xmlTextReaderGetAttributeNs (xmlTextReaderPtr reader,
218
+ const xmlChar *localName,
219
+ const xmlChar *namespaceURI);
220
+ XMLPUBFUN xmlParserInputBufferPtr XMLCALL
221
+ xmlTextReaderGetRemainder (xmlTextReaderPtr reader);
222
+ XMLPUBFUN xmlChar * XMLCALL
223
+ xmlTextReaderLookupNamespace(xmlTextReaderPtr reader,
224
+ const xmlChar *prefix);
225
+ XMLPUBFUN int XMLCALL
226
+ xmlTextReaderMoveToAttributeNo(xmlTextReaderPtr reader,
227
+ int no);
228
+ XMLPUBFUN int XMLCALL
229
+ xmlTextReaderMoveToAttribute(xmlTextReaderPtr reader,
230
+ const xmlChar *name);
231
+ XMLPUBFUN int XMLCALL
232
+ xmlTextReaderMoveToAttributeNs(xmlTextReaderPtr reader,
233
+ const xmlChar *localName,
234
+ const xmlChar *namespaceURI);
235
+ XMLPUBFUN int XMLCALL
236
+ xmlTextReaderMoveToFirstAttribute(xmlTextReaderPtr reader);
237
+ XMLPUBFUN int XMLCALL
238
+ xmlTextReaderMoveToNextAttribute(xmlTextReaderPtr reader);
239
+ XMLPUBFUN int XMLCALL
240
+ xmlTextReaderMoveToElement (xmlTextReaderPtr reader);
241
+ XMLPUBFUN int XMLCALL
242
+ xmlTextReaderNormalization (xmlTextReaderPtr reader);
243
+ XMLPUBFUN const xmlChar * XMLCALL
244
+ xmlTextReaderConstEncoding (xmlTextReaderPtr reader);
245
+
246
+ /*
247
+ * Extensions
248
+ */
249
+ XMLPUBFUN int XMLCALL
250
+ xmlTextReaderSetParserProp (xmlTextReaderPtr reader,
251
+ int prop,
252
+ int value);
253
+ XMLPUBFUN int XMLCALL
254
+ xmlTextReaderGetParserProp (xmlTextReaderPtr reader,
255
+ int prop);
256
+ XMLPUBFUN xmlNodePtr XMLCALL
257
+ xmlTextReaderCurrentNode (xmlTextReaderPtr reader);
258
+
259
+ XMLPUBFUN int XMLCALL
260
+ xmlTextReaderGetParserLineNumber(xmlTextReaderPtr reader);
261
+
262
+ XMLPUBFUN int XMLCALL
263
+ xmlTextReaderGetParserColumnNumber(xmlTextReaderPtr reader);
264
+
265
+ XMLPUBFUN xmlNodePtr XMLCALL
266
+ xmlTextReaderPreserve (xmlTextReaderPtr reader);
267
+ #ifdef LIBXML_PATTERN_ENABLED
268
+ XMLPUBFUN int XMLCALL
269
+ xmlTextReaderPreservePattern(xmlTextReaderPtr reader,
270
+ const xmlChar *pattern,
271
+ const xmlChar **namespaces);
272
+ #endif /* LIBXML_PATTERN_ENABLED */
273
+ XMLPUBFUN xmlDocPtr XMLCALL
274
+ xmlTextReaderCurrentDoc (xmlTextReaderPtr reader);
275
+ XMLPUBFUN xmlNodePtr XMLCALL
276
+ xmlTextReaderExpand (xmlTextReaderPtr reader);
277
+ XMLPUBFUN int XMLCALL
278
+ xmlTextReaderNext (xmlTextReaderPtr reader);
279
+ XMLPUBFUN int XMLCALL
280
+ xmlTextReaderNextSibling (xmlTextReaderPtr reader);
281
+ XMLPUBFUN int XMLCALL
282
+ xmlTextReaderIsValid (xmlTextReaderPtr reader);
283
+ #ifdef LIBXML_SCHEMAS_ENABLED
284
+ XMLPUBFUN int XMLCALL
285
+ xmlTextReaderRelaxNGValidate(xmlTextReaderPtr reader,
286
+ const char *rng);
287
+ XMLPUBFUN int XMLCALL
288
+ xmlTextReaderRelaxNGValidateCtxt(xmlTextReaderPtr reader,
289
+ xmlRelaxNGValidCtxtPtr ctxt,
290
+ int options);
291
+
292
+ XMLPUBFUN int XMLCALL
293
+ xmlTextReaderRelaxNGSetSchema(xmlTextReaderPtr reader,
294
+ xmlRelaxNGPtr schema);
295
+ XMLPUBFUN int XMLCALL
296
+ xmlTextReaderSchemaValidate (xmlTextReaderPtr reader,
297
+ const char *xsd);
298
+ XMLPUBFUN int XMLCALL
299
+ xmlTextReaderSchemaValidateCtxt(xmlTextReaderPtr reader,
300
+ xmlSchemaValidCtxtPtr ctxt,
301
+ int options);
302
+ XMLPUBFUN int XMLCALL
303
+ xmlTextReaderSetSchema (xmlTextReaderPtr reader,
304
+ xmlSchemaPtr schema);
305
+ #endif
306
+ XMLPUBFUN const xmlChar * XMLCALL
307
+ xmlTextReaderConstXmlVersion(xmlTextReaderPtr reader);
308
+ XMLPUBFUN int XMLCALL
309
+ xmlTextReaderStandalone (xmlTextReaderPtr reader);
310
+
311
+
312
+ /*
313
+ * Index lookup
314
+ */
315
+ XMLPUBFUN long XMLCALL
316
+ xmlTextReaderByteConsumed (xmlTextReaderPtr reader);
317
+
318
+ /*
319
+ * New more complete APIs for simpler creation and reuse of readers
320
+ */
321
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
322
+ xmlReaderWalker (xmlDocPtr doc);
323
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
324
+ xmlReaderForDoc (const xmlChar * cur,
325
+ const char *URL,
326
+ const char *encoding,
327
+ int options);
328
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
329
+ xmlReaderForFile (const char *filename,
330
+ const char *encoding,
331
+ int options);
332
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
333
+ xmlReaderForMemory (const char *buffer,
334
+ int size,
335
+ const char *URL,
336
+ const char *encoding,
337
+ int options);
338
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
339
+ xmlReaderForFd (int fd,
340
+ const char *URL,
341
+ const char *encoding,
342
+ int options);
343
+ XMLPUBFUN xmlTextReaderPtr XMLCALL
344
+ xmlReaderForIO (xmlInputReadCallback ioread,
345
+ xmlInputCloseCallback ioclose,
346
+ void *ioctx,
347
+ const char *URL,
348
+ const char *encoding,
349
+ int options);
350
+
351
+ XMLPUBFUN int XMLCALL
352
+ xmlReaderNewWalker (xmlTextReaderPtr reader,
353
+ xmlDocPtr doc);
354
+ XMLPUBFUN int XMLCALL
355
+ xmlReaderNewDoc (xmlTextReaderPtr reader,
356
+ const xmlChar * cur,
357
+ const char *URL,
358
+ const char *encoding,
359
+ int options);
360
+ XMLPUBFUN int XMLCALL
361
+ xmlReaderNewFile (xmlTextReaderPtr reader,
362
+ const char *filename,
363
+ const char *encoding,
364
+ int options);
365
+ XMLPUBFUN int XMLCALL
366
+ xmlReaderNewMemory (xmlTextReaderPtr reader,
367
+ const char *buffer,
368
+ int size,
369
+ const char *URL,
370
+ const char *encoding,
371
+ int options);
372
+ XMLPUBFUN int XMLCALL
373
+ xmlReaderNewFd (xmlTextReaderPtr reader,
374
+ int fd,
375
+ const char *URL,
376
+ const char *encoding,
377
+ int options);
378
+ XMLPUBFUN int XMLCALL
379
+ xmlReaderNewIO (xmlTextReaderPtr reader,
380
+ xmlInputReadCallback ioread,
381
+ xmlInputCloseCallback ioclose,
382
+ void *ioctx,
383
+ const char *URL,
384
+ const char *encoding,
385
+ int options);
386
+ /*
387
+ * Error handling extensions
388
+ */
389
+ typedef void * xmlTextReaderLocatorPtr;
390
+
391
+ /**
392
+ * xmlTextReaderErrorFunc:
393
+ * @arg: the user argument
394
+ * @msg: the message
395
+ * @severity: the severity of the error
396
+ * @locator: a locator indicating where the error occurred
397
+ *
398
+ * Signature of an error callback from a reader parser
399
+ */
400
+ typedef void (XMLCALL *xmlTextReaderErrorFunc)(void *arg,
401
+ const char *msg,
402
+ xmlParserSeverities severity,
403
+ xmlTextReaderLocatorPtr locator);
404
+ XMLPUBFUN int XMLCALL
405
+ xmlTextReaderLocatorLineNumber(xmlTextReaderLocatorPtr locator);
406
+ XMLPUBFUN xmlChar * XMLCALL
407
+ xmlTextReaderLocatorBaseURI (xmlTextReaderLocatorPtr locator);
408
+ XMLPUBFUN void XMLCALL
409
+ xmlTextReaderSetErrorHandler(xmlTextReaderPtr reader,
410
+ xmlTextReaderErrorFunc f,
411
+ void *arg);
412
+ XMLPUBFUN void XMLCALL
413
+ xmlTextReaderSetStructuredErrorHandler(xmlTextReaderPtr reader,
414
+ xmlStructuredErrorFunc f,
415
+ void *arg);
416
+ XMLPUBFUN void XMLCALL
417
+ xmlTextReaderGetErrorHandler(xmlTextReaderPtr reader,
418
+ xmlTextReaderErrorFunc *f,
419
+ void **arg);
420
+
421
+ #endif /* LIBXML_READER_ENABLED */
422
+
423
+ #ifdef __cplusplus
424
+ }
425
+ #endif
426
+
427
+ #endif /* __XML_XMLREADER_H__ */
428
+
@@ -0,0 +1,222 @@
1
+ /*
2
+ * Summary: regular expressions handling
3
+ * Description: basic API for libxml regular expressions handling used
4
+ * for XML Schemas and validation.
5
+ *
6
+ * Copy: See Copyright for the status of this software.
7
+ *
8
+ * Author: Daniel Veillard
9
+ */
10
+
11
+ #ifndef __XML_REGEXP_H__
12
+ #define __XML_REGEXP_H__
13
+
14
+ #include <libxml/xmlversion.h>
15
+
16
+ #ifdef LIBXML_REGEXP_ENABLED
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+ /**
23
+ * xmlRegexpPtr:
24
+ *
25
+ * A libxml regular expression, they can actually be far more complex
26
+ * thank the POSIX regex expressions.
27
+ */
28
+ typedef struct _xmlRegexp xmlRegexp;
29
+ typedef xmlRegexp *xmlRegexpPtr;
30
+
31
+ /**
32
+ * xmlRegExecCtxtPtr:
33
+ *
34
+ * A libxml progressive regular expression evaluation context
35
+ */
36
+ typedef struct _xmlRegExecCtxt xmlRegExecCtxt;
37
+ typedef xmlRegExecCtxt *xmlRegExecCtxtPtr;
38
+
39
+ #ifdef __cplusplus
40
+ }
41
+ #endif
42
+ #include <libxml/tree.h>
43
+ #include <libxml/dict.h>
44
+ #ifdef __cplusplus
45
+ extern "C" {
46
+ #endif
47
+
48
+ /*
49
+ * The POSIX like API
50
+ */
51
+ XMLPUBFUN xmlRegexpPtr XMLCALL
52
+ xmlRegexpCompile (const xmlChar *regexp);
53
+ XMLPUBFUN void XMLCALL xmlRegFreeRegexp(xmlRegexpPtr regexp);
54
+ XMLPUBFUN int XMLCALL
55
+ xmlRegexpExec (xmlRegexpPtr comp,
56
+ const xmlChar *value);
57
+ XMLPUBFUN void XMLCALL
58
+ xmlRegexpPrint (FILE *output,
59
+ xmlRegexpPtr regexp);
60
+ XMLPUBFUN int XMLCALL
61
+ xmlRegexpIsDeterminist(xmlRegexpPtr comp);
62
+
63
+ /**
64
+ * xmlRegExecCallbacks:
65
+ * @exec: the regular expression context
66
+ * @token: the current token string
67
+ * @transdata: transition data
68
+ * @inputdata: input data
69
+ *
70
+ * Callback function when doing a transition in the automata
71
+ */
72
+ typedef void (*xmlRegExecCallbacks) (xmlRegExecCtxtPtr exec,
73
+ const xmlChar *token,
74
+ void *transdata,
75
+ void *inputdata);
76
+
77
+ /*
78
+ * The progressive API
79
+ */
80
+ XMLPUBFUN xmlRegExecCtxtPtr XMLCALL
81
+ xmlRegNewExecCtxt (xmlRegexpPtr comp,
82
+ xmlRegExecCallbacks callback,
83
+ void *data);
84
+ XMLPUBFUN void XMLCALL
85
+ xmlRegFreeExecCtxt (xmlRegExecCtxtPtr exec);
86
+ XMLPUBFUN int XMLCALL
87
+ xmlRegExecPushString(xmlRegExecCtxtPtr exec,
88
+ const xmlChar *value,
89
+ void *data);
90
+ XMLPUBFUN int XMLCALL
91
+ xmlRegExecPushString2(xmlRegExecCtxtPtr exec,
92
+ const xmlChar *value,
93
+ const xmlChar *value2,
94
+ void *data);
95
+
96
+ XMLPUBFUN int XMLCALL
97
+ xmlRegExecNextValues(xmlRegExecCtxtPtr exec,
98
+ int *nbval,
99
+ int *nbneg,
100
+ xmlChar **values,
101
+ int *terminal);
102
+ XMLPUBFUN int XMLCALL
103
+ xmlRegExecErrInfo (xmlRegExecCtxtPtr exec,
104
+ const xmlChar **string,
105
+ int *nbval,
106
+ int *nbneg,
107
+ xmlChar **values,
108
+ int *terminal);
109
+ #ifdef LIBXML_EXPR_ENABLED
110
+ /*
111
+ * Formal regular expression handling
112
+ * Its goal is to do some formal work on content models
113
+ */
114
+
115
+ /* expressions are used within a context */
116
+ typedef struct _xmlExpCtxt xmlExpCtxt;
117
+ typedef xmlExpCtxt *xmlExpCtxtPtr;
118
+
119
+ XMLPUBFUN void XMLCALL
120
+ xmlExpFreeCtxt (xmlExpCtxtPtr ctxt);
121
+ XMLPUBFUN xmlExpCtxtPtr XMLCALL
122
+ xmlExpNewCtxt (int maxNodes,
123
+ xmlDictPtr dict);
124
+
125
+ XMLPUBFUN int XMLCALL
126
+ xmlExpCtxtNbNodes(xmlExpCtxtPtr ctxt);
127
+ XMLPUBFUN int XMLCALL
128
+ xmlExpCtxtNbCons(xmlExpCtxtPtr ctxt);
129
+
130
+ /* Expressions are trees but the tree is opaque */
131
+ typedef struct _xmlExpNode xmlExpNode;
132
+ typedef xmlExpNode *xmlExpNodePtr;
133
+
134
+ typedef enum {
135
+ XML_EXP_EMPTY = 0,
136
+ XML_EXP_FORBID = 1,
137
+ XML_EXP_ATOM = 2,
138
+ XML_EXP_SEQ = 3,
139
+ XML_EXP_OR = 4,
140
+ XML_EXP_COUNT = 5
141
+ } xmlExpNodeType;
142
+
143
+ /*
144
+ * 2 core expressions shared by all for the empty language set
145
+ * and for the set with just the empty token
146
+ */
147
+ XMLPUBVAR xmlExpNodePtr forbiddenExp;
148
+ XMLPUBVAR xmlExpNodePtr emptyExp;
149
+
150
+ /*
151
+ * Expressions are reference counted internally
152
+ */
153
+ XMLPUBFUN void XMLCALL
154
+ xmlExpFree (xmlExpCtxtPtr ctxt,
155
+ xmlExpNodePtr expr);
156
+ XMLPUBFUN void XMLCALL
157
+ xmlExpRef (xmlExpNodePtr expr);
158
+
159
+ /*
160
+ * constructors can be either manual or from a string
161
+ */
162
+ XMLPUBFUN xmlExpNodePtr XMLCALL
163
+ xmlExpParse (xmlExpCtxtPtr ctxt,
164
+ const char *expr);
165
+ XMLPUBFUN xmlExpNodePtr XMLCALL
166
+ xmlExpNewAtom (xmlExpCtxtPtr ctxt,
167
+ const xmlChar *name,
168
+ int len);
169
+ XMLPUBFUN xmlExpNodePtr XMLCALL
170
+ xmlExpNewOr (xmlExpCtxtPtr ctxt,
171
+ xmlExpNodePtr left,
172
+ xmlExpNodePtr right);
173
+ XMLPUBFUN xmlExpNodePtr XMLCALL
174
+ xmlExpNewSeq (xmlExpCtxtPtr ctxt,
175
+ xmlExpNodePtr left,
176
+ xmlExpNodePtr right);
177
+ XMLPUBFUN xmlExpNodePtr XMLCALL
178
+ xmlExpNewRange (xmlExpCtxtPtr ctxt,
179
+ xmlExpNodePtr subset,
180
+ int min,
181
+ int max);
182
+ /*
183
+ * The really interesting APIs
184
+ */
185
+ XMLPUBFUN int XMLCALL
186
+ xmlExpIsNillable(xmlExpNodePtr expr);
187
+ XMLPUBFUN int XMLCALL
188
+ xmlExpMaxToken (xmlExpNodePtr expr);
189
+ XMLPUBFUN int XMLCALL
190
+ xmlExpGetLanguage(xmlExpCtxtPtr ctxt,
191
+ xmlExpNodePtr expr,
192
+ const xmlChar**langList,
193
+ int len);
194
+ XMLPUBFUN int XMLCALL
195
+ xmlExpGetStart (xmlExpCtxtPtr ctxt,
196
+ xmlExpNodePtr expr,
197
+ const xmlChar**tokList,
198
+ int len);
199
+ XMLPUBFUN xmlExpNodePtr XMLCALL
200
+ xmlExpStringDerive(xmlExpCtxtPtr ctxt,
201
+ xmlExpNodePtr expr,
202
+ const xmlChar *str,
203
+ int len);
204
+ XMLPUBFUN xmlExpNodePtr XMLCALL
205
+ xmlExpExpDerive (xmlExpCtxtPtr ctxt,
206
+ xmlExpNodePtr expr,
207
+ xmlExpNodePtr sub);
208
+ XMLPUBFUN int XMLCALL
209
+ xmlExpSubsume (xmlExpCtxtPtr ctxt,
210
+ xmlExpNodePtr expr,
211
+ xmlExpNodePtr sub);
212
+ XMLPUBFUN void XMLCALL
213
+ xmlExpDump (xmlBufferPtr buf,
214
+ xmlExpNodePtr expr);
215
+ #endif /* LIBXML_EXPR_ENABLED */
216
+ #ifdef __cplusplus
217
+ }
218
+ #endif
219
+
220
+ #endif /* LIBXML_REGEXP_ENABLED */
221
+
222
+ #endif /*__XML_REGEXP_H__ */