summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfsbs <fsbs@users.noreply.github.com>2021-11-05 12:44:01 +0000
committerfsbs <fsbs@users.noreply.github.com>2021-11-05 13:44:01 +0100
commit7f2bf316b7fd23d61d6da71a1bc1b8e737dedbf5 (patch)
tree3a7c32c8d6d8dd750c0eafa985508be4a517404a
parent13de1dd5ac1b871834468754ca4a409a8358fae3 (diff)
downloadpycurl-7f2bf316b7fd23d61d6da71a1bc1b8e737dedbf5.tar.gz
Add unsetopt support for all curl_slist options
-rw-r--r--src/easyopt.c53
1 files changed, 48 insertions, 5 deletions
diff --git a/src/easyopt.c b/src/easyopt.c
index 026eb46..0ba38f1 100644
--- a/src/easyopt.c
+++ b/src/easyopt.c
@@ -65,10 +65,57 @@ util_curl_unsetopt(CurlObject *self, int option)
Py_XDECREF(self->share);
self->share = NULL;
break;
+ case CURLOPT_HTTPHEADER:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->httpheader);
+ break;
+#if LIBCURL_VERSION_NUM >= MAKE_LIBCURL_VERSION(7, 37, 0)
+ case CURLOPT_PROXYHEADER:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->proxyheader);
+ break;
+#endif
+ case CURLOPT_HTTP200ALIASES:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->http200aliases);
+ break;
+ case CURLOPT_QUOTE:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->quote);
+ break;
+ case CURLOPT_POSTQUOTE:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->postquote);
+ break;
+ case CURLOPT_PREQUOTE:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->prequote);
+ break;
+ case CURLOPT_TELNETOPTIONS:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->telnetoptions);
+ break;
+#ifdef HAVE_CURLOPT_RESOLVE
+ case CURLOPT_RESOLVE:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->resolve);
+ break;
+#endif
+#ifdef HAVE_CURL_7_20_0_OPTS
+ case CURLOPT_MAIL_RCPT:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->mail_rcpt);
+ break;
+#endif
+#ifdef HAVE_CURLOPT_CONNECT_TO
+ case CURLOPT_CONNECT_TO:
+ SETOPT((void *) 0);
+ Py_CLEAR(self->connect_to);
+ break;
+#endif
case CURLOPT_HTTPPOST:
SETOPT((void *) 0);
Py_CLEAR(self->httppost);
- self->httppost = NULL;
/* FIXME: what about data->set.httpreq ?? */
break;
case CURLOPT_INFILESIZE:
@@ -107,10 +154,6 @@ util_curl_unsetopt(CurlObject *self, int option)
case CURLOPT_SERVICE_NAME:
case CURLOPT_PROXY_SERVICE_NAME:
#endif
- case CURLOPT_HTTPHEADER:
-#if LIBCURL_VERSION_NUM >= MAKE_LIBCURL_VERSION(7, 37, 0)
- case CURLOPT_PROXYHEADER:
-#endif
#if LIBCURL_VERSION_NUM >= MAKE_LIBCURL_VERSION(7, 52, 0)
case CURLOPT_PROXY_CAPATH:
case CURLOPT_PROXY_CAINFO: