@img/sharp-libvips-dev 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +1 -2
  2. package/include/aom/aom_decoder.h +1 -1
  3. package/include/aom/aom_encoder.h +7 -1
  4. package/include/aom/aom_image.h +24 -12
  5. package/include/aom/aom_integer.h +3 -3
  6. package/include/aom/aomcx.h +15 -0
  7. package/include/aom/aomdx.h +5 -2
  8. package/include/archive.h +7 -5
  9. package/include/archive_entry.h +5 -3
  10. package/include/cgif.h +3 -0
  11. package/include/expat.h +21 -10
  12. package/include/expat_config.h +11 -5
  13. package/include/ffi.h +12 -25
  14. package/include/freetype2/freetype/config/ftoption.h +2 -2
  15. package/include/fribidi/fribidi-config.h +2 -2
  16. package/include/fribidi/fribidi-unicode-version.h +3 -3
  17. package/include/gio-unix-2.0/gio/gfiledescriptorbased.h +3 -2
  18. package/include/glib-2.0/gio/gappinfo.h +40 -25
  19. package/include/glib-2.0/gio/gapplication.h +6 -0
  20. package/include/glib-2.0/gio/gasyncresult.h +1 -1
  21. package/include/glib-2.0/gio/gconverter.h +5 -0
  22. package/include/glib-2.0/gio/gdbusintrospection.h +1 -1
  23. package/include/glib-2.0/gio/gfile.h +16 -0
  24. package/include/glib-2.0/gio/gio-visibility.h +34 -0
  25. package/include/glib-2.0/gio/giotypes.h +0 -1
  26. package/include/glib-2.0/gio/gsettings.h +8 -0
  27. package/include/glib-2.0/gio/gvfs.h +2 -2
  28. package/include/glib-2.0/girepository/gi-visibility.h +34 -0
  29. package/include/glib-2.0/girepository/giarginfo.h +23 -6
  30. package/include/glib-2.0/girepository/gibaseinfo.h +44 -18
  31. package/include/glib-2.0/girepository/gicallableinfo.h +26 -16
  32. package/include/glib-2.0/girepository/gicallbackinfo.h +17 -2
  33. package/include/glib-2.0/girepository/giconstantinfo.h +19 -4
  34. package/include/glib-2.0/girepository/gienuminfo.h +20 -21
  35. package/include/glib-2.0/girepository/gifieldinfo.h +22 -7
  36. package/include/glib-2.0/girepository/giflagsinfo.h +60 -0
  37. package/include/glib-2.0/girepository/gifunctioninfo.h +22 -7
  38. package/include/glib-2.0/girepository/giinterfaceinfo.h +33 -18
  39. package/include/glib-2.0/girepository/giobjectinfo.h +41 -26
  40. package/include/glib-2.0/girepository/gipropertyinfo.h +18 -3
  41. package/include/glib-2.0/girepository/giregisteredtypeinfo.h +22 -11
  42. package/include/glib-2.0/girepository/girepository-autocleanups.h +56 -0
  43. package/include/glib-2.0/girepository/girepository.h +53 -62
  44. package/include/glib-2.0/girepository/girffi.h +8 -7
  45. package/include/glib-2.0/girepository/gisignalinfo.h +18 -3
  46. package/include/glib-2.0/girepository/gistructinfo.h +26 -11
  47. package/include/glib-2.0/girepository/gitypeinfo.h +29 -16
  48. package/include/glib-2.0/girepository/gitypelib.h +9 -13
  49. package/include/glib-2.0/girepository/gitypes.h +52 -104
  50. package/include/glib-2.0/girepository/giunioninfo.h +28 -12
  51. package/include/glib-2.0/girepository/giunresolvedinfo.h +17 -2
  52. package/include/glib-2.0/girepository/givalueinfo.h +65 -0
  53. package/include/glib-2.0/girepository/givfuncinfo.h +23 -8
  54. package/include/glib-2.0/glib/deprecated/gthread.h +9 -5
  55. package/include/glib-2.0/glib/gbitlock.h +31 -0
  56. package/include/glib-2.0/glib/gbookmarkfile.h +1 -1
  57. package/include/glib-2.0/glib/giochannel.h +2 -2
  58. package/include/glib-2.0/glib/glib-visibility.h +34 -0
  59. package/include/glib-2.0/glib/gmacros.h +12 -5
  60. package/include/glib-2.0/glib/gmain.h +93 -7
  61. package/include/glib-2.0/glib/gmessages.h +8 -0
  62. package/include/glib-2.0/glib/gqsort.h +8 -1
  63. package/include/glib-2.0/glib/gslice.h +2 -0
  64. package/include/glib-2.0/glib/gstrfuncs.h +24 -30
  65. package/include/glib-2.0/glib/gstrvbuilder.h +3 -0
  66. package/include/glib-2.0/glib/gthread.h +191 -3
  67. package/include/glib-2.0/glib/gunicode.h +1 -1
  68. package/include/glib-2.0/glib/gversionmacros.h +9 -0
  69. package/include/glib-2.0/glib-unix.h +7 -1
  70. package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
  71. package/include/glib-2.0/gobject/genums.h +6 -6
  72. package/include/glib-2.0/gobject/glib-types.h +11 -0
  73. package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
  74. package/include/glib-2.0/gobject/gsignal.h +16 -6
  75. package/include/glib-2.0/gobject/gtype.h +6 -6
  76. package/include/harfbuzz/hb-buffer.h +6 -0
  77. package/include/harfbuzz/hb-common.h +6 -9
  78. package/include/harfbuzz/hb-cplusplus.hh +8 -11
  79. package/include/harfbuzz/hb-subset.h +17 -4
  80. package/include/harfbuzz/hb-version.h +3 -3
  81. package/include/hwy/abort.h +28 -0
  82. package/include/hwy/aligned_allocator.h +218 -6
  83. package/include/hwy/base.h +1935 -512
  84. package/include/hwy/cache_control.h +24 -6
  85. package/include/hwy/detect_compiler_arch.h +105 -10
  86. package/include/hwy/detect_targets.h +146 -37
  87. package/include/hwy/foreach_target.h +36 -1
  88. package/include/hwy/highway.h +222 -50
  89. package/include/hwy/ops/arm_neon-inl.h +2055 -894
  90. package/include/hwy/ops/arm_sve-inl.h +1476 -348
  91. package/include/hwy/ops/emu128-inl.h +711 -623
  92. package/include/hwy/ops/generic_ops-inl.h +4431 -2157
  93. package/include/hwy/ops/inside-inl.h +691 -0
  94. package/include/hwy/ops/ppc_vsx-inl.h +2186 -673
  95. package/include/hwy/ops/rvv-inl.h +1556 -536
  96. package/include/hwy/ops/scalar-inl.h +353 -233
  97. package/include/hwy/ops/set_macros-inl.h +171 -23
  98. package/include/hwy/ops/shared-inl.h +198 -56
  99. package/include/hwy/ops/wasm_128-inl.h +283 -244
  100. package/include/hwy/ops/x86_128-inl.h +3673 -1357
  101. package/include/hwy/ops/x86_256-inl.h +1737 -663
  102. package/include/hwy/ops/x86_512-inl.h +1697 -500
  103. package/include/hwy/per_target.h +4 -0
  104. package/include/hwy/profiler.h +648 -0
  105. package/include/hwy/robust_statistics.h +2 -2
  106. package/include/hwy/targets.h +40 -32
  107. package/include/hwy/timer-inl.h +3 -3
  108. package/include/hwy/timer.h +16 -1
  109. package/include/libheif/heif.h +170 -15
  110. package/include/libheif/heif_items.h +237 -0
  111. package/include/libheif/heif_properties.h +38 -2
  112. package/include/libheif/heif_regions.h +1 -1
  113. package/include/libheif/heif_version.h +2 -2
  114. package/include/libpng16/png.h +32 -29
  115. package/include/libpng16/pngconf.h +2 -2
  116. package/include/libpng16/pnglibconf.h +8 -3
  117. package/include/librsvg-2.0/librsvg/rsvg-cairo.h +1 -1
  118. package/include/librsvg-2.0/librsvg/rsvg-features.h +3 -4
  119. package/include/librsvg-2.0/librsvg/rsvg-pixbuf.h +235 -0
  120. package/include/librsvg-2.0/librsvg/rsvg-version.h +3 -3
  121. package/include/librsvg-2.0/librsvg/rsvg.h +55 -176
  122. package/include/libxml2/libxml/HTMLparser.h +12 -19
  123. package/include/libxml2/libxml/c14n.h +1 -12
  124. package/include/libxml2/libxml/debugXML.h +1 -1
  125. package/include/libxml2/libxml/encoding.h +9 -0
  126. package/include/libxml2/libxml/entities.h +12 -1
  127. package/include/libxml2/libxml/hash.h +19 -0
  128. package/include/libxml2/libxml/list.h +2 -2
  129. package/include/libxml2/libxml/nanohttp.h +17 -0
  130. package/include/libxml2/libxml/parser.h +73 -58
  131. package/include/libxml2/libxml/parserInternals.h +9 -1
  132. package/include/libxml2/libxml/pattern.h +6 -0
  133. package/include/libxml2/libxml/tree.h +32 -12
  134. package/include/libxml2/libxml/uri.h +11 -0
  135. package/include/libxml2/libxml/valid.h +29 -2
  136. package/include/libxml2/libxml/xinclude.h +7 -0
  137. package/include/libxml2/libxml/xmlIO.h +21 -5
  138. package/include/libxml2/libxml/xmlerror.h +14 -0
  139. package/include/libxml2/libxml/xmlexports.h +111 -15
  140. package/include/libxml2/libxml/xmlmemory.h +8 -45
  141. package/include/libxml2/libxml/xmlreader.h +2 -0
  142. package/include/libxml2/libxml/xmlsave.h +5 -0
  143. package/include/libxml2/libxml/xmlunicode.h +165 -1
  144. package/include/libxml2/libxml/xmlversion.h +15 -179
  145. package/include/libxml2/libxml/xmlwriter.h +1 -0
  146. package/include/libxml2/libxml/xpath.h +4 -0
  147. package/include/pango-1.0/pango/pango-features.h +2 -2
  148. package/include/pango-1.0/pango/pango-fontmap.h +7 -0
  149. package/include/pango-1.0/pango/pango-item.h +4 -2
  150. package/include/pango-1.0/pango/pango-version-macros.h +25 -0
  151. package/include/pango-1.0/pango/pangofc-font.h +2 -1
  152. package/include/pixman-1/pixman-version.h +2 -2
  153. package/include/png.h +32 -29
  154. package/include/pngconf.h +2 -2
  155. package/include/pnglibconf.h +8 -3
  156. package/include/vips/connection.h +9 -3
  157. package/include/vips/util.h +1 -11
  158. package/include/vips/version.h +4 -4
  159. package/include/webp/decode.h +58 -56
  160. package/include/webp/demux.h +25 -21
  161. package/include/webp/encode.h +44 -39
  162. package/include/webp/mux.h +76 -15
  163. package/include/webp/mux_types.h +2 -1
  164. package/include/webp/sharpyuv/sharpyuv.h +77 -8
  165. package/include/webp/types.h +29 -8
  166. package/include/zconf.h +1 -1
  167. package/include/zlib.h +12 -12
  168. package/package.json +1 -1
  169. package/versions.json +18 -19
@@ -11,10 +11,12 @@
11
11
  #ifndef __XML_ENTITIES_H__
12
12
  #define __XML_ENTITIES_H__
13
13
 
14
+ /** DOC_DISABLE */
14
15
  #include <libxml/xmlversion.h>
15
16
  #define XML_TREE_INTERNALS
16
17
  #include <libxml/tree.h>
17
18
  #undef XML_TREE_INTERNALS
19
+ /** DOC_ENABLE */
18
20
 
19
21
  #ifdef __cplusplus
20
22
  extern "C" {
@@ -57,7 +59,7 @@ struct _xmlEntity {
57
59
 
58
60
  struct _xmlEntity *nexte; /* unused */
59
61
  const xmlChar *URI; /* the full URI as computed */
60
- int owner; /* does the entity own the childrens */
62
+ int owner; /* unused */
61
63
  int flags; /* various flags */
62
64
  unsigned long expandedSize; /* expanded size */
63
65
  };
@@ -89,6 +91,15 @@ XMLPUBFUN xmlEntityPtr
89
91
  const xmlChar *content);
90
92
  XMLPUBFUN void
91
93
  xmlFreeEntity (xmlEntityPtr entity);
94
+ XMLPUBFUN int
95
+ xmlAddEntity (xmlDocPtr doc,
96
+ int extSubset,
97
+ const xmlChar *name,
98
+ int type,
99
+ const xmlChar *ExternalID,
100
+ const xmlChar *SystemID,
101
+ const xmlChar *content,
102
+ xmlEntityPtr *out);
92
103
  XMLPUBFUN xmlEntityPtr
93
104
  xmlAddDocEntity (xmlDocPtr doc,
94
105
  const xmlChar *name,
@@ -109,6 +109,10 @@ XMLPUBFUN void
109
109
  /*
110
110
  * Add a new entry to the hash table.
111
111
  */
112
+ XMLPUBFUN int
113
+ xmlHashAdd (xmlHashTablePtr hash,
114
+ const xmlChar *name,
115
+ void *userdata);
112
116
  XMLPUBFUN int
113
117
  xmlHashAddEntry (xmlHashTablePtr hash,
114
118
  const xmlChar *name,
@@ -118,6 +122,11 @@ XMLPUBFUN int
118
122
  const xmlChar *name,
119
123
  void *userdata,
120
124
  xmlHashDeallocator dealloc);
125
+ XMLPUBFUN int
126
+ xmlHashAdd2 (xmlHashTablePtr hash,
127
+ const xmlChar *name,
128
+ const xmlChar *name2,
129
+ void *userdata);
121
130
  XMLPUBFUN int
122
131
  xmlHashAddEntry2 (xmlHashTablePtr hash,
123
132
  const xmlChar *name,
@@ -129,6 +138,12 @@ XMLPUBFUN int
129
138
  const xmlChar *name2,
130
139
  void *userdata,
131
140
  xmlHashDeallocator dealloc);
141
+ XMLPUBFUN int
142
+ xmlHashAdd3 (xmlHashTablePtr hash,
143
+ const xmlChar *name,
144
+ const xmlChar *name2,
145
+ const xmlChar *name3,
146
+ void *userdata);
132
147
  XMLPUBFUN int
133
148
  xmlHashAddEntry3 (xmlHashTablePtr hash,
134
149
  const xmlChar *name,
@@ -199,6 +214,10 @@ XMLPUBFUN void *
199
214
  /*
200
215
  * Helpers.
201
216
  */
217
+ XMLPUBFUN xmlHashTablePtr
218
+ xmlHashCopySafe (xmlHashTablePtr hash,
219
+ xmlHashCopier copy,
220
+ xmlHashDeallocator dealloc);
202
221
  XMLPUBFUN xmlHashTablePtr
203
222
  xmlHashCopy (xmlHashTablePtr hash,
204
223
  xmlHashCopier copy);
@@ -119,10 +119,10 @@ XMLPUBFUN void
119
119
  xmlListMerge (xmlListPtr l1,
120
120
  xmlListPtr l2);
121
121
  XMLPUBFUN xmlListPtr
122
- xmlListDup (const xmlListPtr old);
122
+ xmlListDup (xmlListPtr old);
123
123
  XMLPUBFUN int
124
124
  xmlListCopy (xmlListPtr cur,
125
- const xmlListPtr old);
125
+ xmlListPtr old);
126
126
  /* Link operators */
127
127
  XMLPUBFUN void *
128
128
  xmlLinkGetData (xmlLinkPtr lk);
@@ -18,16 +18,21 @@
18
18
  #ifdef __cplusplus
19
19
  extern "C" {
20
20
  #endif
21
+ XML_DEPRECATED
21
22
  XMLPUBFUN void
22
23
  xmlNanoHTTPInit (void);
24
+ XML_DEPRECATED
23
25
  XMLPUBFUN void
24
26
  xmlNanoHTTPCleanup (void);
27
+ XML_DEPRECATED
25
28
  XMLPUBFUN void
26
29
  xmlNanoHTTPScanProxy (const char *URL);
30
+ XML_DEPRECATED
27
31
  XMLPUBFUN int
28
32
  xmlNanoHTTPFetch (const char *URL,
29
33
  const char *filename,
30
34
  char **contentType);
35
+ XML_DEPRECATED
31
36
  XMLPUBFUN void *
32
37
  xmlNanoHTTPMethod (const char *URL,
33
38
  const char *method,
@@ -35,6 +40,7 @@ XMLPUBFUN void *
35
40
  char **contentType,
36
41
  const char *headers,
37
42
  int ilen);
43
+ XML_DEPRECATED
38
44
  XMLPUBFUN void *
39
45
  xmlNanoHTTPMethodRedir (const char *URL,
40
46
  const char *method,
@@ -43,34 +49,45 @@ XMLPUBFUN void *
43
49
  char **redir,
44
50
  const char *headers,
45
51
  int ilen);
52
+ XML_DEPRECATED
46
53
  XMLPUBFUN void *
47
54
  xmlNanoHTTPOpen (const char *URL,
48
55
  char **contentType);
56
+ XML_DEPRECATED
49
57
  XMLPUBFUN void *
50
58
  xmlNanoHTTPOpenRedir (const char *URL,
51
59
  char **contentType,
52
60
  char **redir);
61
+ XML_DEPRECATED
53
62
  XMLPUBFUN int
54
63
  xmlNanoHTTPReturnCode (void *ctx);
64
+ XML_DEPRECATED
55
65
  XMLPUBFUN const char *
56
66
  xmlNanoHTTPAuthHeader (void *ctx);
67
+ XML_DEPRECATED
57
68
  XMLPUBFUN const char *
58
69
  xmlNanoHTTPRedir (void *ctx);
70
+ XML_DEPRECATED
59
71
  XMLPUBFUN int
60
72
  xmlNanoHTTPContentLength( void * ctx );
73
+ XML_DEPRECATED
61
74
  XMLPUBFUN const char *
62
75
  xmlNanoHTTPEncoding (void *ctx);
76
+ XML_DEPRECATED
63
77
  XMLPUBFUN const char *
64
78
  xmlNanoHTTPMimeType (void *ctx);
79
+ XML_DEPRECATED
65
80
  XMLPUBFUN int
66
81
  xmlNanoHTTPRead (void *ctx,
67
82
  void *dest,
68
83
  int len);
69
84
  #ifdef LIBXML_OUTPUT_ENABLED
85
+ XML_DEPRECATED
70
86
  XMLPUBFUN int
71
87
  xmlNanoHTTPSave (void *ctxt,
72
88
  const char *filename);
73
89
  #endif /* LIBXML_OUTPUT_ENABLED */
90
+ XML_DEPRECATED
74
91
  XMLPUBFUN void
75
92
  xmlNanoHTTPClose (void *ctx);
76
93
  #ifdef __cplusplus
@@ -10,6 +10,7 @@
10
10
  #ifndef __XML_PARSER_H__
11
11
  #define __XML_PARSER_H__
12
12
 
13
+ /** DOC_DISABLE */
13
14
  #include <libxml/xmlversion.h>
14
15
  #define XML_TREE_INTERNALS
15
16
  #include <libxml/tree.h>
@@ -26,6 +27,7 @@
26
27
  /* for compatibility */
27
28
  #include <libxml/SAX2.h>
28
29
  #include <libxml/threads.h>
30
+ /** DOC_ENABLE */
29
31
 
30
32
  #ifdef __cplusplus
31
33
  extern "C" {
@@ -62,11 +64,11 @@ struct _xmlParserInput {
62
64
  xmlParserInputBufferPtr buf; /* UTF-8 encoded buffer */
63
65
 
64
66
  const char *filename; /* The file analyzed, if any */
65
- const char *directory; /* the directory/base of the file */
67
+ const char *directory; /* unused */
66
68
  const xmlChar *base; /* Base of the array to parse */
67
69
  const xmlChar *cur; /* Current char being parsed */
68
70
  const xmlChar *end; /* end of the array to parse */
69
- int length; /* length if known */
71
+ int length; /* unused */
70
72
  int line; /* Current line */
71
73
  int col; /* Current column */
72
74
  unsigned long consumed; /* How many xmlChars already consumed */
@@ -75,7 +77,7 @@ struct _xmlParserInput {
75
77
  const xmlChar *version; /* the version string for entity */
76
78
  int flags; /* Flags */
77
79
  int id; /* an unique identifier for the entity */
78
- unsigned long parentConsumed; /* consumed bytes from parents */
80
+ unsigned long parentConsumed; /* unused */
79
81
  xmlEntityPtr entity; /* entity, if any */
80
82
  };
81
83
 
@@ -134,30 +136,14 @@ typedef enum {
134
136
  XML_PARSER_XML_DECL /* before XML decl (but after BOM) */
135
137
  } xmlParserInputState;
136
138
 
137
- /**
138
- * XML_DETECT_IDS:
139
- *
140
- * Bit in the loadsubset context field to tell to do ID/REFs lookups.
141
- * Use it to initialize xmlLoadExtDtdDefaultValue.
139
+ /** DOC_DISABLE */
140
+ /*
141
+ * Internal bits in the 'loadsubset' context member
142
142
  */
143
143
  #define XML_DETECT_IDS 2
144
-
145
- /**
146
- * XML_COMPLETE_ATTRS:
147
- *
148
- * Bit in the loadsubset context field to tell to do complete the
149
- * elements attributes lists with the ones defaulted from the DTDs.
150
- * Use it to initialize xmlLoadExtDtdDefaultValue.
151
- */
152
144
  #define XML_COMPLETE_ATTRS 4
153
-
154
- /**
155
- * XML_SKIP_IDS:
156
- *
157
- * Bit in the loadsubset context field to tell to not do ID/REFs registration.
158
- * Used to initialize xmlLoadExtDtdDefaultValue in some special cases.
159
- */
160
145
  #define XML_SKIP_IDS 8
146
+ /** DOC_ENABLE */
161
147
 
162
148
  /**
163
149
  * xmlParserMode:
@@ -222,16 +208,16 @@ struct _xmlParserCtxt {
222
208
 
223
209
  int hasExternalSubset; /* reference and external subset */
224
210
  int hasPErefs; /* the internal subset has PE refs */
225
- int external; /* are we parsing an external entity */
211
+ int external; /* unused */
226
212
 
227
213
  int valid; /* is the document valid */
228
214
  int validate; /* shall we try to validate ? */
229
215
  xmlValidCtxt vctxt; /* The validity context */
230
216
 
231
- xmlParserInputState instate; /* current type of input */
232
- int token; /* next char look-ahead */
217
+ xmlParserInputState instate; /* push parser state */
218
+ int token; /* unused */
233
219
 
234
- char *directory; /* the data directory */
220
+ char *directory; /* unused */
235
221
 
236
222
  /* Node name stack */
237
223
  const xmlChar *name; /* Current parsed Node */
@@ -255,7 +241,7 @@ struct _xmlParserCtxt {
255
241
  int * spaceTab; /* array of space infos */
256
242
 
257
243
  int depth; /* to prevent entity substitution loops */
258
- xmlParserInputPtr entity; /* used to check entities boundaries */
244
+ xmlParserInputPtr entity; /* unused */
259
245
  int charset; /* unused */
260
246
  int nodelen; /* Those two fields are there to */
261
247
  int nodemem; /* Speed up large node parsing */
@@ -266,11 +252,11 @@ struct _xmlParserCtxt {
266
252
  int linenumbers; /* set line number in element content */
267
253
  void *catalogs; /* document's own catalog */
268
254
  int recovery; /* run in recovery mode */
269
- int progressive; /* is this a progressive parsing */
255
+ int progressive; /* unused */
270
256
  xmlDictPtr dict; /* dictionary for the parser */
271
257
  const xmlChar * *atts; /* array for the attributes callbacks */
272
258
  int maxatts; /* the size of the array */
273
- int docdict; /* use strings from dict to build tree */
259
+ int docdict; /* unused */
274
260
 
275
261
  /*
276
262
  * pre-interned strings
@@ -308,7 +294,7 @@ struct _xmlParserCtxt {
308
294
  xmlError lastError;
309
295
  xmlParserMode parseMode; /* the parser mode */
310
296
  unsigned long nbentities; /* unused */
311
- unsigned long sizeentities; /* size of parsed entities */
297
+ unsigned long sizeentities; /* size of external entities */
312
298
 
313
299
  /* for use by HTML non-recursive parser */
314
300
  xmlParserNodeInfo *nodeInfo; /* Current NodeInfo */
@@ -327,6 +313,9 @@ struct _xmlParserCtxt {
327
313
  xmlParserNsData *nsdb; /* namespace database */
328
314
  unsigned attrHashMax; /* allocated size */
329
315
  xmlAttrHashBucket *attrHash; /* atttribute hash table */
316
+
317
+ xmlStructuredErrorFunc errorHandler;
318
+ void *errorCtxt;
330
319
  };
331
320
 
332
321
  /**
@@ -843,46 +832,60 @@ typedef xmlParserInputPtr (*xmlExternalEntityLoader) (const char *URL,
843
832
  */
844
833
 
845
834
  XMLPUBVAR const char *const xmlParserVersion;
835
+ XML_DEPRECATED
836
+ XMLPUBVAR const int oldXMLWDcompatibility;
837
+ XML_DEPRECATED
838
+ XMLPUBVAR const int xmlParserDebugEntities;
839
+ XML_DEPRECATED
840
+ XMLPUBVAR const xmlSAXLocator xmlDefaultSAXLocator;
841
+ #ifdef LIBXML_SAX1_ENABLED
842
+ XML_DEPRECATED
843
+ XMLPUBVAR const xmlSAXHandlerV1 xmlDefaultSAXHandler;
844
+ #endif
845
+
846
846
  #ifdef LIBXML_THREAD_ENABLED
847
847
  /* backward compatibility */
848
848
  XMLPUBFUN const char *const *__xmlParserVersion(void);
849
+ XML_DEPRECATED
850
+ XMLPUBFUN const int *__oldXMLWDcompatibility(void);
851
+ XML_DEPRECATED
852
+ XMLPUBFUN const int *__xmlParserDebugEntities(void);
853
+ XML_DEPRECATED
854
+ XMLPUBFUN const xmlSAXLocator *__xmlDefaultSAXLocator(void);
855
+ #ifdef LIBXML_SAX1_ENABLED
856
+ XML_DEPRECATED
857
+ XMLPUBFUN const xmlSAXHandlerV1 *__xmlDefaultSAXHandler(void);
858
+ #endif
849
859
  #endif
850
860
 
851
861
  /** DOC_DISABLE */
852
862
  #define XML_GLOBALS_PARSER_CORE \
853
- XML_OP(oldXMLWDcompatibility, int, XML_DEPRECATED) \
854
- XML_OP(xmlDefaultSAXLocator, xmlSAXLocator, XML_DEPRECATED) \
855
863
  XML_OP(xmlDoValidityCheckingDefaultValue, int, XML_DEPRECATED) \
856
864
  XML_OP(xmlGetWarningsDefaultValue, int, XML_DEPRECATED) \
857
865
  XML_OP(xmlKeepBlanksDefaultValue, int, XML_DEPRECATED) \
858
866
  XML_OP(xmlLineNumbersDefaultValue, int, XML_DEPRECATED) \
859
867
  XML_OP(xmlLoadExtDtdDefaultValue, int, XML_DEPRECATED) \
860
- XML_OP(xmlParserDebugEntities, int, XML_DEPRECATED) \
861
868
  XML_OP(xmlPedanticParserDefaultValue, int, XML_DEPRECATED) \
862
- XML_OP(xmlSubstituteEntitiesDefaultValue, int, XML_DEPRECATED) \
863
- XML_OP(xmlIndentTreeOutput, int, XML_NO_ATTR) \
864
- XML_OP(xmlTreeIndentString, const char *, XML_NO_ATTR) \
865
- XML_OP(xmlSaveNoEmptyTags, int, XML_NO_ATTR)
869
+ XML_OP(xmlSubstituteEntitiesDefaultValue, int, XML_DEPRECATED)
866
870
 
867
- #ifdef LIBXML_SAX1_ENABLED
868
- #define XML_GLOBALS_PARSER_SAX1 \
869
- XML_OP(xmlDefaultSAXHandler, xmlSAXHandlerV1, XML_DEPRECATED)
871
+ #ifdef LIBXML_OUTPUT_ENABLED
872
+ #define XML_GLOBALS_PARSER_OUTPUT \
873
+ XML_OP(xmlIndentTreeOutput, int, XML_NO_ATTR) \
874
+ XML_OP(xmlTreeIndentString, const char *, XML_NO_ATTR) \
875
+ XML_OP(xmlSaveNoEmptyTags, int, XML_NO_ATTR)
870
876
  #else
871
- #define XML_GLOBALS_PARSER_SAX1
877
+ #define XML_GLOBALS_PARSER_OUTPUT
872
878
  #endif
873
879
 
874
880
  #define XML_GLOBALS_PARSER \
875
881
  XML_GLOBALS_PARSER_CORE \
876
- XML_GLOBALS_PARSER_SAX1
882
+ XML_GLOBALS_PARSER_OUTPUT
877
883
 
878
884
  #define XML_OP XML_DECLARE_GLOBAL
879
885
  XML_GLOBALS_PARSER
880
886
  #undef XML_OP
881
887
 
882
888
  #if defined(LIBXML_THREAD_ENABLED) && !defined(XML_GLOBALS_NO_REDEFINITION)
883
- #define oldXMLWDcompatibility XML_GLOBAL_MACRO(oldXMLWDcompatibility)
884
- #define xmlDefaultSAXHandler XML_GLOBAL_MACRO(xmlDefaultSAXHandler)
885
- #define xmlDefaultSAXLocator XML_GLOBAL_MACRO(xmlDefaultSAXLocator)
886
889
  #define xmlDoValidityCheckingDefaultValue \
887
890
  XML_GLOBAL_MACRO(xmlDoValidityCheckingDefaultValue)
888
891
  #define xmlGetWarningsDefaultValue \
@@ -891,14 +894,15 @@ XML_GLOBALS_PARSER
891
894
  #define xmlLineNumbersDefaultValue \
892
895
  XML_GLOBAL_MACRO(xmlLineNumbersDefaultValue)
893
896
  #define xmlLoadExtDtdDefaultValue XML_GLOBAL_MACRO(xmlLoadExtDtdDefaultValue)
894
- #define xmlParserDebugEntities XML_GLOBAL_MACRO(xmlParserDebugEntities)
895
897
  #define xmlPedanticParserDefaultValue \
896
898
  XML_GLOBAL_MACRO(xmlPedanticParserDefaultValue)
897
899
  #define xmlSubstituteEntitiesDefaultValue \
898
900
  XML_GLOBAL_MACRO(xmlSubstituteEntitiesDefaultValue)
899
- #define xmlIndentTreeOutput XML_GLOBAL_MACRO(xmlIndentTreeOutput)
900
- #define xmlTreeIndentString XML_GLOBAL_MACRO(xmlTreeIndentString)
901
- #define xmlSaveNoEmptyTags XML_GLOBAL_MACRO(xmlSaveNoEmptyTags)
901
+ #ifdef LIBXML_OUTPUT_ENABLED
902
+ #define xmlIndentTreeOutput XML_GLOBAL_MACRO(xmlIndentTreeOutput)
903
+ #define xmlTreeIndentString XML_GLOBAL_MACRO(xmlTreeIndentString)
904
+ #define xmlSaveNoEmptyTags XML_GLOBAL_MACRO(xmlSaveNoEmptyTags)
905
+ #endif
902
906
  #endif
903
907
  /** DOC_ENABLE */
904
908
 
@@ -944,7 +948,7 @@ XML_DEPRECATED XMLPUBFUN int
944
948
  xmlSubstituteEntitiesDefault(int val);
945
949
  XML_DEPRECATED XMLPUBFUN int
946
950
  xmlThrDefSubstituteEntitiesDefaultValue(int v);
947
- XML_DEPRECATED XMLPUBFUN int
951
+ XMLPUBFUN int
948
952
  xmlKeepBlanksDefault (int val);
949
953
  XML_DEPRECATED XMLPUBFUN int
950
954
  xmlThrDefKeepBlanksDefaultValue(int v);
@@ -1176,18 +1180,18 @@ XMLPUBFUN xmlParserInputPtr
1176
1180
  * Node infos.
1177
1181
  */
1178
1182
  XMLPUBFUN const xmlParserNodeInfo*
1179
- xmlParserFindNodeInfo (const xmlParserCtxtPtr ctxt,
1180
- const xmlNodePtr node);
1183
+ xmlParserFindNodeInfo (xmlParserCtxtPtr ctxt,
1184
+ xmlNodePtr node);
1181
1185
  XMLPUBFUN void
1182
1186
  xmlInitNodeInfoSeq (xmlParserNodeInfoSeqPtr seq);
1183
1187
  XMLPUBFUN void
1184
1188
  xmlClearNodeInfoSeq (xmlParserNodeInfoSeqPtr seq);
1185
1189
  XMLPUBFUN unsigned long
1186
- xmlParserFindNodeInfoIndex(const xmlParserNodeInfoSeqPtr seq,
1187
- const xmlNodePtr node);
1190
+ xmlParserFindNodeInfoIndex(xmlParserNodeInfoSeqPtr seq,
1191
+ xmlNodePtr node);
1188
1192
  XMLPUBFUN void
1189
1193
  xmlParserAddNodeInfo (xmlParserCtxtPtr ctxt,
1190
- const xmlParserNodeInfoPtr info);
1194
+ xmlParserNodeInfoPtr info);
1191
1195
 
1192
1196
  /*
1193
1197
  * External entities handling actually implemented in xmlIO.
@@ -1242,7 +1246,8 @@ typedef enum {
1242
1246
  XML_PARSE_HUGE = 1<<19,/* relax any hardcoded limit from the parser */
1243
1247
  XML_PARSE_OLDSAX = 1<<20,/* parse using SAX2 interface before 2.7.0 */
1244
1248
  XML_PARSE_IGNORE_ENC= 1<<21,/* ignore internal document encoding hint */
1245
- XML_PARSE_BIG_LINES = 1<<22 /* Store big lines numbers in text PSVI field */
1249
+ XML_PARSE_BIG_LINES = 1<<22,/* Store big lines numbers in text PSVI field */
1250
+ XML_PARSE_NO_XXE = 1<<23 /* disable loading of external content */
1246
1251
  } xmlParserOption;
1247
1252
 
1248
1253
  XMLPUBFUN void
@@ -1253,9 +1258,16 @@ XMLPUBFUN int
1253
1258
  int size,
1254
1259
  const char *filename,
1255
1260
  const char *encoding);
1261
+ XMLPUBFUN int
1262
+ xmlCtxtSetOptions (xmlParserCtxtPtr ctxt,
1263
+ int options);
1256
1264
  XMLPUBFUN int
1257
1265
  xmlCtxtUseOptions (xmlParserCtxtPtr ctxt,
1258
1266
  int options);
1267
+ XMLPUBFUN void
1268
+ xmlCtxtSetErrorHandler (xmlParserCtxtPtr ctxt,
1269
+ xmlStructuredErrorFunc handler,
1270
+ void *data);
1259
1271
  XMLPUBFUN void
1260
1272
  xmlCtxtSetMaxAmplification(xmlParserCtxtPtr ctxt,
1261
1273
  unsigned maxAmpl);
@@ -1286,6 +1298,9 @@ XMLPUBFUN xmlDocPtr
1286
1298
  const char *URL,
1287
1299
  const char *encoding,
1288
1300
  int options);
1301
+ XMLPUBFUN xmlDocPtr
1302
+ xmlCtxtParseDocument (xmlParserCtxtPtr ctxt,
1303
+ xmlParserInputPtr input);
1289
1304
  XMLPUBFUN xmlDocPtr
1290
1305
  xmlCtxtReadDoc (xmlParserCtxtPtr ctxt,
1291
1306
  const xmlChar *cur,
@@ -1359,7 +1374,7 @@ typedef enum {
1359
1374
  XML_WITH_MODULES = 27,
1360
1375
  XML_WITH_DEBUG = 28,
1361
1376
  XML_WITH_DEBUG_MEM = 29,
1362
- XML_WITH_DEBUG_RUN = 30,
1377
+ XML_WITH_DEBUG_RUN = 30, /* unused */
1363
1378
  XML_WITH_ZLIB = 31,
1364
1379
  XML_WITH_ICU = 32,
1365
1380
  XML_WITH_LZMA = 33,
@@ -25,11 +25,14 @@ extern "C" {
25
25
  /**
26
26
  * xmlParserMaxDepth:
27
27
  *
28
+ * DEPRECATED: has no effect
29
+ *
28
30
  * arbitrary depth limit for the XML documents that we allow to
29
31
  * process. This is not a limitation of the parser but a safety
30
32
  * boundary feature, use XML_PARSE_HUGE option to override it.
31
33
  */
32
- XMLPUBVAR unsigned int xmlParserMaxDepth;
34
+ XML_DEPRECATED
35
+ XMLPUBVAR const unsigned int xmlParserMaxDepth;
33
36
 
34
37
  /**
35
38
  * XML_MAX_TEXT_LENGTH:
@@ -313,9 +316,14 @@ XMLPUBFUN xmlParserCtxtPtr
313
316
  xmlCreateEntityParserCtxt(const xmlChar *URL,
314
317
  const xmlChar *ID,
315
318
  const xmlChar *base);
319
+ XMLPUBFUN void
320
+ xmlCtxtErrMemory (xmlParserCtxtPtr ctxt);
316
321
  XMLPUBFUN int
317
322
  xmlSwitchEncoding (xmlParserCtxtPtr ctxt,
318
323
  xmlCharEncoding enc);
324
+ XMLPUBFUN int
325
+ xmlSwitchEncodingName (xmlParserCtxtPtr ctxt,
326
+ const char *encoding);
319
327
  XMLPUBFUN int
320
328
  xmlSwitchToEncoding (xmlParserCtxtPtr ctxt,
321
329
  xmlCharEncodingHandlerPtr handler);
@@ -54,6 +54,12 @@ XMLPUBFUN xmlPatternPtr
54
54
  xmlDict *dict,
55
55
  int flags,
56
56
  const xmlChar **namespaces);
57
+ XMLPUBFUN int
58
+ xmlPatternCompileSafe (const xmlChar *pattern,
59
+ xmlDict *dict,
60
+ int flags,
61
+ const xmlChar **namespaces,
62
+ xmlPatternPtr *patternOut);
57
63
  XMLPUBFUN int
58
64
  xmlPatternMatch (xmlPatternPtr comp,
59
65
  xmlNodePtr node);
@@ -173,13 +173,13 @@ typedef enum {
173
173
  XML_TEXT_NODE= 3,
174
174
  XML_CDATA_SECTION_NODE= 4,
175
175
  XML_ENTITY_REF_NODE= 5,
176
- XML_ENTITY_NODE= 6,
176
+ XML_ENTITY_NODE= 6, /* unused */
177
177
  XML_PI_NODE= 7,
178
178
  XML_COMMENT_NODE= 8,
179
179
  XML_DOCUMENT_NODE= 9,
180
- XML_DOCUMENT_TYPE_NODE= 10,
180
+ XML_DOCUMENT_TYPE_NODE= 10, /* unused */
181
181
  XML_DOCUMENT_FRAG_NODE= 11,
182
- XML_NOTATION_NODE= 12,
182
+ XML_NOTATION_NODE= 12, /* unused */
183
183
  XML_HTML_DOCUMENT_NODE= 13,
184
184
  XML_DTD_NODE= 14,
185
185
  XML_ELEMENT_DECL= 15,
@@ -449,6 +449,7 @@ struct _xmlAttr {
449
449
  xmlNs *ns; /* pointer to the associated namespace */
450
450
  xmlAttributeType atype; /* the attribute type if validating */
451
451
  void *psvi; /* for type/PSVI information */
452
+ struct _xmlID *id; /* the ID struct */
452
453
  };
453
454
 
454
455
  /**
@@ -1011,10 +1012,10 @@ XMLPUBFUN void
1011
1012
  xmlFreeNodeList (xmlNodePtr cur);
1012
1013
  XMLPUBFUN void
1013
1014
  xmlFreeNode (xmlNodePtr cur);
1014
- XMLPUBFUN void
1015
+ XMLPUBFUN int
1015
1016
  xmlSetTreeDoc (xmlNodePtr tree,
1016
1017
  xmlDocPtr doc);
1017
- XMLPUBFUN void
1018
+ XMLPUBFUN int
1018
1019
  xmlSetListDoc (xmlNodePtr list,
1019
1020
  xmlDocPtr doc);
1020
1021
  /*
@@ -1030,6 +1031,10 @@ XMLPUBFUN xmlNsPtr
1030
1031
  const xmlChar *href);
1031
1032
  #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \
1032
1033
  defined(LIBXML_SCHEMAS_ENABLED)
1034
+ XMLPUBFUN int
1035
+ xmlGetNsListSafe (const xmlDoc *doc,
1036
+ const xmlNode *node,
1037
+ xmlNsPtr **out);
1033
1038
  XMLPUBFUN xmlNsPtr *
1034
1039
  xmlGetNsList (const xmlDoc *doc,
1035
1040
  const xmlNode *node);
@@ -1059,6 +1064,11 @@ XMLPUBFUN xmlAttrPtr
1059
1064
  const xmlChar *value);
1060
1065
  #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \
1061
1066
  defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */
1067
+ XMLPUBFUN int
1068
+ xmlNodeGetAttrValue (const xmlNode *node,
1069
+ const xmlChar *name,
1070
+ const xmlChar *nsUri,
1071
+ xmlChar **out);
1062
1072
  XMLPUBFUN xmlChar *
1063
1073
  xmlGetNoNsProp (const xmlNode *node,
1064
1074
  const xmlChar *name);
@@ -1093,19 +1103,19 @@ XMLPUBFUN xmlChar *
1093
1103
  const xmlNode *list,
1094
1104
  int inLine);
1095
1105
  #endif /* LIBXML_TREE_ENABLED */
1096
- XMLPUBFUN void
1106
+ XMLPUBFUN int
1097
1107
  xmlNodeSetContent (xmlNodePtr cur,
1098
1108
  const xmlChar *content);
1099
1109
  #ifdef LIBXML_TREE_ENABLED
1100
- XMLPUBFUN void
1110
+ XMLPUBFUN int
1101
1111
  xmlNodeSetContentLen (xmlNodePtr cur,
1102
1112
  const xmlChar *content,
1103
1113
  int len);
1104
1114
  #endif /* LIBXML_TREE_ENABLED */
1105
- XMLPUBFUN void
1115
+ XMLPUBFUN int
1106
1116
  xmlNodeAddContent (xmlNodePtr cur,
1107
1117
  const xmlChar *content);
1108
- XMLPUBFUN void
1118
+ XMLPUBFUN int
1109
1119
  xmlNodeAddContentLen (xmlNodePtr cur,
1110
1120
  const xmlChar *content,
1111
1121
  int len);
@@ -1124,18 +1134,22 @@ XMLPUBFUN xmlChar *
1124
1134
  XMLPUBFUN int
1125
1135
  xmlNodeGetSpacePreserve (const xmlNode *cur);
1126
1136
  #ifdef LIBXML_TREE_ENABLED
1127
- XMLPUBFUN void
1137
+ XMLPUBFUN int
1128
1138
  xmlNodeSetLang (xmlNodePtr cur,
1129
1139
  const xmlChar *lang);
1130
- XMLPUBFUN void
1140
+ XMLPUBFUN int
1131
1141
  xmlNodeSetSpacePreserve (xmlNodePtr cur,
1132
1142
  int val);
1133
1143
  #endif /* LIBXML_TREE_ENABLED */
1144
+ XMLPUBFUN int
1145
+ xmlNodeGetBaseSafe (const xmlDoc *doc,
1146
+ const xmlNode *cur,
1147
+ xmlChar **baseOut);
1134
1148
  XMLPUBFUN xmlChar *
1135
1149
  xmlNodeGetBase (const xmlDoc *doc,
1136
1150
  const xmlNode *cur);
1137
1151
  #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
1138
- XMLPUBFUN void
1152
+ XMLPUBFUN int
1139
1153
  xmlNodeSetBase (xmlNodePtr cur,
1140
1154
  const xmlChar *uri);
1141
1155
  #endif
@@ -1283,8 +1297,10 @@ XMLPUBFUN int
1283
1297
  XMLPUBFUN void
1284
1298
  xmlSetDocCompressMode (xmlDocPtr doc,
1285
1299
  int mode);
1300
+ XML_DEPRECATED
1286
1301
  XMLPUBFUN int
1287
1302
  xmlGetCompressMode (void);
1303
+ XML_DEPRECATED
1288
1304
  XMLPUBFUN void
1289
1305
  xmlSetCompressMode (int mode);
1290
1306
 
@@ -1338,12 +1354,16 @@ XMLPUBFUN xmlNodePtr
1338
1354
  xmlPreviousElementSibling (xmlNodePtr node);
1339
1355
  #endif
1340
1356
 
1357
+ XML_DEPRECATED
1341
1358
  XMLPUBFUN xmlRegisterNodeFunc
1342
1359
  xmlRegisterNodeDefault (xmlRegisterNodeFunc func);
1360
+ XML_DEPRECATED
1343
1361
  XMLPUBFUN xmlDeregisterNodeFunc
1344
1362
  xmlDeregisterNodeDefault (xmlDeregisterNodeFunc func);
1363
+ XML_DEPRECATED
1345
1364
  XMLPUBFUN xmlRegisterNodeFunc
1346
1365
  xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func);
1366
+ XML_DEPRECATED
1347
1367
  XMLPUBFUN xmlDeregisterNodeFunc
1348
1368
  xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func);
1349
1369
 
@@ -52,14 +52,25 @@ struct _xmlURI {
52
52
  */
53
53
  XMLPUBFUN xmlURIPtr
54
54
  xmlCreateURI (void);
55
+ XMLPUBFUN int
56
+ xmlBuildURISafe (const xmlChar *URI,
57
+ const xmlChar *base,
58
+ xmlChar **out);
55
59
  XMLPUBFUN xmlChar *
56
60
  xmlBuildURI (const xmlChar *URI,
57
61
  const xmlChar *base);
62
+ XMLPUBFUN int
63
+ xmlBuildRelativeURISafe (const xmlChar *URI,
64
+ const xmlChar *base,
65
+ xmlChar **out);
58
66
  XMLPUBFUN xmlChar *
59
67
  xmlBuildRelativeURI (const xmlChar *URI,
60
68
  const xmlChar *base);
61
69
  XMLPUBFUN xmlURIPtr
62
70
  xmlParseURI (const char *str);
71
+ XMLPUBFUN int
72
+ xmlParseURISafe (const char *str,
73
+ xmlURIPtr *uri);
63
74
  XMLPUBFUN xmlURIPtr
64
75
  xmlParseURIRaw (const char *str,
65
76
  int raw);