diff --git a/CHANGES b/CHANGES index 0079de87e6..87977827e1 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,5 @@ +3581. [bug] Changed the tcp-listen-queue default to 10. [RT #33029] + 3580. [bug] Addressed a possible race in acache.c [RT #33602] 3579. [maint] Updates to PKCS#11 openssl patches, supporting diff --git a/bin/named/config.c b/bin/named/config.c index 93cbd460f6..da06e4b66d 100644 --- a/bin/named/config.c +++ b/bin/named/config.c @@ -98,7 +98,7 @@ options {\n\ statistics-file \"named.stats\";\n\ statistics-interval 60;\n\ tcp-clients 100;\n\ - tcp-listen-queue 3;\n\ + tcp-listen-queue 10;\n\ # tkey-dhkey \n\ # tkey-gssapi-credential \n\ # tkey-domain \n\ diff --git a/bin/named/server.c b/bin/named/server.c index 98662e8a07..2a705fba66 100644 --- a/bin/named/server.c +++ b/bin/named/server.c @@ -5271,8 +5271,8 @@ load_configuration(const char *filename, ns_server_t *server, result = ns_config_get(maps, "tcp-listen-queue", &obj); INSIST(result == ISC_R_SUCCESS); ns_g_listen = cfg_obj_asuint32(obj); - if (ns_g_listen < 3) - ns_g_listen = 3; + if ((ns_g_listen > 0) && (ns_g_listen < 10)) + ns_g_listen = 10; /* * Configure the interface manager according to the "listen-on" diff --git a/doc/arm/Bv9ARM-book.xml b/doc/arm/Bv9ARM-book.xml index c6d03a21b3..0213beb150 100644 --- a/doc/arm/Bv9ARM-book.xml +++ b/doc/arm/Bv9ARM-book.xml @@ -8576,14 +8576,15 @@ avoid-v6-udp-ports { 40000; range 50000 60000; }; tcp-listen-queue - The listen queue depth. The default and minimum is 3. + The listen queue depth. The default and minimum is 10. If the kernel supports the accept filter "dataready" this also controls how many TCP connections that will be queued in kernel space waiting for - some data before being passed to accept. Values less than 3 - will be - silently raised. + some data before being passed to accept. Nonzero values + less than 10 will be silently raised. A value of 0 may also + be used; on most platforms this sets the listen queue + length to a system-defined default value.