On Tue, Aug 19, 2025 at 2:45 PM <rpl...@apache.org> wrote:
>
> Author: rpluem
> Date: Tue Aug 19 12:45:15 2025
> New Revision: 1927885
>
> Log:
> Make the value set for the socket option TCP_DEFER_ACCEPT configurable
>
> * include/ap_listen.h:
>   - Add prototype for include/ap_listen.heraccept
>   - Wire in new directive ListenTCPDeferAccept
>
> * include/mpm_common.h:
>   Define the previous static value as default value via 
> DEFAULT_TCP_DEFER_ACCEPT
>
> * server/listen.c:
>   - Add static int ap_listentcpdeferaccept
>   - ap_apply_accept_filter: Use value of ap_listenbacklog for setting 
> TCP_DEFER_ACCEPT
>   - ap_listen_pre_config: Set default value
>   - Add ap_set_listentcpdeferaccept
>
> Modified:
>    httpd/httpd/trunk/include/ap_listen.h
>    httpd/httpd/trunk/include/mpm_common.h
>    httpd/httpd/trunk/server/listen.c
[]
> --- httpd/httpd/trunk/server/listen.c   Tue Aug 19 12:45:02 2025        
> (r1927884)
> +++ httpd/httpd/trunk/server/listen.c   Tue Aug 19 12:45:15 2025        
> (r1927885)
[]
> @@ -287,7 +288,7 @@ static void ap_apply_accept_filter(apr_p
>                            accf);
>          }
>  #else
> -        rv = apr_socket_opt_set(s, APR_TCP_DEFER_ACCEPT, 30);
> +        rv = apr_socket_opt_set(s, APR_TCP_DEFER_ACCEPT, ap_listenbacklog);

Should this use ap_listentcpdeferaccept rather than ap_listenbacklog?

>          if (rv != APR_SUCCESS && !APR_STATUS_IS_ENOTIMPL(rv)) {
>              ap_log_perror(APLOG_MARK, APLOG_WARNING, rv, p, APLOGNO(00076)
>                                "Failed to enable APR_TCP_DEFER_ACCEPT");


Cheers;
Yann.

Reply via email to