diff options
author | Mike Hommey <glandium@debian.org> | 2009-03-01 10:55:27 +0100 |
---|---|---|
committer | Mike Hommey <glandium@debian.org> | 2009-03-01 10:55:27 +0100 |
commit | e248b20a3b7df364cc9617b8685b4c190338bcd2 (patch) | |
tree | f289c8584c4a44dd9cdb87003b193488da8b00f3 /include | |
parent | 0c8f97ec9edb09da2e0b19c4f9ddf8c725cebc59 (diff) | |
download | libxml2-e248b20a3b7df364cc9617b8685b4c190338bcd2.tar.gz |
Import upstream version 2.7.3upstream/2.7.3.dfsg
Diffstat (limited to 'include')
-rw-r--r-- | include/libxml/parser.h | 9 | ||||
-rw-r--r-- | include/libxml/parserInternals.h | 27 | ||||
-rw-r--r-- | include/libxml/relaxng.h | 44 | ||||
-rw-r--r-- | include/libxml/tree.h | 16 | ||||
-rw-r--r-- | include/libxml/valid.h | 4 | ||||
-rw-r--r-- | include/libxml/xmlerror.h | 64 | ||||
-rw-r--r-- | include/libxml/xmlmemory.h | 8 | ||||
-rw-r--r-- | include/libxml/xmlschemas.h | 4 | ||||
-rw-r--r-- | include/libxml/xmlversion.h | 70 | ||||
-rw-r--r-- | include/libxml/xmlversion.h.in | 62 | ||||
-rw-r--r-- | include/libxml/xmlwriter.h | 78 |
11 files changed, 271 insertions, 115 deletions
diff --git a/include/libxml/parser.h b/include/libxml/parser.h index 24d5cf9..567addb 100644 --- a/include/libxml/parser.h +++ b/include/libxml/parser.h @@ -594,7 +594,7 @@ typedef void (*cdataBlockSAXFunc) ( * Display and format a warning messages, callback. */ typedef void (XMLCDECL *warningSAXFunc) (void *ctx, - const char *msg, ...); + const char *msg, ...) ATTRIBUTE_PRINTF(2,3); /** * errorSAXFunc: * @ctx: an XML parser context @@ -604,7 +604,7 @@ typedef void (XMLCDECL *warningSAXFunc) (void *ctx, * Display and format an error messages, callback. */ typedef void (XMLCDECL *errorSAXFunc) (void *ctx, - const char *msg, ...); + const char *msg, ...) ATTRIBUTE_PRINTF(2,3); /** * fatalErrorSAXFunc: * @ctx: an XML parser context @@ -616,7 +616,7 @@ typedef void (XMLCDECL *errorSAXFunc) (void *ctx, * get all the callbacks for errors. */ typedef void (XMLCDECL *fatalErrorSAXFunc) (void *ctx, - const char *msg, ...); + const char *msg, ...) ATTRIBUTE_PRINTF(2,3); /** * isStandaloneSAXFunc: * @ctx: the user data (XML parser context) @@ -1096,7 +1096,8 @@ typedef enum { crash if you try to modify the tree) */ XML_PARSE_OLD10 = 1<<17,/* parse using XML-1.0 before update 5 */ XML_PARSE_NOBASEFIX = 1<<18,/* do not fixup XINCLUDE xml:base uris */ - XML_PARSE_HUGE = 1<<19 /* relax any hardcoded limit from the parser */ + XML_PARSE_HUGE = 1<<19, /* relax any hardcoded limit from the parser */ + XML_PARSE_OLDSAX = 1<<20 /* parse using SAX2 interface from before 2.7.0 */ } xmlParserOption; XMLPUBFUN void XMLCALL diff --git a/include/libxml/parserInternals.h b/include/libxml/parserInternals.h index fddcd27..a5e75b5 100644 --- a/include/libxml/parserInternals.h +++ b/include/libxml/parserInternals.h @@ -24,18 +24,27 @@ extern "C" { /** * xmlParserMaxDepth: * - * arbitrary depth limit for the XML documents that we allow to - * process. This is not a limitation of the parser but a safety - * boundary feature. + * arbitrary depth limit for the XML documents that we allow to + * process. This is not a limitation of the parser but a safety + * boundary feature, use XML_PARSE_HUGE option to override it. */ XMLPUBVAR unsigned int xmlParserMaxDepth; - /** - * XML_MAX_NAMELEN: - * - * Identifiers can be longer, but this will be more costly - * at runtime. - */ +/** + * XML_MAX_TEXT_LENGTH: + * + * 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. + */ +#define XML_MAX_TEXT_LENGTH 10000000 + +/** + * XML_MAX_NAMELEN: + * + * Identifiers can be longer, but this will be more costly + * at runtime. + */ #define XML_MAX_NAMELEN 100 /** diff --git a/include/libxml/relaxng.h b/include/libxml/relaxng.h index 29c91c7..d3e39e0 100644 --- a/include/libxml/relaxng.h +++ b/include/libxml/relaxng.h @@ -32,7 +32,7 @@ typedef xmlRelaxNG *xmlRelaxNGPtr; * * Signature of an error callback from a Relax-NG validation */ -typedef void (XMLCDECL *xmlRelaxNGValidityErrorFunc) (void *ctx, const char *msg, ...); +typedef void (XMLCDECL *xmlRelaxNGValidityErrorFunc) (void *ctx, const char *msg, ...) ATTRIBUTE_PRINTF(2,3); /** * xmlRelaxNGValidityWarningFunc: @@ -42,7 +42,7 @@ typedef void (XMLCDECL *xmlRelaxNGValidityErrorFunc) (void *ctx, const char *msg * * Signature of a warning callback from a Relax-NG validation */ -typedef void (XMLCDECL *xmlRelaxNGValidityWarningFunc) (void *ctx, const char *msg, ...); +typedef void (XMLCDECL *xmlRelaxNGValidityWarningFunc) (void *ctx, const char *msg, ...) ATTRIBUTE_PRINTF(2,3); /** * A schemas validation context @@ -114,27 +114,27 @@ typedef enum { XMLPUBFUN int XMLCALL xmlRelaxNGInitTypes (void); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlRelaxNGCleanupTypes (void); /* * Interfaces for parsing. */ -XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL +XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL xmlRelaxNGNewParserCtxt (const char *URL); -XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL +XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL xmlRelaxNGNewMemParserCtxt (const char *buffer, int size); -XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL +XMLPUBFUN xmlRelaxNGParserCtxtPtr XMLCALL xmlRelaxNGNewDocParserCtxt (xmlDocPtr doc); XMLPUBFUN int XMLCALL xmlRelaxParserSetFlag (xmlRelaxNGParserCtxtPtr ctxt, - int flag); + int flag); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlRelaxNGFreeParserCtxt (xmlRelaxNGParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlRelaxNGSetParserErrors(xmlRelaxNGParserCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc err, xmlRelaxNGValidityWarningFunc warn, @@ -149,12 +149,12 @@ XMLPUBFUN void XMLCALL xmlRelaxNGParserCtxtPtr ctxt, xmlStructuredErrorFunc serror, void *ctx); -XMLPUBFUN xmlRelaxNGPtr XMLCALL +XMLPUBFUN xmlRelaxNGPtr XMLCALL xmlRelaxNGParse (xmlRelaxNGParserCtxtPtr ctxt); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlRelaxNGFree (xmlRelaxNGPtr schema); #ifdef LIBXML_OUTPUT_ENABLED -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlRelaxNGDump (FILE *output, xmlRelaxNGPtr schema); XMLPUBFUN void XMLCALL @@ -164,12 +164,12 @@ XMLPUBFUN void XMLCALL /* * Interfaces for validating */ -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlRelaxNGSetValidErrors(xmlRelaxNGValidCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc err, xmlRelaxNGValidityWarningFunc warn, void *ctx); -XMLPUBFUN int XMLCALL +XMLPUBFUN int XMLCALL xmlRelaxNGGetValidErrors(xmlRelaxNGValidCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc *err, xmlRelaxNGValidityWarningFunc *warn, @@ -177,29 +177,29 @@ XMLPUBFUN int XMLCALL XMLPUBFUN void XMLCALL xmlRelaxNGSetValidStructuredErrors(xmlRelaxNGValidCtxtPtr ctxt, xmlStructuredErrorFunc serror, void *ctx); -XMLPUBFUN xmlRelaxNGValidCtxtPtr XMLCALL +XMLPUBFUN xmlRelaxNGValidCtxtPtr XMLCALL xmlRelaxNGNewValidCtxt (xmlRelaxNGPtr schema); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlRelaxNGFreeValidCtxt (xmlRelaxNGValidCtxtPtr ctxt); -XMLPUBFUN int XMLCALL +XMLPUBFUN int XMLCALL xmlRelaxNGValidateDoc (xmlRelaxNGValidCtxtPtr ctxt, - xmlDocPtr doc); + xmlDocPtr doc); /* * Interfaces for progressive validation when possible */ -XMLPUBFUN int XMLCALL +XMLPUBFUN int XMLCALL xmlRelaxNGValidatePushElement (xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc, xmlNodePtr elem); -XMLPUBFUN int XMLCALL +XMLPUBFUN int XMLCALL xmlRelaxNGValidatePushCData (xmlRelaxNGValidCtxtPtr ctxt, const xmlChar *data, int len); -XMLPUBFUN int XMLCALL +XMLPUBFUN int XMLCALL xmlRelaxNGValidatePopElement (xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc, xmlNodePtr elem); -XMLPUBFUN int XMLCALL +XMLPUBFUN int XMLCALL xmlRelaxNGValidateFullElement (xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc, xmlNodePtr elem); diff --git a/include/libxml/tree.h b/include/libxml/tree.h index 6a6a09d..b733589 100644 --- a/include/libxml/tree.h +++ b/include/libxml/tree.h @@ -1225,6 +1225,22 @@ XMLPUBFUN int XMLCALL int deep, int options); +#ifdef LIBXML_TREE_ENABLED +/* + * 5 interfaces from DOM ElementTraversal, but different in entities + * traversal. + */ +XMLPUBFUN unsigned long XMLCALL + xmlChildElementCount (xmlNodePtr parent); +XMLPUBFUN xmlNodePtr XMLCALL + xmlNextElementSibling (xmlNodePtr node); +XMLPUBFUN xmlNodePtr XMLCALL + xmlFirstElementChild (xmlNodePtr parent); +XMLPUBFUN xmlNodePtr XMLCALL + xmlLastElementChild (xmlNodePtr parent); +XMLPUBFUN xmlNodePtr XMLCALL + xmlPreviousElementSibling (xmlNodePtr node); +#endif #ifdef __cplusplus } #endif diff --git a/include/libxml/valid.h b/include/libxml/valid.h index 7492d28..f1892b0 100644 --- a/include/libxml/valid.h +++ b/include/libxml/valid.h @@ -41,7 +41,7 @@ typedef xmlValidState *xmlValidStatePtr; */ typedef void (XMLCDECL *xmlValidityErrorFunc) (void *ctx, const char *msg, - ...); + ...) ATTRIBUTE_PRINTF(2,3); /** * xmlValidityWarningFunc: @@ -56,7 +56,7 @@ typedef void (XMLCDECL *xmlValidityErrorFunc) (void *ctx, */ typedef void (XMLCDECL *xmlValidityWarningFunc) (void *ctx, const char *msg, - ...); + ...) ATTRIBUTE_PRINTF(2,3); #ifdef IN_LIBXML /** diff --git a/include/libxml/xmlerror.h b/include/libxml/xmlerror.h index c9336b9..7cce9c3 100644 --- a/include/libxml/xmlerror.h +++ b/include/libxml/xmlerror.h @@ -61,7 +61,7 @@ typedef enum { XML_FROM_CHECK, /* The error checking module */ XML_FROM_WRITER, /* The xmlwriter module */ XML_FROM_MODULE, /* The dynamically loaded module module*/ - XML_FROM_I18N, /* The module handling character conversion */ + XML_FROM_I18N, /* The module handling character conversion */ XML_FROM_SCHEMATRONV /* The Schematron validator module */ } xmlErrorDomain; @@ -645,7 +645,7 @@ typedef enum { XML_SCHEMAV_CVC_ELT_4_3, /* 1852 */ XML_SCHEMAV_CVC_ELT_5_1_1, /* 1853 */ XML_SCHEMAV_CVC_ELT_5_1_2, /* 1854 */ - XML_SCHEMAV_CVC_ELT_5_2_1, /* 1855 */ + XML_SCHEMAV_CVC_ELT_5_2_1, /* 1855 */ XML_SCHEMAV_CVC_ELT_5_2_2_1, /* 1856 */ XML_SCHEMAV_CVC_ELT_5_2_2_2_1, /* 1857 */ XML_SCHEMAV_CVC_ELT_5_2_2_2_2, /* 1858 */ @@ -670,7 +670,7 @@ typedef enum { XML_SCHEMAV_CVC_IDC, /* 1877 */ XML_SCHEMAV_CVC_WILDCARD, /* 1878 */ XML_SCHEMAV_MISC, /* 1879 */ - XML_XPTR_UNKNOWN_SCHEME = 1900, + XML_XPTR_UNKNOWN_SCHEME = 1900, XML_XPTR_CHILDSEQ_START, /* 1901 */ XML_XPTR_EVAL_FAILED, /* 1902 */ XML_XPTR_EXTRA_OBJECTS, /* 1903 */ @@ -691,15 +691,15 @@ typedef enum { XML_SCHEMAP_SRC_SIMPLE_TYPE_2, /* 3001 */ XML_SCHEMAP_SRC_SIMPLE_TYPE_3, /* 3002 */ XML_SCHEMAP_SRC_SIMPLE_TYPE_4, /* 3003 */ - XML_SCHEMAP_SRC_RESOLVE, /* 3004 */ + XML_SCHEMAP_SRC_RESOLVE, /* 3004 */ XML_SCHEMAP_SRC_RESTRICTION_BASE_OR_SIMPLETYPE, /* 3005 */ XML_SCHEMAP_SRC_LIST_ITEMTYPE_OR_SIMPLETYPE, /* 3006 */ XML_SCHEMAP_SRC_UNION_MEMBERTYPES_OR_SIMPLETYPES, /* 3007 */ XML_SCHEMAP_ST_PROPS_CORRECT_1, /* 3008 */ XML_SCHEMAP_ST_PROPS_CORRECT_2, /* 3009 */ - XML_SCHEMAP_ST_PROPS_CORRECT_3, /* 3010 */ + XML_SCHEMAP_ST_PROPS_CORRECT_3, /* 3010 */ XML_SCHEMAP_COS_ST_RESTRICTS_1_1, /* 3011 */ - XML_SCHEMAP_COS_ST_RESTRICTS_1_2, /* 3012 */ + XML_SCHEMAP_COS_ST_RESTRICTS_1_2, /* 3012 */ XML_SCHEMAP_COS_ST_RESTRICTS_1_3_1, /* 3013 */ XML_SCHEMAP_COS_ST_RESTRICTS_1_3_2, /* 3014 */ XML_SCHEMAP_COS_ST_RESTRICTS_2_1, /* 3015 */ @@ -718,7 +718,7 @@ typedef enum { XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_3, /* 3028 */ XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_4, /* 3029 */ XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_5, /* 3030 */ - XML_SCHEMAP_COS_ST_DERIVED_OK_2_1, /* 3031 */ + XML_SCHEMAP_COS_ST_DERIVED_OK_2_1, /* 3031 */ XML_SCHEMAP_COS_ST_DERIVED_OK_2_2, /* 3032 */ XML_SCHEMAP_S4S_ELEM_NOT_ALLOWED, /* 3033 */ XML_SCHEMAP_S4S_ELEM_MISSING, /* 3034 */ @@ -737,14 +737,14 @@ typedef enum { XML_SCHEMAP_E_PROPS_CORRECT_4, /* 3047 */ XML_SCHEMAP_E_PROPS_CORRECT_5, /* 3048 */ XML_SCHEMAP_E_PROPS_CORRECT_6, /* 3049 */ - XML_SCHEMAP_SRC_INCLUDE, /* 3050 */ + XML_SCHEMAP_SRC_INCLUDE, /* 3050 */ XML_SCHEMAP_SRC_ATTRIBUTE_1, /* 3051 */ XML_SCHEMAP_SRC_ATTRIBUTE_2, /* 3052 */ XML_SCHEMAP_SRC_ATTRIBUTE_3_1, /* 3053 */ XML_SCHEMAP_SRC_ATTRIBUTE_3_2, /* 3054 */ XML_SCHEMAP_SRC_ATTRIBUTE_4, /* 3055 */ XML_SCHEMAP_NO_XMLNS, /* 3056 */ - XML_SCHEMAP_NO_XSI, /* 3057 */ + XML_SCHEMAP_NO_XSI, /* 3057 */ XML_SCHEMAP_COS_VALID_DEFAULT_1, /* 3058 */ XML_SCHEMAP_COS_VALID_DEFAULT_2_1, /* 3059 */ XML_SCHEMAP_COS_VALID_DEFAULT_2_2_1, /* 3060 */ @@ -843,7 +843,7 @@ typedef enum { */ typedef void (XMLCDECL *xmlGenericErrorFunc) (void *ctx, const char *msg, - ...); + ...) ATTRIBUTE_PRINTF(2,3); /** * xmlStructuredErrorFunc: * @userData: user provided data for the error callback @@ -858,38 +858,38 @@ typedef void (XMLCALL *xmlStructuredErrorFunc) (void *userData, xmlErrorPtr erro * Use the following function to reset the two global variables * xmlGenericError and xmlGenericErrorContext. */ -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlSetGenericErrorFunc (void *ctx, xmlGenericErrorFunc handler); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL initGenericErrorDefaultFunc (xmlGenericErrorFunc *handler); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlSetStructuredErrorFunc (void *ctx, xmlStructuredErrorFunc handler); /* * Default message routines used by SAX and Valid context for error * and warning reporting. */ -XMLPUBFUN void XMLCDECL +XMLPUBFUN void XMLCDECL xmlParserError (void *ctx, const char *msg, - ...); -XMLPUBFUN void XMLCDECL + ...) ATTRIBUTE_PRINTF(2,3); +XMLPUBFUN void XMLCDECL xmlParserWarning (void *ctx, const char *msg, - ...); -XMLPUBFUN void XMLCDECL + ...) ATTRIBUTE_PRINTF(2,3); +XMLPUBFUN void XMLCDECL xmlParserValidityError (void *ctx, const char *msg, - ...); -XMLPUBFUN void XMLCDECL + ...) ATTRIBUTE_PRINTF(2,3); +XMLPUBFUN void XMLCDECL xmlParserValidityWarning (void *ctx, const char *msg, - ...); -XMLPUBFUN void XMLCALL + ...) ATTRIBUTE_PRINTF(2,3); +XMLPUBFUN void XMLCALL xmlParserPrintFileInfo (xmlParserInputPtr input); -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL xmlParserPrintFileContext (xmlParserInputPtr input); /* @@ -907,19 +907,19 @@ XMLPUBFUN void XMLCALL xmlResetError (xmlErrorPtr err); XMLPUBFUN int XMLCALL xmlCopyError (xmlErrorPtr from, - xmlErrorPtr to); + xmlErrorPtr to); #ifdef IN_LIBXML /* * Internal callback reporting routine */ -XMLPUBFUN void XMLCALL +XMLPUBFUN void XMLCALL __xmlRaiseError (xmlStructuredErrorFunc schannel, - xmlGenericErrorFunc channel, - void *data, + xmlGenericErrorFunc channel, + void *data, void *ctx, - void *node, - int domain, + void *node, + int domain, int code, xmlErrorLevel level, const char *file, @@ -930,10 +930,10 @@ XMLPUBFUN void XMLCALL int int1, int col, const char *msg, - ...); -XMLPUBFUN void XMLCALL + ...) ATTRIBUTE_PRINTF(16,17); +XMLPUBFUN void XMLCALL __xmlSimpleError (int domain, - int code, + int code, xmlNodePtr node, const char *msg, const char *extra); diff --git a/include/libxml/xmlmemory.h b/include/libxml/xmlmemory.h index ee8328a..8f3b109 100644 --- a/include/libxml/xmlmemory.h +++ b/include/libxml/xmlmemory.h @@ -63,7 +63,7 @@ typedef void (XMLCALL *xmlFreeFunc)(void *mem); * * Returns a pointer to the newly allocated block or NULL in case of error. */ -typedef void *(XMLCALL *xmlMallocFunc)(size_t size); +typedef void *(ATTRIBUTE_ALLOC_SIZE(1) XMLCALL *xmlMallocFunc)(size_t size); /** * xmlReallocFunc: @@ -150,7 +150,7 @@ XMLPUBFUN void XMLCALL XMLPUBFUN void XMLCALL xmlMemoryDump (void); XMLPUBFUN void * XMLCALL - xmlMemMalloc (size_t size); + xmlMemMalloc (size_t size) ATTRIBUTE_ALLOC_SIZE(1); XMLPUBFUN void * XMLCALL xmlMemRealloc (void *ptr,size_t size); XMLPUBFUN void XMLCALL @@ -158,11 +158,11 @@ XMLPUBFUN void XMLCALL XMLPUBFUN char * XMLCALL xmlMemoryStrdup (const char *str); XMLPUBFUN void * XMLCALL - xmlMallocLoc (size_t size, const char *file, int line); + xmlMallocLoc (size_t size, const char *file, int line) ATTRIBUTE_ALLOC_SIZE(1); XMLPUBFUN void * XMLCALL xmlReallocLoc (void *ptr, size_t size, const char *file, int line); XMLPUBFUN void * XMLCALL - xmlMallocAtomicLoc (size_t size, const char *file, int line); + xmlMallocAtomicLoc (size_t size, const char *file, int line) ATTRIBUTE_ALLOC_SIZE(1); XMLPUBFUN char * XMLCALL xmlMemStrdupLoc (const char *str, const char *file, int line); diff --git a/include/libxml/xmlschemas.h b/include/libxml/xmlschemas.h index 556ef89..ebef3a7 100644 --- a/include/libxml/xmlschemas.h +++ b/include/libxml/xmlschemas.h @@ -92,7 +92,7 @@ typedef xmlSchema *xmlSchemaPtr; * * Signature of an error callback from an XSD validation */ -typedef void (XMLCDECL *xmlSchemaValidityErrorFunc) (void *ctx, const char *msg, ...); +typedef void (XMLCDECL *xmlSchemaValidityErrorFunc) (void *ctx, const char *msg, ...) ATTRIBUTE_PRINTF(2,3); /** * xmlSchemaValidityWarningFunc: @@ -102,7 +102,7 @@ typedef void (XMLCDECL *xmlSchemaValidityErrorFunc) (void *ctx, const char *msg, * * Signature of a warning callback from an XSD validation */ -typedef void (XMLCDECL *xmlSchemaValidityWarningFunc) (void *ctx, const char *msg, ...); +typedef void (XMLCDECL *xmlSchemaValidityWarningFunc) (void *ctx, const char *msg, ...) ATTRIBUTE_PRINTF(2,3); /** * A schemas validation context diff --git a/include/libxml/xmlversion.h b/include/libxml/xmlversion.h index 6c5d342..e960f09 100644 --- a/include/libxml/xmlversion.h +++ b/include/libxml/xmlversion.h @@ -29,21 +29,21 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); * * the version string like "1.2.3" */ -#define LIBXML_DOTTED_VERSION "2.7.2" +#define LIBXML_DOTTED_VERSION "2.7.3" /** * LIBXML_VERSION: * * the version number: 1.2.3 value is 10203 */ -#define LIBXML_VERSION 20702 +#define LIBXML_VERSION 20703 /** * LIBXML_VERSION_STRING: * * the version number string, 1.2.3 value is "10203" */ -#define LIBXML_VERSION_STRING "20702" +#define LIBXML_VERSION_STRING "20703" /** * LIBXML_VERSION_EXTRA: @@ -58,7 +58,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); * Macro to check that the libxml version in use is compatible with * the version the software has been compiled against */ -#define LIBXML_TEST_VERSION xmlCheckVersion(20702); +#define LIBXML_TEST_VERSION xmlCheckVersion(20703); #ifndef VMS #if 0 @@ -382,22 +382,74 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); #define LIBXML_ZLIB_ENABLED #endif +#ifdef __GNUC__ +#ifdef HAVE_ANSIDECL_H +#include <ansidecl.h> +#endif + /** * ATTRIBUTE_UNUSED: * * Macro used to signal to GCC unused function parameters */ -#ifdef __GNUC__ -#ifdef HAVE_ANSIDECL_H -#include <ansidecl.h> -#endif + #ifndef ATTRIBUTE_UNUSED #define ATTRIBUTE_UNUSED __attribute__((unused)) #endif + +/** + * ATTRIBUTE_ALLOC_SIZE: + * + * Macro used to indicate to GCC this is an allocator function + */ + +#ifndef ATTRIBUTE_ALLOC_SIZE +# if ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3))) +# define ATTRIBUTE_ALLOC_SIZE(x) __attribute__((alloc_size(x))) +# else +# define ATTRIBUTE_ALLOC_SIZE(x) +# endif #else -#define ATTRIBUTE_UNUSED +# define ATTRIBUTE_ALLOC_SIZE(x) +#endif + +/** + * ATTRIBUTE_PRINTF: + * + * Macro used to indicate to GCC the parameter are printf like + */ + +#ifndef ATTRIBUTE_PRINTF +# if ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3))) +# define ATTRIBUTE_PRINTF(fmt,args) __attribute__((__format__(__printf__,fmt,args))) +# else +# define ATTRIBUTE_PRINTF(fmt,args) +# endif +#else +# define ATTRIBUTE_PRINTF(fmt,args) #endif +#else /* ! __GNUC__ */ +/** + * ATTRIBUTE_UNUSED: + * + * Macro used to signal to GCC unused function parameters + */ +#define ATTRIBUTE_UNUSED +/** + * ATTRIBUTE_ALLOC_SIZE: + * + * Macro used to indicate to GCC this is an allocator function + */ +#define ATTRIBUTE_ALLOC_SIZE(x) +/** + * ATTRIBUTE_PRINTF: + * + * Macro used to indicate to GCC the parameter are printf like + */ +#define ATTRIBUTE_PRINTF(fmt,args) +#endif /* __GNUC__ */ + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/include/libxml/xmlversion.h.in b/include/libxml/xmlversion.h.in index 29cef74..05c9f29 100644 --- a/include/libxml/xmlversion.h.in +++ b/include/libxml/xmlversion.h.in @@ -382,22 +382,74 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); #define LIBXML_ZLIB_ENABLED #endif +#ifdef __GNUC__ +#ifdef HAVE_ANSIDECL_H +#include <ansidecl.h> +#endif + /** * ATTRIBUTE_UNUSED: * * Macro used to signal to GCC unused function parameters */ -#ifdef __GNUC__ -#ifdef HAVE_ANSIDECL_H -#include <ansidecl.h> -#endif + #ifndef ATTRIBUTE_UNUSED #define ATTRIBUTE_UNUSED __attribute__((unused)) #endif + +/** + * ATTRIBUTE_ALLOC_SIZE: + * + * Macro used to indicate to GCC this is an allocator function + */ + +#ifndef ATTRIBUTE_ALLOC_SIZE +# if ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3))) +# define ATTRIBUTE_ALLOC_SIZE(x) __attribute__((alloc_size(x))) +# else +# define ATTRIBUTE_ALLOC_SIZE(x) +# endif #else -#define ATTRIBUTE_UNUSED +# define ATTRIBUTE_ALLOC_SIZE(x) +#endif + +/** + * ATTRIBUTE_PRINTF: + * + * Macro used to indicate to GCC the parameter are printf like + */ + +#ifndef ATTRIBUTE_PRINTF +# if ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3))) +# define ATTRIBUTE_PRINTF(fmt,args) __attribute__((__format__(__printf__,fmt,args))) +# else +# define ATTRIBUTE_PRINTF(fmt,args) +# endif +#else +# define ATTRIBUTE_PRINTF(fmt,args) #endif +#else /* ! __GNUC__ */ +/** + * ATTRIBUTE_UNUSED: + * + * Macro used to signal to GCC unused function parameters + */ +#define ATTRIBUTE_UNUSED +/** + * ATTRIBUTE_ALLOC_SIZE: + * + * Macro used to indicate to GCC this is an allocator function + */ +#define ATTRIBUTE_ALLOC_SIZE(x) +/** + * ATTRIBUTE_PRINTF: + * + * Macro used to indicate to GCC the parameter are printf like + */ +#define ATTRIBUTE_PRINTF(fmt,args) +#endif /* __GNUC__ */ + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/include/libxml/xmlwriter.h b/include/libxml/xmlwriter.h index 31ceb5f..df4509d 100644 --- a/include/libxml/xmlwriter.h +++ b/include/libxml/xmlwriter.h @@ -69,11 +69,13 @@ extern "C" { XMLPUBFUN int XMLCALL xmlTextWriterEndComment(xmlTextWriterPtr writer); XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatComment(xmlTextWriterPtr writer, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(2,3); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatComment(xmlTextWriterPtr writer, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(2,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteComment(xmlTextWriterPtr writer, const xmlChar * @@ -102,12 +104,14 @@ extern "C" { XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatElement(xmlTextWriterPtr writer, const xmlChar * name, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(3,4); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatElement(xmlTextWriterPtr writer, const xmlChar * name, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(3,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteElement(xmlTextWriterPtr writer, const xmlChar * name, @@ -118,14 +122,16 @@ extern "C" { const xmlChar * prefix, const xmlChar * name, const xmlChar * namespaceURI, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(5,6); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatElementNS(xmlTextWriterPtr writer, const xmlChar * prefix, const xmlChar * name, const xmlChar * namespaceURI, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(5,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteElementNS(xmlTextWriterPtr writer, const xmlChar * @@ -141,10 +147,12 @@ extern "C" { */ XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatRaw(xmlTextWriterPtr writer, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(2,3); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatRaw(xmlTextWriterPtr writer, - const char *format, va_list argptr); + const char *format, va_list argptr) + ATTRIBUTE_PRINTF(2,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteRawLen(xmlTextWriterPtr writer, const xmlChar * content, int len); @@ -154,12 +162,14 @@ extern "C" { XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatString(xmlTextWriterPtr writer, const char - *format, ...); + *format, ...) + ATTRIBUTE_PRINTF(2,3); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatString(xmlTextWriterPtr writer, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(2,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteString(xmlTextWriterPtr writer, const xmlChar * content); @@ -193,12 +203,14 @@ extern "C" { XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatAttribute(xmlTextWriterPtr writer, const xmlChar * name, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(3,4); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatAttribute(xmlTextWriterPtr writer, const xmlChar * name, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(3,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteAttribute(xmlTextWriterPtr writer, const xmlChar * name, @@ -209,14 +221,16 @@ extern "C" { const xmlChar * prefix, const xmlChar * name, const xmlChar * namespaceURI, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(5,6); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatAttributeNS(xmlTextWriterPtr writer, const xmlChar * prefix, const xmlChar * name, const xmlChar * namespaceURI, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(5,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteAttributeNS(xmlTextWriterPtr writer, const xmlChar * @@ -242,11 +256,13 @@ extern "C" { XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatPI(xmlTextWriterPtr writer, const xmlChar * target, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(3,4); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatPI(xmlTextWriterPtr writer, const xmlChar * target, - const char *format, va_list argptr); + const char *format, va_list argptr) + ATTRIBUTE_PRINTF(3,0); XMLPUBFUN int XMLCALL xmlTextWriterWritePI(xmlTextWriterPtr writer, const xmlChar * target, @@ -270,10 +286,12 @@ extern "C" { */ XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatCDATA(xmlTextWriterPtr writer, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(2,3); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatCDATA(xmlTextWriterPtr writer, - const char *format, va_list argptr); + const char *format, va_list argptr) + ATTRIBUTE_PRINTF(2,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteCDATA(xmlTextWriterPtr writer, const xmlChar * content); @@ -296,13 +314,15 @@ extern "C" { const xmlChar * name, const xmlChar * pubid, const xmlChar * sysid, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(5,6); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatDTD(xmlTextWriterPtr writer, const xmlChar * name, const xmlChar * pubid, const xmlChar * sysid, - const char *format, va_list argptr); + const char *format, va_list argptr) + ATTRIBUTE_PRINTF(5,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteDTD(xmlTextWriterPtr writer, const xmlChar * name, @@ -332,12 +352,14 @@ extern "C" { XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatDTDElement(xmlTextWriterPtr writer, const xmlChar * name, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(3,4); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatDTDElement(xmlTextWriterPtr writer, const xmlChar * name, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(3,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDElement(xmlTextWriterPtr writer, const xmlChar * @@ -360,12 +382,14 @@ extern "C" { XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatDTDAttlist(xmlTextWriterPtr writer, const xmlChar * name, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(3,4); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriterPtr writer, const xmlChar * name, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(3,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDAttlist(xmlTextWriterPtr writer, const xmlChar * @@ -389,13 +413,15 @@ extern "C" { xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriterPtr writer, int pe, const xmlChar * name, - const char *format, ...); + const char *format, ...) + ATTRIBUTE_PRINTF(4,5); XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriterPtr writer, int pe, const xmlChar * name, const char *format, - va_list argptr); + va_list argptr) + ATTRIBUTE_PRINTF(4,0); XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDInternalEntity(xmlTextWriterPtr writer, int pe, |