Index: third_party/libxml/src/include/libxml/parserInternals.h |
diff --git a/third_party/libxml/src/include/libxml/parserInternals.h b/third_party/libxml/src/include/libxml/parserInternals.h |
index a5e75b5e386ea2c481a4c698b1434476cda25443..6065320eb1387299eeaccfdc22c52c879968c7d2 100644 |
--- a/third_party/libxml/src/include/libxml/parserInternals.h |
+++ b/third_party/libxml/src/include/libxml/parserInternals.h |
@@ -1,5 +1,5 @@ |
/* |
- * Summary: internals routines exported by the parser. |
+ * Summary: internals routines and limits exported by the parser. |
* Description: this module exports a number of internal parsing routines |
* they are not really all intended for applications but |
* can prove useful doing low level processing. |
@@ -36,10 +36,43 @@ XMLPUBVAR unsigned int xmlParserMaxDepth; |
* Maximum size allowed for a single text node when building a tree. |
* This is not a limitation of the parser but a safety boundary feature, |
* use XML_PARSE_HUGE option to override it. |
+ * Introduced in 2.9.0 |
*/ |
#define XML_MAX_TEXT_LENGTH 10000000 |
/** |
+ * XML_MAX_NAME_LENGTH: |
+ * |
+ * Maximum size allowed for a markup identitier |
+ * This is not a limitation of the parser but a safety boundary feature, |
+ * use XML_PARSE_HUGE option to override it. |
+ * Note that with the use of parsing dictionaries overriding the limit |
+ * may result in more runtime memory usage in face of "unfriendly' content |
+ * Introduced in 2.9.0 |
+ */ |
+#define XML_MAX_NAME_LENGTH 50000 |
+ |
+/** |
+ * XML_MAX_DICTIONARY_LIMIT: |
+ * |
+ * Maximum size allowed by the parser for a dictionary by default |
+ * This is not a limitation of the parser but a safety boundary feature, |
+ * use XML_PARSE_HUGE option to override it. |
+ * Introduced in 2.9.0 |
+ */ |
+#define XML_MAX_DICTIONARY_LIMIT 10000000 |
+ |
+/** |
+ * XML_MAX_LOOKUP_LIMIT: |
+ * |
+ * Maximum size allowed by the parser for ahead lookup |
+ * This is an upper boundary enforced by the parser to avoid bad |
+ * behaviour on "unfriendly' content |
+ * Introduced in 2.9.0 |
+ */ |
+#define XML_MAX_LOOKUP_LIMIT 10000000 |
+ |
+/** |
* XML_MAX_NAMELEN: |
* |
* Identifiers can be longer, but this will be more costly |
@@ -57,7 +90,7 @@ XMLPUBVAR unsigned int xmlParserMaxDepth; |
/************************************************************************ |
* * |
- * UNICODE version of the macros. * |
+ * UNICODE version of the macros. * |
* * |
************************************************************************/ |
/** |
@@ -153,7 +186,7 @@ XMLPUBVAR unsigned int xmlParserMaxDepth; |
* |
* Always false (all combining chars > 0xff) |
*/ |
-#define IS_COMBINING_CH(c) 0 |
+#define IS_COMBINING_CH(c) 0 |
/** |
* IS_EXTENDER: |
@@ -194,7 +227,7 @@ XMLPUBVAR unsigned int xmlParserMaxDepth; |
* Macro to check the following production in the XML spec: |
* |
* |
- * [84] Letter ::= BaseChar | Ideographic |
+ * [84] Letter ::= BaseChar | Ideographic |
*/ |
#define IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c)) |
@@ -251,7 +284,7 @@ XMLPUBVAR unsigned int xmlParserMaxDepth; |
* |
* Skips the end of line chars. |
*/ |
-#define SKIP_EOL(p) \ |
+#define SKIP_EOL(p) \ |
if (*(p) == 0x13) { p++ ; if (*(p) == 0x10) p++; } \ |
if (*(p) == 0x10) { p++ ; if (*(p) == 0x13) p++; } |
@@ -288,25 +321,25 @@ XMLPUBFUN int XMLCALL xmlIsLetter (int c); |
/** |
* Parser context. |
*/ |
-XMLPUBFUN xmlParserCtxtPtr XMLCALL |
+XMLPUBFUN xmlParserCtxtPtr XMLCALL |
xmlCreateFileParserCtxt (const char *filename); |
-XMLPUBFUN xmlParserCtxtPtr XMLCALL |
+XMLPUBFUN xmlParserCtxtPtr XMLCALL |
xmlCreateURLParserCtxt (const char *filename, |
int options); |
-XMLPUBFUN xmlParserCtxtPtr XMLCALL |
+XMLPUBFUN xmlParserCtxtPtr XMLCALL |
xmlCreateMemoryParserCtxt(const char *buffer, |
int size); |
-XMLPUBFUN xmlParserCtxtPtr XMLCALL |
+XMLPUBFUN xmlParserCtxtPtr XMLCALL |
xmlCreateEntityParserCtxt(const xmlChar *URL, |
const xmlChar *ID, |
const xmlChar *base); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlSwitchEncoding (xmlParserCtxtPtr ctxt, |
xmlCharEncoding enc); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlSwitchToEncoding (xmlParserCtxtPtr ctxt, |
xmlCharEncodingHandlerPtr handler); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlSwitchInputEncoding (xmlParserCtxtPtr ctxt, |
xmlParserInputPtr input, |
xmlCharEncodingHandlerPtr handler); |
@@ -324,29 +357,29 @@ XMLPUBFUN void XMLCALL |
/** |
* Input Streams. |
*/ |
-XMLPUBFUN xmlParserInputPtr XMLCALL |
+XMLPUBFUN xmlParserInputPtr XMLCALL |
xmlNewStringInputStream (xmlParserCtxtPtr ctxt, |
const xmlChar *buffer); |
-XMLPUBFUN xmlParserInputPtr XMLCALL |
+XMLPUBFUN xmlParserInputPtr XMLCALL |
xmlNewEntityInputStream (xmlParserCtxtPtr ctxt, |
xmlEntityPtr entity); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlPushInput (xmlParserCtxtPtr ctxt, |
xmlParserInputPtr input); |
-XMLPUBFUN xmlChar XMLCALL |
+XMLPUBFUN xmlChar XMLCALL |
xmlPopInput (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlFreeInputStream (xmlParserInputPtr input); |
-XMLPUBFUN xmlParserInputPtr XMLCALL |
+XMLPUBFUN xmlParserInputPtr XMLCALL |
xmlNewInputFromFile (xmlParserCtxtPtr ctxt, |
const char *filename); |
-XMLPUBFUN xmlParserInputPtr XMLCALL |
+XMLPUBFUN xmlParserInputPtr XMLCALL |
xmlNewInputStream (xmlParserCtxtPtr ctxt); |
/** |
* Namespaces. |
*/ |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlSplitQName (xmlParserCtxtPtr ctxt, |
const xmlChar *name, |
xmlChar **prefix); |
@@ -354,112 +387,112 @@ XMLPUBFUN xmlChar * XMLCALL |
/** |
* Generic production rules. |
*/ |
-XMLPUBFUN const xmlChar * XMLCALL |
+XMLPUBFUN const xmlChar * XMLCALL |
xmlParseName (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseNmtoken (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseEntityValue (xmlParserCtxtPtr ctxt, |
xmlChar **orig); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseAttValue (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseSystemLiteral (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParsePubidLiteral (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseCharData (xmlParserCtxtPtr ctxt, |
int cdata); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseExternalID (xmlParserCtxtPtr ctxt, |
xmlChar **publicID, |
int strict); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseComment (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN const xmlChar * XMLCALL |
+XMLPUBFUN const xmlChar * XMLCALL |
xmlParsePITarget (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParsePI (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseNotationDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseEntityDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlParseDefaultDecl (xmlParserCtxtPtr ctxt, |
xmlChar **value); |
-XMLPUBFUN xmlEnumerationPtr XMLCALL |
+XMLPUBFUN xmlEnumerationPtr XMLCALL |
xmlParseNotationType (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlEnumerationPtr XMLCALL |
+XMLPUBFUN xmlEnumerationPtr XMLCALL |
xmlParseEnumerationType (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlParseEnumeratedType (xmlParserCtxtPtr ctxt, |
xmlEnumerationPtr *tree); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlParseAttributeType (xmlParserCtxtPtr ctxt, |
xmlEnumerationPtr *tree); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlElementContentPtr XMLCALL |
+XMLPUBFUN xmlElementContentPtr XMLCALL |
xmlParseElementMixedContentDecl |
(xmlParserCtxtPtr ctxt, |
int inputchk); |
-XMLPUBFUN xmlElementContentPtr XMLCALL |
+XMLPUBFUN xmlElementContentPtr XMLCALL |
xmlParseElementChildrenContentDecl |
(xmlParserCtxtPtr ctxt, |
int inputchk); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlParseElementContentDecl(xmlParserCtxtPtr ctxt, |
const xmlChar *name, |
xmlElementContentPtr *result); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlParseElementDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseMarkupDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlParseCharRef (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlEntityPtr XMLCALL |
+XMLPUBFUN xmlEntityPtr XMLCALL |
xmlParseEntityRef (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseReference (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParsePEReference (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseDocTypeDecl (xmlParserCtxtPtr ctxt); |
#ifdef LIBXML_SAX1_ENABLED |
-XMLPUBFUN const xmlChar * XMLCALL |
+XMLPUBFUN const xmlChar * XMLCALL |
xmlParseAttribute (xmlParserCtxtPtr ctxt, |
xmlChar **value); |
-XMLPUBFUN const xmlChar * XMLCALL |
+XMLPUBFUN const xmlChar * XMLCALL |
xmlParseStartTag (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseEndTag (xmlParserCtxtPtr ctxt); |
#endif /* LIBXML_SAX1_ENABLED */ |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseCDSect (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseContent (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseElement (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseVersionNum (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseVersionInfo (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseEncName (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN const xmlChar * XMLCALL |
+XMLPUBFUN const xmlChar * XMLCALL |
xmlParseEncodingDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN int XMLCALL |
+XMLPUBFUN int XMLCALL |
xmlParseSDDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseXMLDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseTextDecl (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseMisc (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlParseExternalSubset (xmlParserCtxtPtr ctxt, |
const xmlChar *ExternalID, |
- const xmlChar *SystemID); |
+ const xmlChar *SystemID); |
/** |
* XML_SUBSTITUTE_NONE: |
* |
@@ -483,7 +516,7 @@ XMLPUBFUN void XMLCALL |
* |
* Both general and parameter entities need to be substituted. |
*/ |
-#define XML_SUBSTITUTE_BOTH 3 |
+#define XML_SUBSTITUTE_BOTH 3 |
XMLPUBFUN xmlChar * XMLCALL |
xmlStringDecodeEntities (xmlParserCtxtPtr ctxt, |
@@ -563,21 +596,21 @@ XMLPUBFUN htmlParserCtxtPtr XMLCALL htmlCreateFileParserCtxt(const char *filenam |
typedef void (*xmlEntityReferenceFunc) (xmlEntityPtr ent, |
xmlNodePtr firstNode, |
xmlNodePtr lastNode); |
- |
+ |
XMLPUBFUN void XMLCALL xmlSetEntityReferenceFunc (xmlEntityReferenceFunc func); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlParseQuotedString (xmlParserCtxtPtr ctxt); |
XMLPUBFUN void XMLCALL |
xmlParseNamespace (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlNamespaceParseNSDef (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlScanName (xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlNamespaceParseNCName (xmlParserCtxtPtr ctxt); |
XMLPUBFUN void XMLCALL xmlParserHandleReference(xmlParserCtxtPtr ctxt); |
-XMLPUBFUN xmlChar * XMLCALL |
+XMLPUBFUN xmlChar * XMLCALL |
xmlNamespaceParseQName (xmlParserCtxtPtr ctxt, |
xmlChar **prefix); |
/** |
@@ -590,7 +623,7 @@ XMLPUBFUN xmlChar * XMLCALL |
xmlChar end, |
xmlChar end2, |
xmlChar end3); |
-XMLPUBFUN void XMLCALL |
+XMLPUBFUN void XMLCALL |
xmlHandleEntity (xmlParserCtxtPtr ctxt, |
xmlEntityPtr entity); |