]> granicus.if.org Git - curl/commitdiff
ftp: move ftp_ccc in under featureflag
authorDaniel Gustafsson <daniel@yesql.se>
Tue, 21 May 2019 07:38:11 +0000 (09:38 +0200)
committerDaniel Gustafsson <daniel@yesql.se>
Tue, 21 May 2019 07:38:11 +0000 (09:38 +0200)
Commit e91e48161235272ff485ff32bd048c53af731f43 moved ftp_ccc in under
the FTP featureflag in the UserDefined struct, but vtls callsites were
still using it unprotected.

Closes #3912
Fixes: https://curl.haxx.se/dev/log.cgi?id=20190520044705-29865
Reviewed-by: Daniel Stenberg, Marcel Raad
lib/vtls/gskit.c
lib/vtls/gtls.c
lib/vtls/openssl.c
lib/vtls/sectransp.c

index 130d82a817bc4cb547101b2385194db3fa812c0c..b93ff5d4f4fd3768c28e58d28ef05122d79a1de8 100644 (file)
@@ -1266,8 +1266,10 @@ static int Curl_gskit_shutdown(struct connectdata *conn, int sockindex)
   if(!BACKEND->handle)
     return 0;
 
+#ifndef CURL_DISABLE_FTP
   if(data->set.ftp_ccc != CURLFTPSSL_CCC_ACTIVE)
     return 0;
+#endif
 
   close_one(connssl, conn, sockindex);
   rc = 0;
index e597eac5e8b0d33f850bc60f72477f1630573201..8693cdce3fd5f71428c2ca0d16a64ddae4565fa7 100644 (file)
@@ -1640,6 +1640,7 @@ static int Curl_gtls_shutdown(struct connectdata *conn, int sockindex)
   int retval = 0;
   struct Curl_easy *data = conn->data;
 
+#ifndef CURL_DISABLE_FTP
   /* This has only been tested on the proftpd server, and the mod_tls code
      sends a close notify alert without waiting for a close notify alert in
      response. Thus we wait for a close notify alert from the server, but
@@ -1647,6 +1648,7 @@ static int Curl_gtls_shutdown(struct connectdata *conn, int sockindex)
 
   if(data->set.ftp_ccc == CURLFTPSSL_CCC_ACTIVE)
       gnutls_bye(BACKEND->session, GNUTLS_SHUT_WR);
+#endif
 
   if(BACKEND->session) {
     ssize_t result;
index df4553423d8269117c7d18a4ddce03c1996ba54a..85e9be616118b290340f0cb497f0116db22aa53c 100644 (file)
@@ -1308,6 +1308,7 @@ static int Curl_ossl_shutdown(struct connectdata *conn, int sockindex)
   int err;
   bool done = FALSE;
 
+#ifndef CURL_DISABLE_FTP
   /* This has only been tested on the proftpd server, and the mod_tls code
      sends a close notify alert without waiting for a close notify alert in
      response. Thus we wait for a close notify alert from the server, but
@@ -1315,6 +1316,7 @@ static int Curl_ossl_shutdown(struct connectdata *conn, int sockindex)
 
   if(data->set.ftp_ccc == CURLFTPSSL_CCC_ACTIVE)
       (void)SSL_shutdown(BACKEND->handle);
+#endif
 
   if(BACKEND->handle) {
     buffsize = (int)sizeof(buf);
index ef618a47185dfdef71726a23a9b333077ee821f0..2fdf662a1dc6183eae145d414c70dc71488c091d 100644 (file)
@@ -2963,8 +2963,10 @@ static int Curl_sectransp_shutdown(struct connectdata *conn, int sockindex)
   if(!BACKEND->ssl_ctx)
     return 0;
 
+#ifndef CURL_DISABLE_FTP
   if(data->set.ftp_ccc != CURLFTPSSL_CCC_ACTIVE)
     return 0;
+#endif
 
   Curl_sectransp_close(conn, sockindex);