bind9/lib/isc
Ondřej Surý 798333d456 Allow size == 0 in isc_mem_{get,allocate,reallocate}
Calls to jemalloc extended API with size == 0 ends up in undefined
behaviour.  This commit makes the isc_mem_get() and friends calls
more POSIX aligned:

  If size is 0, either a null pointer or a unique pointer that can be
  successfully passed to free() shall be returned.

We picked the easier route (which have been already supported in the old
code) and return NULL on calls to the API where size == 0.
2021-07-09 15:58:02 +02:00
..
include Clean up isc_mempool API 2021-07-09 15:58:02 +02:00
netmgr Replace locked mempools with memory contexts 2021-07-09 15:58:02 +02:00
tests Clean up isc_mempool API 2021-07-09 15:58:02 +02:00
.gitignore [master] update gitignore files; use rev-parse to get srcid 2014-06-17 13:49:30 -07:00
aes.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
app.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
assertions.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
astack.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
backtrace.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
base32.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
base64.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
bind9.c Remove LIB<*>_EXTERNAL_DATA defines 2021-07-06 05:33:48 +00:00
buffer.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
commandline.c Remove LIB<*>_EXTERNAL_DATA defines 2021-07-06 05:33:48 +00:00
condition.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
counter.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
crc64.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
dir.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
entropy.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
entropy_private.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
errno.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
errno2result.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
errno2result.h Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
error.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
event.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
file.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
fsaccess.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
fsaccess_common.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
fsaccess_common_p.h update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
glob.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
hash.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
heap.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
hex.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
hmac.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
hp.c Add new isc_managers API to simplify <*>mgr create/destroy 2021-05-07 10:19:05 -07:00
ht.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
httpd.c Refactor the interface handling in the netmgr 2021-05-26 09:43:12 +02:00
interfaceiter.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
iterated_hash.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
jemalloc_shim.h Use system allocator when jemalloc is unavailable 2021-07-09 15:58:02 +02:00
lex.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
lib.c Remove priority from attribute constructor/destructor 2021-05-27 08:02:21 +02:00
log.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
Makefile.am Use system allocator when jemalloc is unavailable 2021-07-09 15:58:02 +02:00
managers.c Destroy netmgr before destroying taskmgr 2021-05-07 14:28:30 -07:00
md.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
mem.c Allow size == 0 in isc_mem_{get,allocate,reallocate} 2021-07-09 15:58:02 +02:00
mem_p.h Use library constructor/destructor to initialize OpenSSL 2021-02-18 19:33:54 +01:00
meminfo.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
mutex.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
mutexblock.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
net.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
netaddr.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
netmgr_p.h Destroy netmgr before destroying taskmgr 2021-05-07 14:28:30 -07:00
netscope.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
nonce.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
openssl_shim.c Refactor TLSDNS module to work with libuv/ssl directly 2021-01-25 09:19:22 +01:00
openssl_shim.h Refactor TLSDNS module to work with libuv/ssl directly 2021-01-25 09:19:22 +01:00
os.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
parseint.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
pk11.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
pk11_api.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
pk11_result.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
pool.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
portset.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
queue.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
quota.c Refactor netmgr and add more unit tests 2020-12-01 16:47:07 +01:00
radix.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
random.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
ratelimiter.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
regex.c Reformat sources using clang-format-11 2020-12-08 18:36:23 +01:00
region.c Reformat sources using clang-format-11 2020-12-08 18:36:23 +01:00
resource.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
result.c Replace netmgr quantum with loop-preventing barrier 2021-05-17 11:59:19 +02:00
rwlock.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
safe.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
serial.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
siphash.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
sockaddr.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
socket.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
socket_p.h Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
stats.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
stdio.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
stdtime.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
string.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
symtab.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00
syslog.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
task.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
task_p.h Destroy netmgr before destroying taskmgr 2021-05-07 14:28:30 -07:00
taskpool.c Refactor taskmgr to run on top of netmgr 2021-04-20 23:22:28 +02:00
thread.c Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
time.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
timer.c The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
timer_p.h Add new isc_managers API to simplify <*>mgr create/destroy 2021-05-07 10:19:05 -07:00
tls.c Remove ISC_MEM_DEBUGSIZE and ISC_MEM_DEBUGRECORD 2021-07-09 15:58:02 +02:00
tls_p.h Use library constructor/destructor to initialize OpenSSL 2021-02-18 19:33:54 +01:00
tm.c Use isdigit instead of checking character range 2021-05-05 19:15:33 +02:00
trampoline.c Remove ISC_MEM_DEBUGSIZE and ISC_MEM_DEBUGRECORD 2021-07-09 15:58:02 +02:00
trampoline_p.h Completely remove BIND 9 Windows support 2021-06-09 14:35:14 +02:00
url.c cast (char) to (unsigned char) when calling is*() 2021-03-15 14:18:03 +11:00
utf8.c update all copyright headers to eliminate the typo 2020-09-14 16:20:40 -07:00