Ondřej Surý
e582d085de
Fix InterlockedCompareExchange64Acquire -> InterlockedCompareExchangeAcquire64 and variants
2018-08-29 22:23:46 +02:00
Ondřej Surý
d67b07c115
gai_strerror on Windows is just 'char *'
2018-08-29 22:05:09 +02:00
Ondřej Surý
c74ee5bb17
Remove *_loadnew from libdns.def.in
2018-08-29 21:36:27 +02:00
Ondřej Surý
d967e107f6
Remove isc_net_pton and isc_net_ntop from Windows libisc.def.in
2018-08-29 21:21:52 +02:00
Ondřej Surý
aa3e33575d
Fixup Windows build after strerr changes
2018-08-29 21:21:52 +02:00
Evan Hunt
1656152d76
Ensure that POSIX strerror_r variant is use even when _GNU_SOURCE is enabled by default
2018-08-29 13:31:28 +02:00
Ondřej Surý
cacd21c075
Enable system extensions macros using AC_USE_SYSTEM_EXTENSIONS
...
and remove handcrafted code that enabled __EXTENSIONS__ and _GNU_SOURCE
2018-08-29 13:31:27 +02:00
Evan Hunt
3c18b7d3fd
silence "missing print.h" warning
2018-08-28 15:59:20 -07:00
Ondřej Surý
dc410ce58f
Remove broken @ISC_IPV6_H@ placeholder from Makefile.in
2018-08-28 21:15:32 +02:00
Witold Kręcicki
103b60e0bc
Pre-merge nits
2018-08-28 20:25:36 +02:00
Evan Hunt
cddb699690
style nits
2018-08-28 20:19:47 +02:00
Mukund Sivaraman
700614a0eb
Set SO_SNDBUF
2018-08-28 20:19:47 +02:00
Witold Kręcicki
79ce86090a
rndc reconfig should not touch already loaded zones, some refactoring of dns_{zone,view,zt}_{async,}load
2018-08-28 17:04:45 +02:00
Ondřej Surý
fecbc7923a
Remove isc_keyboard family of functions as they were not used anywhere
2018-08-28 14:37:30 +02:00
Ondřej Surý
91aa405778
Update the isc_refcount documentation in doxygen format
2018-08-28 13:15:59 +02:00
Ondřej Surý
0f24c55d38
Refactor *_destroy and *_detach functions to unified order of actions.
...
This properly orders clearing the freed pointer and calling isc_refcount_destroy
as early as possible to have ability to put proper memory barrier when cleaning
up reference counting.
2018-08-28 13:15:59 +02:00
Ondřej Surý
9d5df99a9d
Directly use return value of atomic_compare_exchange_strong_explicit insteaf of comparing expected value
2018-08-28 12:15:39 +02:00
Ondřej Surý
b5709e5531
Explicitly load atomic values in lib/isc/rwlock.c
2018-08-28 12:15:39 +02:00
Ondřej Surý
d1d15c03e2
Switch everything back to relaxed memory ordering
2018-08-28 12:15:39 +02:00
Ondřej Surý
69b9b9ec77
Remove no-op NODE_STRONG(UN)?LOCK and rename NODE_WEAK(UN)?LOCK to just NODE_(UN)?LOCK
2018-08-28 12:15:39 +02:00
Ondřej Surý
bef8ac5bae
Rewrite isc_refcount API to fetch_and_<op>, instead of former <op>_and_<fetch>
2018-08-28 12:15:39 +02:00
Ondřej Surý
7fbbf09d21
Remove checks for atomic rwlock from rbtdb.cz and zone.c
2018-08-28 12:15:39 +02:00
Ondřej Surý
2b74478c8f
Remove check for atomic isc_refcount in dns/rbt.h and always use isc_refcount
2018-08-28 12:15:39 +02:00
Ondřej Surý
93e8ba1b50
Rewrite reference counting in isc_mem to use isc_refcount API
2018-08-28 12:15:39 +02:00
Ondřej Surý
0a7535ac81
isc_refcount_init() now doesn't return isc_result_t and asserts on failed initialization
2018-08-28 12:15:39 +02:00
Ondřej Surý
e9e55cbd03
Remove isc_atomic usage from rwlock.c and stats.c
2018-08-28 12:15:39 +02:00
Ondřej Surý
e119de4169
Replace arch specific atomic.h with global atomic.h header using either stdatomic, __atomic or __sync primitives
2018-08-28 12:15:39 +02:00
Ondřej Surý
facc390b54
Update configure.in to check for both stdatomic.h and __atomic builtins
2018-08-28 12:15:39 +02:00
Ondřej Surý
f1d658764c
Remove dead check for long long support
2018-08-28 10:31:49 +02:00
Ondřej Surý
52e1c45156
Assume PTHREAD_ONCE_INIT is not broken (remove support for ancient Solaris)
2018-08-28 10:31:48 +02:00
Ondřej Surý
a11a271b28
Assume non-broken recvmsg
2018-08-28 10:31:48 +02:00
Ondřej Surý
1672935717
Use strerror_r from POSIX.1-2001 (strerror_s on Windows) instead of custom isc__strerror()
2018-08-28 10:31:48 +02:00
Ondřej Surý
efd613e874
memmove, strtoul, and strcasestr functions are part of ISO C90, remove the compatibility shim
2018-08-28 10:31:48 +02:00
Ondřej Surý
1e1804bb96
getifaddrs() is available on all supported Unix platforms (Linux, BSDs, macOS and Solaris)
2018-08-28 10:31:48 +02:00
Ondřej Surý
62fb0759e9
Assume always working getaddrinfo/getnameinfo implemenation
2018-08-28 10:31:48 +02:00
Ondřej Surý
29c853f500
Remove check for isc_port_t; Windows never have it, Unix always have it
2018-08-28 10:31:48 +02:00
Ondřej Surý
40f7680efa
Ignore sockaddr_{sin,sin6,sun}.{sin,sin6,sun}_len even on systems that define it
2018-08-28 10:31:48 +02:00
Ondřej Surý
e6dc08b06c
Always assume BSD4.4 msghdr version
2018-08-28 10:31:48 +02:00
Ondřej Surý
388d6db5a1
Remove support for legacy systems without inet_{ntop,pton} w/ IPv6 support
2018-08-28 10:31:48 +02:00
Ondřej Surý
3ab9c99567
Remove support for legacy systems without in6_pktinfo
2018-08-28 10:31:48 +02:00
Ondřej Surý
8c526df306
Remove support for legacy systems without sin6_scope_id
2018-08-28 10:31:48 +02:00
Ondřej Surý
4150a86046
Remove support for legacy platforms without in6addr_loopback
2018-08-28 10:31:48 +02:00
Ondřej Surý
5083a42072
Remove support for legacy systems without in6addr_any
2018-08-28 10:31:48 +02:00
Ondřej Surý
b962f47d3e
Remove support for pre-RFC2133 IPv6 implementation (in_addr6)
2018-08-28 10:31:48 +02:00
Ondřej Surý
7b21bbb7c1
Require IPv6 support from the OS
2018-08-28 10:31:47 +02:00
Ondřej Surý
00ca487fec
We always want IPv6
2018-08-28 10:31:47 +02:00
Ondřej Surý
c19713aa51
Remove support for legacy SGI IRIX
2018-08-28 10:31:47 +02:00
Ondřej Surý
9f4528c623
Remove legacy support for Compaq TruCluster
2018-08-28 10:31:47 +02:00
Ondřej Surý
02e349c051
Remove legacy support for HP-UX
2018-08-28 10:31:47 +02:00
Ondřej Surý
b02de1ec30
Remove legacy support for SunOS
2018-08-28 10:31:47 +02:00