Thread (112 messages) 112 messages, 10 authors, 2021-09-13

Re: [PATCH v2 8/8] http: don't hardcode the value of CURL_SOCKOPT_OK

From: Jeff King <hidden>
Date: 2021-09-10 15:17:42

On Fri, Sep 10, 2021 at 01:04:33PM +0200, Ævar Arnfjörð Bjarmason wrote:
Use the new git-curl-compat.h header to define CURL_SOCKOPT_OK to its
known value if we're on an older curl version that doesn't have it. It
was hardcoded in http.c in a15d069a198 (http: enable keepalive on TCP
sockets, 2013-10-12).
Thanks for splitting this one out. I agree it's unlike the rest.
+/**
+ * CURL_SOCKOPT_OK was added in 7.21.5, released in April 2011.
+ *
+ * This should be safe as CURL_SOCKOPT_OK has always been a macro, not
+ * an enum field (checked on curl version 7.78.0, released on July 19,
+ * 2021). Even if that were to change the value of "0" for "OK" is
+ * unlikely to change.
+ */
+#ifndef CURL_SOCKOPT_OK
+#define CURL_SOCKOPT_OK 0
+#endif
I agree this is probably fine if it later becomes an enum. But it would
be easy enough to just do the version-number check here, wouldn't it?
That would be even safer, and using the #ifndef doesn't really buy us
much. We still have to annotate the version and date in a comment as you
did, because we want to know when it is time to drop support.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help