From ce9bdae33f101ff85c08d32ce5c2c6502a451d62 Mon Sep 17 00:00:00 2001 From: Tjerk Meesters Date: Sat, 23 Aug 2014 09:18:02 +0800 Subject: [PATCH] Fixed #67694: Regression in session_regenerate_id() --- NEWS | 3 +++ ext/session/session.c | 2 +- ext/session/tests/bug67694.phpt | 41 +++++++++++++++++++++++++++++++++ 3 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 ext/session/tests/bug67694.phpt diff --git a/NEWS b/NEWS index 70780ce068..ad21933b7d 100644 --- a/NEWS +++ b/NEWS @@ -16,6 +16,9 @@ PHP NEWS - Zlib: . Fixed bug #67865 (internal corruption phar error). Mike +- Session: + . Fixed bug #67694 (Regression in session_regenerate_id()). (Tjerk) + 14 Aug 2014, PHP 5.6.0 Release Candidate 4 - COM: diff --git a/ext/session/session.c b/ext/session/session.c index d1a7a073a5..d440e6fdd9 100644 --- a/ext/session/session.c +++ b/ext/session/session.c @@ -1994,7 +1994,7 @@ static PHP_FUNCTION(session_regenerate_id) RETURN_FALSE; } efree(PS(id)); - PS(id) = NULL; + memset(PS(session_data_hash),'\0', 16); } PS(id) = PS(mod)->s_create_sid(&PS(mod_data), NULL TSRMLS_CC); diff --git a/ext/session/tests/bug67694.phpt b/ext/session/tests/bug67694.phpt new file mode 100644 index 0000000000..08a296923f --- /dev/null +++ b/ext/session/tests/bug67694.phpt @@ -0,0 +1,41 @@ +--TEST-- +Bug #67694 Regression in session_regenerate_id() +--INI-- +session.save_handler = files +session.name=PHPSESSID +session.auto_start = 0 +session.use_cookies = 0 +session.cache_limiter = +date.timezone = UTC +--SKIPIF-- + +--FILE-- +