On Wed, Mar 19, 2025 at 06:23:56PM -0400, Taylor Blau wrote: > For those users and others who wish to more finely tune the OS's > keepalive behavior, expose configuration and environment variables which > allow setting curl's KEEPIDLE, KEEPINTVL, and KEEPCNT options. OK. I have never wanted those myself, but I have no problem with other people using them. ;) The implementation mostly looks as I'd expect, but... > +http.keepAliveIdle:: > + Specifies how long in seconds to wait on an idle connection > + before sending TCP keepalive probes (if supported by the OS). If > + unset, curl's default value is used. Can be overridden by the > + `GIT_HTTP_KEEPALIVE_IDLE` environment variable. ...while this environment variable (and its siblings) makes sense to me.... > @@ -1382,6 +1409,10 @@ void http_init(struct remote *remote, const char *url, int proactive_auth) > ssl_cert_password_required = 1; > } > > + set_long_from_env(&curl_tcp_keepidle, "GIT_TCP_KEEPIDLE"); > + set_long_from_env(&curl_tcp_keepintvl, "GIT_TCP_KEEPINTVL"); > + set_long_from_env(&curl_tcp_keepcnt, "GIT_TCP_KEEPCNT"); ...we seem to use different names in the code. I think the ones mentioning HTTP make the most sense, to match the config (and since this only affects curl). -Peff