mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2024-12-25 23:21:26 +03:00
Annotate functions with __attribute__((no_sanitize))
This commit is contained in:
parent
f9fce96313
commit
44e7a0d5f7
2
dict.c
2
dict.c
@ -372,6 +372,7 @@ found_pool:
|
||||
* http://burtleburtle.net/bob/hash/doobs.html
|
||||
*/
|
||||
|
||||
ATTRIBUTE_NO_SANITIZE("unsigned-integer-overflow")
|
||||
static uint32_t
|
||||
xmlDictComputeBigKey(const xmlChar* data, int namelen, int seed) {
|
||||
uint32_t hash;
|
||||
@ -404,6 +405,7 @@ xmlDictComputeBigKey(const xmlChar* data, int namelen, int seed) {
|
||||
*
|
||||
* Neither of the two strings must be NULL.
|
||||
*/
|
||||
ATTRIBUTE_NO_SANITIZE("unsigned-integer-overflow")
|
||||
static unsigned long
|
||||
xmlDictComputeBigQKey(const xmlChar *prefix, int plen,
|
||||
const xmlChar *name, int len, int seed)
|
||||
|
2
hash.c
2
hash.c
@ -79,6 +79,7 @@ struct _xmlHashTable {
|
||||
* xmlHashComputeKey:
|
||||
* Calculate the hash key
|
||||
*/
|
||||
ATTRIBUTE_NO_SANITIZE("unsigned-integer-overflow")
|
||||
static unsigned long
|
||||
xmlHashComputeKey(xmlHashTablePtr table, const xmlChar *name,
|
||||
const xmlChar *name2, const xmlChar *name3) {
|
||||
@ -109,6 +110,7 @@ xmlHashComputeKey(xmlHashTablePtr table, const xmlChar *name,
|
||||
return (value % table->size);
|
||||
}
|
||||
|
||||
ATTRIBUTE_NO_SANITIZE("unsigned-integer-overflow")
|
||||
static unsigned long
|
||||
xmlHashComputeQKey(xmlHashTablePtr table,
|
||||
const xmlChar *prefix, const xmlChar *name,
|
||||
|
7
libxml.h
7
libxml.h
@ -72,6 +72,13 @@ int vfprintf(FILE *, const char *, va_list);
|
||||
#define XML_POP_WARNINGS
|
||||
#endif
|
||||
|
||||
#if defined(__clang__) || \
|
||||
(defined(__GNUC__) && (__GNUC__ >= 8))
|
||||
#define ATTRIBUTE_NO_SANITIZE(arg) __attribute__((no_sanitize(arg)))
|
||||
#else
|
||||
#define ATTRIBUTE_NO_SANITIZE(arg)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Internal variable indicating if a callback has been registered for
|
||||
* node creation/destruction. It avoids spending a lot of time in locking
|
||||
|
1
xpath.c
1
xpath.c
@ -7497,6 +7497,7 @@ xmlXPathMultValues(xmlXPathParserContextPtr ctxt) {
|
||||
* The numeric operators convert their operands to numbers as if
|
||||
* by calling the number function.
|
||||
*/
|
||||
ATTRIBUTE_NO_SANITIZE("float-divide-by-zero")
|
||||
void
|
||||
xmlXPathDivValues(xmlXPathParserContextPtr ctxt) {
|
||||
xmlXPathObjectPtr arg;
|
||||
|
Loading…
Reference in New Issue
Block a user