]> granicus.if.org Git - curl/commitdiff
sclose() function-like macro definition used to close a socket,
authorYang Tse <yangsita@gmail.com>
Fri, 19 Jun 2009 00:41:03 +0000 (00:41 +0000)
committerYang Tse <yangsita@gmail.com>
Fri, 19 Jun 2009 00:41:03 +0000 (00:41 +0000)
now solely based on HAVE_CLOSESOCKET and HAVE_CLOSESOCKET_CAMEL
config file preprocessor definitions.

ares/ares__close_sockets.c
ares/ares_private.h
ares/ares_process.c
ares/config.dos
ares/setup_once.h
lib/config-amigaos.h
lib/config.dos
lib/memdebug.h
lib/setup.h
lib/setup_once.h
src/config-amigaos.h

index c2588663dad8ffca9f0cfada3174350b830ae2ec..1becf9ab33458be66776a055f10c9a0ff1dfb520 100644 (file)
@@ -54,14 +54,14 @@ void ares__close_sockets(ares_channel channel, struct server_state *server)
   if (server->tcp_socket != ARES_SOCKET_BAD)
     {
       SOCK_STATE_CALLBACK(channel, server->tcp_socket, 0, 0);
-      closesocket(server->tcp_socket);
+      sclose(server->tcp_socket);
       server->tcp_socket = ARES_SOCKET_BAD;
       server->tcp_connection_generation = ++channel->tcp_connection_generation;
     }
   if (server->udp_socket != ARES_SOCKET_BAD)
     {
       SOCK_STATE_CALLBACK(channel, server->udp_socket, 0, 0);
-      closesocket(server->udp_socket);
+      sclose(server->udp_socket);
       server->udp_socket = ARES_SOCKET_BAD;
     }
 }
index 794844039a73edfdda1b830d1c9418410dd27c65..e70bdb5c040e61bb7aaec3a6622c11b15de426c0 100644 (file)
@@ -4,7 +4,7 @@
 /* $Id$ */
 
 /* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2004-2008 by Daniel Stenberg
+ * Copyright (C) 2004-2009 by Daniel Stenberg
  *
  * Permission to use, copy, modify, and distribute this
  * software and its documentation for any purpose and without
 
 #if !defined(WIN32) || defined(WATT32)
 #include <netinet/in.h>
-/* We define closesocket() here so that we can use this function all over
-   the source code for closing sockets. */
-#define closesocket(x) close(x)
 #endif
 
 #ifdef WATT32
 #include <tcp.h>
 #include <sys/ioctl.h>
-#undef  closesocket
-#define closesocket(s)    close_s(s)
 #define writev(s,v,c)     writev_s(s,v,c)
 #define HAVE_WRITEV 1
 #endif
index c4848108a4d19b08a3fe84f288b21cf4c261fa92..41d181132820fd061492e3d6148e2048492356f5 100644 (file)
@@ -896,7 +896,7 @@ static int open_tcp_socket(ares_channel channel, struct server_state *server)
   /* Configure it. */
   if (configure_socket(s, channel) < 0)
     {
-       closesocket(s);
+       sclose(s);
        return -1;
     }
 
@@ -911,7 +911,7 @@ static int open_tcp_socket(ares_channel channel, struct server_state *server)
   if (setsockopt(s, IPPROTO_TCP, TCP_NODELAY,
                  (void *)&opt, sizeof(opt)) == -1)
     {
-       closesocket(s);
+       sclose(s);
        return -1;
     }
 #endif
@@ -927,7 +927,7 @@ static int open_tcp_socket(ares_channel channel, struct server_state *server)
 
       if (err != EINPROGRESS && err != EWOULDBLOCK)
         {
-          closesocket(s);
+          sclose(s);
           return -1;
         }
     }
@@ -938,7 +938,7 @@ static int open_tcp_socket(ares_channel channel, struct server_state *server)
                                         channel->sock_create_cb_data);
       if (err < 0)
         {
-          closesocket(s);
+          sclose(s);
           return err;
         }
     }
@@ -963,7 +963,7 @@ static int open_udp_socket(ares_channel channel, struct server_state *server)
   /* Set the socket non-blocking. */
   if (configure_socket(s, channel) < 0)
     {
-       closesocket(s);
+       sclose(s);
        return -1;
     }
 
@@ -978,7 +978,7 @@ static int open_udp_socket(ares_channel channel, struct server_state *server)
 
       if (err != EINPROGRESS && err != EWOULDBLOCK)
         {
-          closesocket(s);
+          sclose(s);
           return -1;
         }
     }
@@ -989,7 +989,7 @@ static int open_udp_socket(ares_channel channel, struct server_state *server)
                                         channel->sock_create_cb_data);
       if (err < 0)
         {
-          closesocket(s);
+          sclose(s);
           return err;
         }
     }
index 98b176545fc9ab1c01856d0c5321e86258b4774b..96baa9cc42b40951bc7091581e6731746cfda5b5 100644 (file)
   #define HAVE_AF_INET6                    1
   #define HAVE_ARPA_INET_H                 1
   #define HAVE_ARPA_NAMESER_H              1
+  #define HAVE_CLOSESOCKET_CAMEL           1
   #define HAVE_GETHOSTNAME                 1
   #define HAVE_NETDB_H                     1
   #define HAVE_NETINET_IN_H                1
   #define HAVE_SYS_UIO_H                   1
   #define NS_INADDRSZ                      4
   #define HAVE_STRUCT_SOCKADDR_IN6         1
+  #define CloseSocket(s)  close_s((s))
 #endif
 
 #undef word
index de6c632be2188dcc8cca772e036c8d6e23ed8a63..f7d45a232606b92425e082bae68260b9ce8122fa 100644 (file)
@@ -222,6 +222,19 @@ struct timeval {
 #endif /* if 0 */
 
 
+/*
+ * Function-like macro definition used to close a socket.
+ */
+
+#if defined(HAVE_CLOSESOCKET)
+#  define sclose(x)  closesocket((x))
+#elif defined(HAVE_CLOSESOCKET_CAMEL)
+#  define sclose(x)  CloseSocket((x))
+#else
+#  define sclose(x)  close((x))
+#endif
+
+
 /*
  * Uppercase macro versions of ANSI/ISO is*() functions/macros which
  * avoid negative number inputs with argument byte codes > 127.
index 3da27426d46d86f2ab44a964b3484a0263f9bae6..189a0a6a0a8a4ff158dbb800ae81a08ea1c556f3 100644 (file)
@@ -26,6 +26,7 @@
 #ifdef __AMIGA__ /* Any AmigaOS flavour */
 
 #define HAVE_ARPA_INET_H 1
+#define HAVE_CLOSESOCKET_CAMEL 1
 #define HAVE_GETHOSTBYADDR 1
 #define HAVE_INET_ADDR 1
 #define HAVE_INTTYPES_H 1
index 26f25fd51d76b3b7720767153ab4e85d306c9e29..df4809133405853298c1be517d14c06510edf384 100644 (file)
   #define HAVE_SYS_TIME_H 1
 #endif
 
+#ifdef MSDOS  /* Watt-32 */
+  #define HAVE_CLOSESOCKET_CAMEL  1
+  #define CloseSocket(s)          close_s((s))
+#endif
+
 #undef word
 #undef byte
 
index 4c84247b1b386fec234af28f1eae99106f77cc0c..96cf4ad38422e1db13a858850a95b44a7ac01997 100644 (file)
@@ -116,9 +116,6 @@ CURL_EXTERN int curl_fclose(FILE *file, int line, const char *source);
 /* sclose is probably already defined, redefine it! */
 #undef sclose
 #define sclose(sockfd) curl_sclose(sockfd,__LINE__,__FILE__)
-/* ares-adjusted define: */
-#undef closesocket
-#define closesocket(sockfd) curl_sclose(sockfd,__LINE__,__FILE__)
 
 #undef fopen
 #define fopen(file,mode) curl_fopen(file,mode,__LINE__,__FILE__)
index 1ca3e9b9d8dfd8bd6bd6be640bc1c98f32812781..25ca451f3613c44bf18382638ddc05dbb66c6061 100644 (file)
 #endif
 
 /* Below we define some functions. They should
-   1. close a socket
 
    4. set the SIGALRM signal timeout
    5. set dir/file naming defines
 
 #ifdef WIN32
 
-#  if !defined(__CYGWIN__)
-#    define sclose(x) closesocket(x)
-#  else
-#    define sclose(x) close(x)
-#  endif
-
 #  define DIR_CHAR      "\\"
 #  define DOT_CHAR      "_"
 
 #  ifdef MSDOS  /* Watt-32 */
 
 #    include <sys/ioctl.h>
-#    define sclose(x)         close_s(x)
 #    define select(n,r,w,x,t) select_s(n,r,w,x,t)
 #    define ioctl(x,y,z) ioctlsocket(x,y,(char *)(z))
 #    include <tcp.h>
 #      undef byte
 #    endif
 
-#  else /* MSDOS */
-
-#    ifdef __BEOS__
-#      define sclose(x) closesocket(x)
-#    else /* __BEOS__ */
-#      define sclose(x) close(x)
-#    endif /* __BEOS__ */
-
 #  endif /* MSDOS */
 
-#  ifdef _AMIGASF
-#    undef sclose
-#    define sclose(x) CloseSocket(x)
-#  endif
-
 #  ifdef __minix
      /* Minix 3 versions up to at least 3.1.3 are missing these prototypes */
      extern char * strtok_r(char *s, const char *delim, char **last);
index 4c4d3f5993ce06eb38d8ea68e8aee520a7eebcfa..9ad69e58d1023d1370cb61c9a170f7b476fa8330 100644 (file)
@@ -229,6 +229,19 @@ struct timeval {
 #endif /* if 0 */
 
 
+/*
+ * Function-like macro definition used to close a socket.
+ */
+
+#if defined(HAVE_CLOSESOCKET)
+#  define sclose(x)  closesocket((x))
+#elif defined(HAVE_CLOSESOCKET_CAMEL)
+#  define sclose(x)  CloseSocket((x))
+#else
+#  define sclose(x)  close((x))
+#endif
+
+
 /*
  * Uppercase macro versions of ANSI/ISO is*() functions/macros which
  * avoid negative number inputs with argument byte codes > 127.
index 75b1fb82f29e980b3f7f3c3ba096814fbe6c6345..01cc7da183797edefd21543b119d1f2f4290864e 100644 (file)
@@ -30,6 +30,7 @@
 
 #define OS "AmigaOS"
 
+#define HAVE_CLOSESOCKET_CAMEL  1
 #define HAVE_UNISTD_H           1
 #define HAVE_STRDUP             1
 #define HAVE_UTIME              1