1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Merge branch 'PHP-8.2' into PHP-8.3

* PHP-8.2:
  Fix GH-13856: Member access within null pointer of type 'ps_files' in ext/session/mod_files.c
This commit is contained in:
Niels Dossche
2024-04-01 14:16:23 +02:00
3 changed files with 27 additions and 2 deletions

4
NEWS
View File

@@ -28,6 +28,10 @@ PHP NEWS
. Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
(nielsdos)
- Session:
. Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in
ext/session/mod_files.c). (nielsdos)
- Streams:
. Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
(Jakub Zelenka)

View File

@@ -47,8 +47,6 @@ PHP_METHOD(SessionHandler, open)
PS_SANITY_CHECK;
PS(mod_user_is_open) = 1;
zend_try {
ret = PS(default_mod)->s_open(&PS(mod_data), save_path, session_name);
} zend_catch {
@@ -56,6 +54,10 @@ PHP_METHOD(SessionHandler, open)
zend_bailout();
} zend_end_try();
if (SUCCESS == ret) {
PS(mod_user_is_open) = 1;
}
RETURN_BOOL(SUCCESS == ret);
}
/* }}} */

View File

@@ -0,0 +1,19 @@
--TEST--
GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c)
--EXTENSIONS--
session
--INI--
session.save_handler=files
open_basedir=.
error_reporting=E_ALL
--FILE--
<?php
session_set_save_handler(new \SessionHandler(), true);
session_start();
?>
--EXPECTF--
Warning: SessionHandler::open(): open_basedir restriction in effect. File(%s) is not within the allowed path(s): (.) in %s on line %d
Warning: SessionHandler::close(): Parent session handler is not open in %s on line %d
Warning: session_start(): Failed to initialize storage module: user (path: ) in %s on line %d