bind9/lib/isc
Ondřej Surý 964891a794
Limit the number of DNS message processed from a single TCP read
The single TCP read can create as much as 64k divided by the minimum
size of the DNS message.  This can clog the processing thread and trash
the memory allocator because we need to do as much as ~20k allocations in
a single UV loop tick.

Limit the number of the DNS messages processed in a single UV loop tick
to just single DNS message and limit the number of the outstanding DNS
messages back to 23.  This effectively limits the number of pipelined
DNS messages to that number (this is the limit we already had before).

This reverts commit 780a89012d.
2024-06-10 18:43:46 +02:00
..
include Add helper function isc_sockaddr_disabled 2024-06-03 13:52:37 +00:00
netmgr Limit the number of DNS message processed from a single TCP read 2024-06-10 18:43:46 +02:00
.gitignore
aes.c
app.c
assertions.c
astack.c
backtrace.c
base32.c
base64.c
buffer.c
commandline.c
condition.c
counter.c
crc64.c
dir.c
entropy.c
entropy_private.h
errno.c
errno2result.c Translate POSIX errorcode EROFS to ISC_R_NOPERM 2023-06-14 13:48:25 +01:00
errno2result.h
error.c
event.c
file.c
glob.c
hash.c
heap.c
hex.c
hmac.c NetBSD has added 'hmac' to libc so rename our uses of hmac 2023-12-14 11:14:04 +11:00
ht.c Fix case insensitive matching in isc_ht hash table implementation 2024-02-11 11:23:28 +01:00
httpd.c Explicitly cast chars to unsigned chars for <ctype.h> functions 2023-09-22 17:01:59 +02:00
interfaceiter.c
iterated_hash.c Clear OpenSSL errors on SHA failures 2023-09-01 13:45:34 +10:00
jemalloc_shim.h Make it possible to create memory contexts backed by jemalloc arenas 2023-09-05 15:02:30 +02:00
lex.c
lib.c remove isc_bind9 variable 2023-02-09 10:07:39 -08:00
log.c Re-write remove_old_tsversions and greatest_version 2023-05-03 10:39:46 +02:00
Makefile.am Replace isc_fsaccess API with more secure file creation 2023-03-31 16:47:15 +02:00
managers.c
md.c Call ERR_clear_error on EVP_MD_fetch or EVP_##alg error 2023-09-06 15:47:05 +00:00
mem.c Add workaround for jemalloc linking order 2024-01-18 10:40:46 +01:00
mem_p.h Improve stability of the jemalloc workaround 2023-11-01 18:04:07 +01:00
meminfo.c
mutex.c
mutexblock.c
net.c Clang-format header file changes 2024-05-17 16:21:35 -07:00
netaddr.c Update the source code formatting using clang-format-17 2023-10-18 09:02:57 +02:00
netmgr_p.h
netscope.c
nonce.c
openssl_shim.c
openssl_shim.h
os.c Add isc_os_umask() function to get current umask 2023-03-31 16:47:15 +02:00
os_p.h
parseint.c
picohttpparser.c Update sources to Clang 18 formatting 2024-04-23 12:48:56 +00:00
picohttpparser.h
pool.c
portset.c
quota.c
radix.c Move isc_mem_put to after node is checked for equality 2023-05-29 13:27:51 +10:00
random.c
ratelimiter.c Don't use reference counting in isc_timer unit 2023-01-18 22:39:26 +01:00
regex.c
region.c
resource.c
result.c Limit isccc_cc_fromwire recursion depth 2023-09-07 19:50:27 +02:00
rwlock.c
safe.c
serial.c
siphash.c Accept 'in=NULL' with 'inlen=0' in isc_{half}siphash24 2023-01-10 18:36:08 +11:00
sockaddr.c Add helper function isc_sockaddr_disabled 2024-06-03 13:52:37 +00:00
stats.c Move atomic statscounter next to the non-atomic definition 2024-01-03 20:36:35 +03:00
stdio.c
stdtime.c
string.c
symtab.c
syslog.c
task.c Fix a data race in isc_task_purgeevent() 2024-05-17 12:08:27 +00:00
task_p.h
taskpool.c
thread.c
time.c
timer.c Fix a data race in isc_task_purgeevent() 2024-05-17 12:08:27 +00:00
timer_p.h
tls.c Take ownership of pointer before freeing 2023-09-01 14:03:49 +10:00
tls_p.h
tm.c
trampoline.c Improve stability of the jemalloc workaround 2023-11-01 18:04:07 +01:00
trampoline_p.h
url.c Update the source code formatting using clang-format-17 2023-10-18 09:02:57 +02:00
utf8.c