]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
gskit_connect_step1: fixed bogus setsockopt calls
authorHarry Sintonen <sintonen@iki.fi>
Wed, 4 May 2022 21:33:17 +0000 (23:33 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 4 May 2022 21:33:17 +0000 (23:33 +0200)
setsockopt takes a reference to value, not value. With the current
code this just leads to -1 return value with errno EFAULT.

Closes #8793

lib/vtls/gskit.c

index 43456172a39bebace2ef5a90df64e5dfaac5b0ca..7a65f92f205323a6f9776964e823aa18b79e1953 100644 (file)
@@ -775,13 +775,13 @@ static CURLcode gskit_connect_step1(struct Curl_easy *data,
     BACKEND->localfd = sockpair[0];
     BACKEND->remotefd = sockpair[1];
     setsockopt(BACKEND->localfd, SOL_SOCKET, SO_RCVBUF,
-               (void *) sobufsize, sizeof(sobufsize));
+               (void *) &sobufsize, sizeof(sobufsize));
     setsockopt(BACKEND->remotefd, SOL_SOCKET, SO_RCVBUF,
-               (void *) sobufsize, sizeof(sobufsize));
+               (void *) &sobufsize, sizeof(sobufsize));
     setsockopt(BACKEND->localfd, SOL_SOCKET, SO_SNDBUF,
-               (void *) sobufsize, sizeof(sobufsize));
+               (void *) &sobufsize, sizeof(sobufsize));
     setsockopt(BACKEND->remotefd, SOL_SOCKET, SO_SNDBUF,
-               (void *) sobufsize, sizeof(sobufsize));
+               (void *) &sobufsize, sizeof(sobufsize));
     curlx_nonblock(BACKEND->localfd, TRUE);
     curlx_nonblock(BACKEND->remotefd, TRUE);
   }