mirror of https://github.com/getdnsapi/getdns.git
commit
6972c99268
|
@ -12,5 +12,5 @@
|
||||||
branch = develop
|
branch = develop
|
||||||
[submodule "src/ssl_dane"]
|
[submodule "src/ssl_dane"]
|
||||||
path = src/ssl_dane
|
path = src/ssl_dane
|
||||||
url = https://github.com/banburybill/ssl_dane
|
url = https://github.com/getdnsapi/ssl_dane
|
||||||
branch = feature/windows-native-build
|
branch = getdns
|
||||||
|
|
|
@ -489,9 +489,19 @@ if (NOT ENABLE_STUB_ONLY)
|
||||||
|
|
||||||
set(CMAKE_REQUIRED_INCLUDES ${LIBUNBOUND_INCLUDE_DIR})
|
set(CMAKE_REQUIRED_INCLUDES ${LIBUNBOUND_INCLUDE_DIR})
|
||||||
set(CMAKE_REQUIRED_LIBRARIES ${LIBUNBOUND_LIBRARIES})
|
set(CMAKE_REQUIRED_LIBRARIES ${LIBUNBOUND_LIBRARIES})
|
||||||
|
|
||||||
|
check_symbol_exists(ub_ctx_set_stub "unbound.h" HAVE_UB_CTX_SET_STUB)
|
||||||
|
|
||||||
|
if (ENABLE_UNBOUND_EVENT_API)
|
||||||
check_include_file(unbound-event.h HAVE_UNBOUND_EVENT_H)
|
check_include_file(unbound-event.h HAVE_UNBOUND_EVENT_H)
|
||||||
check_symbol_exists(ub_ctx_create_ub_event "unbound-event.h" HAVE_UNBOUND_EVENT_API)
|
check_symbol_exists(ub_ctx_create_ub_event "unbound-event.h" HAVE_UNBOUND_EVENT_API)
|
||||||
check_symbol_exists(ub_ctx_set_stub "unbound-event.h" HAVE_UB_CTX_SET_STUB)
|
endif ()
|
||||||
|
else ()
|
||||||
|
# Ensure we're not using libunbound items.
|
||||||
|
set(HAVE_LIBUNBOUND 0)
|
||||||
|
set(HAVE_UNBOUND_EVENT_H 0)
|
||||||
|
set(HAVE_UNBOUND_EVENT_API 0)
|
||||||
|
set(HAVE_UB_CTX_SET_STUB 0)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
# Event loop extension
|
# Event loop extension
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit 187838104f3cfc9634148ae41a717e00c0d68e67
|
Subproject commit afd5b88687f05554513d9caf000f08904e32e6a4
|
|
@ -53,21 +53,18 @@ on 1 byte), but shoehorning those bytes into integers efficiently is messy.
|
||||||
#include "util/storage/lookup3.h"
|
#include "util/storage/lookup3.h"
|
||||||
#include <stdio.h> /* defines printf for tests */
|
#include <stdio.h> /* defines printf for tests */
|
||||||
#include <time.h> /* defines time_t for timings in the test */
|
#include <time.h> /* defines time_t for timings in the test */
|
||||||
/*#include <stdint.h> defines uint32_t etc (from config.h) */
|
|
||||||
#include <sys/param.h> /* attempt to define endianness */
|
#if defined(HAVE_TARGET_ENDIANNESS)
|
||||||
#ifdef HAVE_SYS_TYPES_H
|
# if defined(TARGET_IS_BIG_ENDIAN)
|
||||||
# include <sys/types.h> /* attempt to define endianness (solaris) */
|
# define HASH_LITTLE_ENDIAN 0
|
||||||
#endif
|
# define HASH_BIG_ENDIAN 1
|
||||||
#if defined(linux) || defined(__OpenBSD__)
|
|
||||||
# ifdef HAVE_ENDIAN_H
|
|
||||||
# include <endian.h> /* attempt to define endianness */
|
|
||||||
# else
|
# else
|
||||||
# include <machine/endian.h> /* on older OpenBSD */
|
# define HASH_LITTLE_ENDIAN 1
|
||||||
# endif
|
# define HASH_BIG_ENDIAN 0
|
||||||
#endif
|
|
||||||
#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__DragonFly__)
|
|
||||||
#include <sys/endian.h> /* attempt to define endianness */
|
|
||||||
# endif
|
# endif
|
||||||
|
#else
|
||||||
|
# error "Target endianness required."
|
||||||
|
#endif /* defined(HAVE_TARGET_ENDIANNESS) */
|
||||||
|
|
||||||
/* random initial value */
|
/* random initial value */
|
||||||
static uint32_t raninit = (uint32_t)0xdeadbeef;
|
static uint32_t raninit = (uint32_t)0xdeadbeef;
|
||||||
|
@ -78,36 +75,6 @@ hash_set_raninit(uint32_t v)
|
||||||
raninit = v;
|
raninit = v;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* My best guess at if you are big-endian or little-endian. This may
|
|
||||||
* need adjustment.
|
|
||||||
*/
|
|
||||||
#if (defined(__BYTE_ORDER) && defined(__LITTLE_ENDIAN) && \
|
|
||||||
__BYTE_ORDER == __LITTLE_ENDIAN) || \
|
|
||||||
(defined(i386) || defined(__i386__) || defined(__i486__) || \
|
|
||||||
defined(__i586__) || defined(__i686__) || defined(vax) || defined(MIPSEL) || defined(__x86))
|
|
||||||
# define HASH_LITTLE_ENDIAN 1
|
|
||||||
# define HASH_BIG_ENDIAN 0
|
|
||||||
#elif (defined(__BYTE_ORDER) && defined(__BIG_ENDIAN) && \
|
|
||||||
__BYTE_ORDER == __BIG_ENDIAN) || \
|
|
||||||
(defined(sparc) || defined(__sparc) || defined(__sparc__) || defined(POWERPC) || defined(mc68000) || defined(sel))
|
|
||||||
# define HASH_LITTLE_ENDIAN 0
|
|
||||||
# define HASH_BIG_ENDIAN 1
|
|
||||||
#elif defined(_MACHINE_ENDIAN_H_)
|
|
||||||
/* test for machine_endian_h protects failure if some are empty strings */
|
|
||||||
# if defined(_BYTE_ORDER) && defined(_BIG_ENDIAN) && _BYTE_ORDER == _BIG_ENDIAN
|
|
||||||
# define HASH_LITTLE_ENDIAN 0
|
|
||||||
# define HASH_BIG_ENDIAN 1
|
|
||||||
# endif
|
|
||||||
# if defined(_BYTE_ORDER) && defined(_LITTLE_ENDIAN) && _BYTE_ORDER == _LITTLE_ENDIAN
|
|
||||||
# define HASH_LITTLE_ENDIAN 1
|
|
||||||
# define HASH_BIG_ENDIAN 0
|
|
||||||
# endif /* _MACHINE_ENDIAN_H_ */
|
|
||||||
#else
|
|
||||||
# define HASH_LITTLE_ENDIAN 0
|
|
||||||
# define HASH_BIG_ENDIAN 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define hashsize(n) ((uint32_t)1<<(n))
|
#define hashsize(n) ((uint32_t)1<<(n))
|
||||||
#define hashmask(n) (hashsize(n)-1)
|
#define hashmask(n) (hashsize(n)-1)
|
||||||
#define rot(x,k) (((x)<<(k)) | ((x)>>(32-(k))))
|
#define rot(x,k) (((x)<<(k)) | ((x)>>(32-(k))))
|
||||||
|
|
Loading…
Reference in New Issue