[openssl-commits] [openssl] master update

Rich Salz rsalz at openssl.org
Mon Mar 7 19:48:04 UTC 2016


The branch master has been updated
       via  8731a4fcd267d56cab2ad6d7cfac2c846c413a5d (commit)
      from  2b2b96847d7f22b24109a53a57c6d4d371209de3 (commit)


- Log -----------------------------------------------------------------
commit 8731a4fcd267d56cab2ad6d7cfac2c846c413a5d
Author: Rich Salz <rsalz at akamai.com>
Date:   Wed Mar 2 16:12:46 2016 -0500

    ISSUE 43: Add BIO_sock_shutdown
    
    This replaces SHUTDOWN/SHUTDOWN2 with BIO_closesocket.
    
    Reviewed-by: Richard Levitte <levitte at openssl.org>

-----------------------------------------------------------------------

Summary of changes:
 apps/s_client.c        |  8 ++++----
 apps/s_server.c        |  6 +++---
 apps/s_socket.c        |  6 +++---
 apps/s_time.c          |  6 +++---
 crypto/bio/bss_dgram.c |  2 +-
 crypto/bio/bss_sock.c  |  2 +-
 e_os.h                 | 10 ----------
 7 files changed, 15 insertions(+), 25 deletions(-)

diff --git a/apps/s_client.c b/apps/s_client.c
index cce8e24..247bdbf 100644
--- a/apps/s_client.c
+++ b/apps/s_client.c
@@ -1735,7 +1735,7 @@ int s_client_main(int argc, char **argv)
     if (init_client(&s, host, port, socket_family, socket_type) == 0)
     {
         BIO_printf(bio_err, "connect:errno=%d\n", get_last_socket_error());
-        SHUTDOWN(s);
+        BIO_closesocket(s);
         goto end;
     }
     BIO_printf(bio_c_out, "CONNECTED(%08X)\n", s);
@@ -1753,7 +1753,7 @@ int s_client_main(int argc, char **argv)
         if (getsockname(s, &peer, (void *)&peerlen) < 0) {
             BIO_printf(bio_err, "getsockname:errno=%d\n",
                        get_last_socket_error());
-            SHUTDOWN(s);
+            BIO_closesocket(s);
             goto end;
         }
 
@@ -2135,7 +2135,7 @@ int s_client_main(int argc, char **argv)
                                "drop connection and then reconnect\n");
                     do_ssl_shutdown(con);
                     SSL_set_connect_state(con);
-                    SHUTDOWN(SSL_get_fd(con));
+                    BIO_closesocket(SSL_get_fd(con));
                     goto re_start;
                 }
             }
@@ -2452,7 +2452,7 @@ int s_client_main(int argc, char **argv)
     if (in_init)
         print_stuff(bio_c_out, con, full_log);
     do_ssl_shutdown(con);
-    SHUTDOWN(SSL_get_fd(con));
+    BIO_closesocket(SSL_get_fd(con));
  end:
     if (con != NULL) {
         if (prexit != 0)
diff --git a/apps/s_server.c b/apps/s_server.c
index 5ac3d8f..99442cd 100644
--- a/apps/s_server.c
+++ b/apps/s_server.c
@@ -2245,7 +2245,7 @@ static int sv_body(int s, int stype, unsigned char *context)
                 if ((i <= 0) || (buf[0] == 'Q')) {
                     BIO_printf(bio_s_out, "DONE\n");
                     (void)BIO_flush(bio_s_out);
-                    SHUTDOWN(s);
+                    BIO_closesocket(s);
                     close_accept_socket();
                     ret = -11;
                     goto err;
@@ -2254,7 +2254,7 @@ static int sv_body(int s, int stype, unsigned char *context)
                     BIO_printf(bio_s_out, "DONE\n");
                     (void)BIO_flush(bio_s_out);
                     if (SSL_version(con) != DTLS1_VERSION)
-                        SHUTDOWN(s);
+                        BIO_closesocket(s);
                     /*
                      * close_accept_socket(); ret= -11;
                      */
@@ -2451,7 +2451,7 @@ static void close_accept_socket(void)
 {
     BIO_printf(bio_err, "shutdown accept socket\n");
     if (accept_socket >= 0) {
-        SHUTDOWN2(accept_socket);
+        BIO_closesocket(accept_socket);
     }
 }
 
diff --git a/apps/s_socket.c b/apps/s_socket.c
index 958dd78..00556bc 100644
--- a/apps/s_socket.c
+++ b/apps/s_socket.c
@@ -266,11 +266,11 @@ int do_server(int *accept_sock, const char *host, const char *port,
             } while (sock < 0 && BIO_sock_should_retry(ret));
             if (sock < 0) {
                 ERR_print_errors(bio_err);
-                SHUTDOWN(asock);
+                BIO_closesocket(asock);
                 break;
             }
             i = (*cb)(sock, type, context);
-            SHUTDOWN2(sock);
+            BIO_closesocket(sock);
         } else {
             i = (*cb)(asock, type, context);
         }
@@ -278,7 +278,7 @@ int do_server(int *accept_sock, const char *host, const char *port,
         if (naccept != -1)
             naccept--;
         if (i < 0 || naccept == 0) {
-            SHUTDOWN2(asock);
+            BIO_closesocket(asock);
             ret = i;
             break;
         }
diff --git a/apps/s_time.c b/apps/s_time.c
index fd00148..cc9a979 100644
--- a/apps/s_time.c
+++ b/apps/s_time.c
@@ -292,7 +292,7 @@ int s_time_main(int argc, char **argv)
 #else
         SSL_shutdown(scon);
 #endif
-        SHUTDOWN2(SSL_get_fd(scon));
+        BIO_closesocket(SSL_get_fd(scon));
 
         nConn += 1;
         if (SSL_session_reused(scon))
@@ -349,7 +349,7 @@ int s_time_main(int argc, char **argv)
 #else
     SSL_shutdown(scon);
 #endif
-    SHUTDOWN2(SSL_get_fd(scon));
+    BIO_closesocket(SSL_get_fd(scon));
 
     nConn = 0;
     totalTime = 0.0;
@@ -380,7 +380,7 @@ int s_time_main(int argc, char **argv)
 #else
         SSL_shutdown(scon);
 #endif
-        SHUTDOWN2(SSL_get_fd(scon));
+        BIO_closesocket(SSL_get_fd(scon));
 
         nConn += 1;
         if (SSL_session_reused(scon))
diff --git a/crypto/bio/bss_dgram.c b/crypto/bio/bss_dgram.c
index 36d4075..5a52e7c 100644
--- a/crypto/bio/bss_dgram.c
+++ b/crypto/bio/bss_dgram.c
@@ -236,7 +236,7 @@ static int dgram_clear(BIO *a)
         return (0);
     if (a->shutdown) {
         if (a->init) {
-            SHUTDOWN2(a->num);
+            BIO_closesocket(a->num);
         }
         a->init = 0;
         a->flags = 0;
diff --git a/crypto/bio/bss_sock.c b/crypto/bio/bss_sock.c
index 9988723..b56cd18 100644
--- a/crypto/bio/bss_sock.c
+++ b/crypto/bio/bss_sock.c
@@ -122,7 +122,7 @@ static int sock_free(BIO *a)
         return (0);
     if (a->shutdown) {
         if (a->init) {
-            SHUTDOWN2(a->num);
+            BIO_closesocket(a->num);
         }
         a->init = 0;
         a->flags = 0;
diff --git a/e_os.h b/e_os.h
index 3a4ba6d..41ab7bb 100644
--- a/e_os.h
+++ b/e_os.h
@@ -466,8 +466,6 @@ extern int kbhit(void);
 #   ifdef OPENSSL_NO_SOCK
 #    define OpenSSL_Write(a,b,c)       (-1)
 #    define OpenSSL_Read(a,b,c)        (-1)
-#    define SHUTDOWN(fd)              close(fd)
-#    define SHUTDOWN2(fd)             close(fd)
 #   elif !defined(__DJGPP__)
 #    if defined(_WIN32_WCE) && _WIN32_WCE<410
 #     define getservbyname _masked_declaration_getservbyname
@@ -495,13 +493,9 @@ struct servent *PASCAL getservbyname(const char *, const char *);
 #    endif
 #    define OpenSSL_Write(a,b,c)       send((a),(b),(c),0)
 #    define OpenSSL_Read(a,b,c)        recv((a),(b),(c),0)
-#    define SHUTDOWN(fd)              { shutdown((fd),0); closesocket(fd); }
-#    define SHUTDOWN2(fd)             { shutdown((fd),2); closesocket(fd); }
 #   else
 #    define OpenSSL_Write(a,b,c)       write_s(a,b,c,0)
 #    define OpenSSL_Read(a,b,c)        read_s(a,b,c)
-#    define SHUTDOWN(fd)              close_s(fd)
-#    define SHUTDOWN2(fd)             close_s(fd)
 #   endif
 
 #  elif defined(OPENSSL_SYS_NETWARE)
@@ -525,8 +519,6 @@ struct servent *PASCAL getservbyname(const char *, const char *);
 #   endif
 #   define OpenSSL_Write(a,b,c)   send((a),(b),(c),0)
 #   define OpenSSL_Read(a,b,c) recv((a),(b),(c),0)
-#   define SHUTDOWN(fd)    { shutdown((fd),0); closesocket(fd); }
-#   define SHUTDOWN2(fd)      { shutdown((fd),2); closesocket(fd); }
 
 #  else
 
@@ -588,8 +580,6 @@ struct servent *PASCAL getservbyname(const char *, const char *);
 
 #   define OpenSSL_Read(a,b,c)     read((a),(b),(c))
 #   define OpenSSL_Write(a,b,c)    write((a),(b),(c))
-#   define SHUTDOWN(fd)    { shutdown((fd),0); closesocket((fd)); }
-#   define SHUTDOWN2(fd)   { shutdown((fd),2); closesocket((fd)); }
 #   ifndef INVALID_SOCKET
 #    define INVALID_SOCKET      (-1)
 #   endif                       /* INVALID_SOCKET */


More information about the openssl-commits mailing list