]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
tests/server: do not redefine standard functions in `sockfilt`
authorViktor Szakats <commit@vsz.me>
Tue, 11 Mar 2025 18:29:14 +0000 (19:29 +0100)
committerViktor Szakats <commit@vsz.me>
Thu, 13 Mar 2025 10:36:53 +0000 (11:36 +0100)
Use a namespaced macro instead. To avoid confusion when other headers
also redefine these functions. And to improve readability by making it
apparent that the code sometimes overrides these functions.

Cherry-picked from #15000
Closes #16698

tests/server/sockfilt.c

index 4afac7f3f236761ef98a2bb6a11a3f932379d8a7..6fb8a4d18c0bbb11ad7fe0bb3b113e8d86a59bcb 100644 (file)
@@ -159,8 +159,6 @@ static ssize_t read_wincon(int fd, void *buf, size_t count)
   CURL_SETERRNO((int)GetLastError());
   return -1;
 }
-#undef  read
-#define read(a,b,c) read_wincon(a,b,c)
 
 /*
  * write-wrapper to support writing to stdout and stderr on Windows.
@@ -194,8 +192,11 @@ static ssize_t write_wincon(int fd, const void *buf, size_t count)
   CURL_SETERRNO((int)GetLastError());
   return -1;
 }
-#undef  write
-#define write(a,b,c) write_wincon(a,b,c)
+#define SOCKFILT_read  read_wincon
+#define SOCKFILT_write write_wincon
+#else
+#define SOCKFILT_read  read
+#define SOCKFILT_write write
 #endif
 
 #ifndef UNDER_CE
@@ -217,8 +218,9 @@ static ssize_t fullread(int filedes, void *buffer, size_t nbytes)
   ssize_t nread = 0;
 
   do {
-    ssize_t rc = read(filedes,
-                      (unsigned char *)buffer + nread, nbytes - nread);
+    ssize_t rc = SOCKFILT_read(filedes,
+                               (unsigned char *)buffer + nread,
+                               nbytes - nread);
 
     if(got_exit_signal) {
       logmsg("signalled to die");
@@ -269,8 +271,9 @@ static ssize_t fullwrite(int filedes, const void *buffer, size_t nbytes)
   ssize_t nwrite = 0;
 
   do {
-    ssize_t wc = write(filedes, (const unsigned char *)buffer + nwrite,
-                       nbytes - nwrite);
+    ssize_t wc = SOCKFILT_write(filedes,
+                                (const unsigned char *)buffer + nwrite,
+                                nbytes - nwrite);
 
     if(got_exit_signal) {
       logmsg("signalled to die");
@@ -875,7 +878,9 @@ static int select_ws(int nfds, fd_set *readfds, fd_set *writefds,
 
   return ret;
 }
-#define select(a,b,c,d,e) select_ws(a,b,c,d,e)
+#define SOCKFILT_select(a,b,c,d,e) select_ws(a,b,c,d,e)
+#else
+#define SOCKFILT_select(a,b,c,d,e) select(a,b,c,d,e)
 #endif  /* USE_WINSOCK */
 
 
@@ -1069,7 +1074,7 @@ static bool juggle(curl_socket_t *sockfdp,
 
     /* select() blocking behavior call on blocking descriptors please */
 
-    rc = select(maxfd + 1, &fds_read, &fds_write, &fds_err, &timeout);
+    rc = SOCKFILT_select(maxfd + 1, &fds_read, &fds_write, &fds_err, &timeout);
 
     if(got_exit_signal) {
       logmsg("signalled to die, exiting...");