]> granicus.if.org Git - php/commitdiff
Fix bug #77124
authorNikita Popov <nikita.ppv@gmail.com>
Tue, 25 Jun 2019 10:09:47 +0000 (12:09 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Mon, 15 Jul 2019 13:19:31 +0000 (15:19 +0200)
This is a backport of 6fcae63f614d1ed4aaeaff7b13a7a4627b1f1312
to PHP 7.2.

NEWS
ext/ftp/ftp.c

diff --git a/NEWS b/NEWS
index be4b60888f66c004b664cb44e2467bba0af95bab..d04dc6b79b583709f01429b0634edb8ae213a466 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,9 @@ PHP                                                                        NEWS
   . Fixed bug #78183 (finfo_file shows wrong mime-type for .tga file).
     (Joshua Westerheide)
 
+- FTP:
+  . Fixed bug #77124 (FTP with SSL memory leak). (Nikita)
+
 - PDO_Sqlite:
   . Fixed bug #78192 (SegFault when reuse statement after schema has changed).
     (Vincent Quatrevieux)
index 8f9f73767824bb0aa3e2b785d9f523cc24c54446..28760349dfa600044f583d5a2a35fcd0bb121ef0 100644 (file)
@@ -289,9 +289,10 @@ ftp_login(ftpbuf_t *ftp, const char *user, const size_t user_len, const char *pa
                SSL_CTX_set_session_cache_mode(ctx, SSL_SESS_CACHE_BOTH);
 
                ftp->ssl_handle = SSL_new(ctx);
+               SSL_CTX_free(ctx);
+
                if (ftp->ssl_handle == NULL) {
                        php_error_docref(NULL, E_WARNING, "failed to create the SSL handle");
-                       SSL_CTX_free(ctx);
                        return 0;
                }