Commit 95a47246ddd for php.net
commit 95a47246dddf7d44647aedaeadbd3c9ccd88db00
Merge: 75cdbcd40bc 765fe90b594
Author: Ilia Alshanetsky <ilia@ilia.ws>
Date: Sun Jul 12 21:10:28 2026 -0400
Merge branch 'PHP-8.5'
* PHP-8.5:
Fix use-after-free on re-entrant ftp_close() during a transfer
diff --cc ext/ftp/ftp.c
index 2ea93f97968,88f7431cc32..0035e8508da
--- a/ext/ftp/ftp.c
+++ b/ext/ftp/ftp.c
@@@ -2142,10 -2160,12 +2179,12 @@@ int ftp_nb_continue_read(ftpbuf_t *ftp
goto bail;
}
- ftp->nb = 0;
+ ftp->nb = false;
+ ftp->in_use = false;
return PHP_FTP_FINISHED;
bail:
- ftp->nb = 0;
+ ftp->nb = false;
+ ftp->in_use = false;
data_close(ftp);
return PHP_FTP_FAILED;
}
@@@ -2219,10 -2251,12 +2270,12 @@@ int ftp_nb_continue_write(ftpbuf_t *ftp
if (!ftp_getresp(ftp) || (ftp->resp != 226 && ftp->resp != 250)) {
goto bail;
}
- ftp->nb = 0;
+ ftp->nb = false;
+ ftp->in_use = false;
return PHP_FTP_FINISHED;
bail:
data_close(ftp);
- ftp->nb = 0;
+ ftp->nb = false;
+ ftp->in_use = false;
return PHP_FTP_FAILED;
}