components/php/php56/patches/CVE-2015-4022.patch
author Michael Nestler <Michael.Nestler@Oracle.COM>
Fri, 05 Jun 2015 09:47:02 -0700
branchs11-update
changeset 4418 7ae5fd823a4b
permissions -rw-r--r--
PSARC 2015/255 Update PHP to version 5.6.8 20161915 add PHP 5.6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4418
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     1
# Source: upstream
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     2
# http://git.php.net/?p=php-src.git;a=patch;h=739adee1912176aacf351edc5751a02ded6ef1ec;hp=658b9b0ab26eedb3e13a583d1585f502e7da728f
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     3
# Fixed in 5.6.9
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     4
# This patch also contains unnecessary whitespace changes but is left as is
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     5
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     6
From 739adee1912176aacf351edc5751a02ded6ef1ec Mon Sep 17 00:00:00 2001
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     7
From: Stanislav Malyshev <[email protected]>
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     8
Date: Wed, 29 Apr 2015 21:57:33 -0700
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
     9
Subject: [PATCH 1/1] Fix bug #69545 - avoid overflow when reading list
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    10
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    11
---
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    12
 ext/ftp/ftp.c | 82 +++++++++++++++++++++++++++++------------------------------
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    13
 1 file changed, 41 insertions(+), 41 deletions(-)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    14
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    15
diff --git a/ext/ftp/ftp.c b/ext/ftp/ftp.c
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    16
index a6e0dfd..4e1b072 100644
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    17
--- a/ext/ftp/ftp.c
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    18
+++ b/ext/ftp/ftp.c
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    19
@@ -188,9 +188,9 @@ ftp_close(ftpbuf_t *ftp)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    20
 			SSL_shutdown(ftp->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    21
 			SSL_free(ftp->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    22
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    23
-#endif		
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    24
+#endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    25
 		closesocket(ftp->fd);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    26
-	}	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    27
+	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    28
 	ftp_gc(ftp);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    29
 	efree(ftp);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    30
 	return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    31
@@ -262,7 +262,7 @@ ftp_login(ftpbuf_t *ftp, const char *user, const char *pass TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    32
 		if (!ftp_getresp(ftp)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    33
 			return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    34
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    35
-			
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    36
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    37
 		if (ftp->resp != 234) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    38
 			if (!ftp_putcmd(ftp, "AUTH", "SSL")) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    39
 				return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    40
@@ -270,7 +270,7 @@ ftp_login(ftpbuf_t *ftp, const char *user, const char *pass TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    41
 			if (!ftp_getresp(ftp)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    42
 				return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    43
 			}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    44
-				
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    45
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    46
 			if (ftp->resp != 334) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    47
 				return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    48
 			} else {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    49
@@ -278,7 +278,7 @@ ftp_login(ftpbuf_t *ftp, const char *user, const char *pass TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    50
 				ftp->use_ssl_for_data = 1;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    51
 			}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    52
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    53
-		
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    54
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    55
 		ctx = SSL_CTX_new(SSLv23_client_method());
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    56
 		if (ctx == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    57
 			php_error_docref(NULL TSRMLS_CC, E_WARNING, "failed to create the SSL context");
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    58
@@ -325,8 +325,8 @@ ftp_login(ftpbuf_t *ftp, const char *user, const char *pass TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    59
 			if (!ftp_getresp(ftp)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    60
 				return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    61
 			}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    62
-			
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    63
-			ftp->use_ssl_for_data = (ftp->resp >= 200 && ftp->resp <=299);		
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    64
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    65
+			ftp->use_ssl_for_data = (ftp->resp >= 200 && ftp->resp <=299);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    66
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    67
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    68
 #endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    69
@@ -360,7 +360,7 @@ ftp_reinit(ftpbuf_t *ftp)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    70
 {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    71
 	if (ftp == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    72
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    73
-	}	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    74
+	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    75
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    76
 	ftp_gc(ftp);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    77
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    78
@@ -395,7 +395,7 @@ ftp_syst(ftpbuf_t *ftp)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    79
 	if (!ftp_putcmd(ftp, "SYST", NULL)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    80
 		return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    81
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    82
-	if (!ftp_getresp(ftp) || ftp->resp != 215) { 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    83
+	if (!ftp_getresp(ftp) || ftp->resp != 215) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    84
 		return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    85
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    86
 	syst = ftp->inbuf;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    87
@@ -431,14 +431,14 @@ ftp_pwd(ftpbuf_t *ftp)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    88
 	if (!ftp_putcmd(ftp, "PWD", NULL)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    89
 		return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    90
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    91
-	if (!ftp_getresp(ftp) || ftp->resp != 257) { 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    92
+	if (!ftp_getresp(ftp) || ftp->resp != 257) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    93
 		return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    94
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    95
 	/* copy out the pwd from response */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    96
-	if ((pwd = strchr(ftp->inbuf, '"')) == NULL) { 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    97
+	if ((pwd = strchr(ftp->inbuf, '"')) == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    98
 		return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
    99
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   100
-	if ((end = strrchr(++pwd, '"')) == NULL) { 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   101
+	if ((end = strrchr(++pwd, '"')) == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   102
 		return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   103
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   104
 	ftp->pwd = estrndup(pwd, end - pwd);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   105
@@ -608,7 +608,7 @@ ftp_chmod(ftpbuf_t *ftp, const int mode, const char *filename, const int filenam
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   106
 	if (!ftp_getresp(ftp) || ftp->resp != 200) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   107
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   108
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   109
-	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   110
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   111
 	return 1;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   112
 }
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   113
 /* }}} */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   114
@@ -625,7 +625,7 @@ ftp_alloc(ftpbuf_t *ftp, const long size, char **response)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   115
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   116
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   117
 	snprintf(buffer, sizeof(buffer) - 1, "%ld", size);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   118
-    
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   119
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   120
 	if (!ftp_putcmd(ftp, "ALLO", buffer)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   121
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   122
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   123
@@ -642,7 +642,7 @@ ftp_alloc(ftpbuf_t *ftp, const long size, char **response)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   124
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   125
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   126
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   127
-	return 1;	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   128
+	return 1;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   129
 }
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   130
 /* }}} */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   131
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   132
@@ -674,7 +674,7 @@ ftp_type(ftpbuf_t *ftp, ftptype_t type)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   133
 	if (ftp == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   134
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   135
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   136
-	if (type == ftp->type) { 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   137
+	if (type == ftp->type) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   138
 		return 1;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   139
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   140
 	if (type == FTPTYPE_ASCII) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   141
@@ -765,7 +765,7 @@ ftp_pasv(ftpbuf_t *ftp, int pasv)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   142
 	if (!ftp_putcmd(ftp, "PASV", NULL)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   143
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   144
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   145
-	if (!ftp_getresp(ftp) || ftp->resp != 227) { 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   146
+	if (!ftp_getresp(ftp) || ftp->resp != 227) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   147
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   148
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   149
 	/* parse out the IP and port */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   150
@@ -807,7 +807,7 @@ ftp_get(ftpbuf_t *ftp, php_stream *outstream, const char *path, ftptype_t type,
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   151
 	if ((data = ftp_getdata(ftp TSRMLS_CC)) == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   152
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   153
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   154
-	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   155
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   156
 	ftp->data = data;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   157
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   158
 	if (resumepos > 0) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   159
@@ -900,7 +900,7 @@ ftp_put(ftpbuf_t *ftp, const char *path, php_stream *instream, ftptype_t type, l
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   160
 	if ((data = ftp_getdata(ftp TSRMLS_CC)) == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   161
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   162
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   163
-	ftp->data = data;	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   164
+	ftp->data = data;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   165
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   166
 	if (startpos > 0) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   167
 		snprintf(arg, sizeof(arg), "%ld", startpos);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   168
@@ -1101,7 +1101,7 @@ ftp_putcmd(ftpbuf_t *ftp, const char *cmd, const char *args)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   169
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   170
 	if (strpbrk(cmd, "\r\n")) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   171
 		return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   172
-	} 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   173
+	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   174
 	/* build the output buffer */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   175
 	if (args && args[0]) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   176
 		/* "cmd args\r\n\0" */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   177
@@ -1247,7 +1247,7 @@ my_send(ftpbuf_t *ftp, php_socket_t s, void *buf, size_t len)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   178
 #if HAVE_OPENSSL_EXT
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   179
 		if (ftp->use_ssl && ftp->fd == s && ftp->ssl_active) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   180
 			sent = SSL_write(ftp->ssl_handle, buf, size);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   181
-		} else if (ftp->use_ssl && ftp->fd != s && ftp->use_ssl_for_data && ftp->data->ssl_active) {	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   182
+		} else if (ftp->use_ssl && ftp->fd != s && ftp->use_ssl_for_data && ftp->data->ssl_active) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   183
 			sent = SSL_write(ftp->data->ssl_handle, buf, size);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   184
 		} else {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   185
 #endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   186
@@ -1287,14 +1287,14 @@ my_recv(ftpbuf_t *ftp, php_socket_t s, void *buf, size_t len)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   187
 #if HAVE_OPENSSL_EXT
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   188
 	if (ftp->use_ssl && ftp->fd == s && ftp->ssl_active) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   189
 		nr_bytes = SSL_read(ftp->ssl_handle, buf, len);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   190
-	} else if (ftp->use_ssl && ftp->fd != s && ftp->use_ssl_for_data && ftp->data->ssl_active) {	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   191
+	} else if (ftp->use_ssl && ftp->fd != s && ftp->use_ssl_for_data && ftp->data->ssl_active) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   192
 		nr_bytes = SSL_read(ftp->data->ssl_handle, buf, len);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   193
 	} else {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   194
 #endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   195
 		nr_bytes = recv(s, buf, len, 0);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   196
 #if HAVE_OPENSSL_EXT
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   197
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   198
-#endif	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   199
+#endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   200
 	return (nr_bytes);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   201
 }
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   202
 /* }}} */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   203
@@ -1511,7 +1511,7 @@ data_accept(databuf_t *data, ftpbuf_t *ftp TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   204
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   205
 data_accepted:
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   206
 #if HAVE_OPENSSL_EXT
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   207
-	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   208
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   209
 	/* now enable ssl if we need to */
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   210
 	if (ftp->use_ssl && ftp->use_ssl_for_data) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   211
 		ctx = SSL_CTX_new(SSLv23_client_method());
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   212
@@ -1531,23 +1531,23 @@ data_accepted:
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   213
 			SSL_CTX_free(ctx);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   214
 			return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   215
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   216
-			
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   217
-		
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   218
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   219
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   220
 		SSL_set_fd(data->ssl_handle, data->fd);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   221
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   222
 		if (ftp->old_ssl) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   223
 			SSL_copy_session_id(data->ssl_handle, ftp->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   224
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   225
-			
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   226
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   227
 		if (SSL_connect(data->ssl_handle) <= 0) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   228
 			php_error_docref(NULL TSRMLS_CC, E_WARNING, "data_accept: SSL/TLS handshake failed");
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   229
 			SSL_shutdown(data->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   230
 			SSL_free(data->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   231
 			return 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   232
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   233
-			
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   234
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   235
 		data->ssl_active = 1;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   236
-	}	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   237
+	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   238
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   239
 #endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   240
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   241
@@ -1562,14 +1562,14 @@ data_close(ftpbuf_t *ftp, databuf_t *data)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   242
 {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   243
 #if HAVE_OPENSSL_EXT
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   244
 	SSL_CTX		*ctx;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   245
-#endif				
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   246
+#endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   247
 	if (data == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   248
 		return NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   249
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   250
 	if (data->listener != -1) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   251
 #if HAVE_OPENSSL_EXT
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   252
 		if (data->ssl_active) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   253
-		
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   254
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   255
 			ctx = SSL_get_SSL_CTX(data->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   256
 			SSL_CTX_free(ctx);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   257
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   258
@@ -1577,9 +1577,9 @@ data_close(ftpbuf_t *ftp, databuf_t *data)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   259
 			SSL_free(data->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   260
 			data->ssl_active = 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   261
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   262
-#endif				
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   263
+#endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   264
 		closesocket(data->listener);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   265
-	}	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   266
+	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   267
 	if (data->fd != -1) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   268
 #if HAVE_OPENSSL_EXT
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   269
 		if (data->ssl_active) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   270
@@ -1590,9 +1590,9 @@ data_close(ftpbuf_t *ftp, databuf_t *data)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   271
 			SSL_free(data->ssl_handle);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   272
 			data->ssl_active = 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   273
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   274
-#endif				
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   275
+#endif
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   276
 		closesocket(data->fd);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   277
-	}	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   278
+	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   279
 	if (ftp) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   280
 		ftp->data = NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   281
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   282
@@ -1610,8 +1610,8 @@ ftp_genlist(ftpbuf_t *ftp, const char *cmd, const char *path TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   283
 	databuf_t	*data = NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   284
 	char		*ptr;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   285
 	int		ch, lastch;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   286
-	int		size, rcvd;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   287
-	int		lines;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   288
+	size_t		size, rcvd;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   289
+	size_t		lines;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   290
 	char		**ret = NULL;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   291
 	char		**entry;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   292
 	char		*text;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   293
@@ -1629,7 +1629,7 @@ ftp_genlist(ftpbuf_t *ftp, const char *cmd, const char *path TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   294
 	if ((data = ftp_getdata(ftp TSRMLS_CC)) == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   295
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   296
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   297
-	ftp->data = data;	
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   298
+	ftp->data = data;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   299
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   300
 	if (!ftp_putcmd(ftp, cmd, path)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   301
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   302
@@ -1653,7 +1653,7 @@ ftp_genlist(ftpbuf_t *ftp, const char *cmd, const char *path TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   303
 	lines = 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   304
 	lastch = 0;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   305
 	while ((rcvd = my_recv(ftp, data->fd, data->buf, FTP_BUFSIZE))) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   306
-		if (rcvd == -1) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   307
+		if (rcvd == -1 || rcvd > ((size_t)(-1))-size) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   308
 			goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   309
 		}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   310
 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   311
@@ -1858,7 +1858,7 @@ ftp_nb_put(ftpbuf_t *ftp, const char *path, php_stream *instream, ftptype_t type
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   312
 	if (!ftp_getresp(ftp) || (ftp->resp != 150 && ftp->resp != 125)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   313
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   314
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   315
-	if ((data = data_accept(data, ftp TSRMLS_CC)) == NULL) { 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   316
+	if ((data = data_accept(data, ftp TSRMLS_CC)) == NULL) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   317
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   318
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   319
 	ftp->data = data;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   320
@@ -1914,7 +1914,7 @@ ftp_nb_continue_write(ftpbuf_t *ftp TSRMLS_DC)
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   321
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   322
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   323
 	ftp->data = data_close(ftp, ftp->data);
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   324
- 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   325
+
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   326
 	if (!ftp_getresp(ftp) || (ftp->resp != 226 && ftp->resp != 250)) {
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   327
 		goto bail;
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   328
 	}
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   329
-- 
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   330
2.1.4
7ae5fd823a4b PSARC 2015/255 Update PHP to version 5.6.8
Michael Nestler <Michael.Nestler@Oracle.COM>
parents:
diff changeset
   331