From 7832438b7abedf567ce6376f99949f419abcdff1 Mon Sep 17 00:00:00 2001 From: kkadosh Date: Tue, 29 May 2018 19:34:16 +0000 Subject: Support session encryption Implement session encryption.--- src/snuffleupagus.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/snuffleupagus.c') diff --git a/src/snuffleupagus.c b/src/snuffleupagus.c index 3cdcfb9..c3fc686 100644 --- a/src/snuffleupagus.c +++ b/src/snuffleupagus.c @@ -81,6 +81,7 @@ PHP_GINIT_FUNCTION(snuffleupagus) { SP_INIT(snuffleupagus_globals->config.config_disabled_functions); SP_INIT(snuffleupagus_globals->config.config_disabled_functions_ret); SP_INIT(snuffleupagus_globals->config.config_cookie); + SP_INIT(snuffleupagus_globals->config.config_session); SP_INIT(snuffleupagus_globals->config.config_disabled_constructs); SP_INIT(snuffleupagus_globals->config.config_eval); @@ -124,6 +125,7 @@ PHP_MSHUTDOWN_FUNCTION(snuffleupagus) { pefree(SNUFFLEUPAGUS_G(config.config_snuffleupagus), 1); pefree(SNUFFLEUPAGUS_G(config.config_disable_xxe), 1); pefree(SNUFFLEUPAGUS_G(config.config_upload_validation), 1); + pefree(SNUFFLEUPAGUS_G(config.config_session), 1); #define FREE_LST_DISABLE(L) \ do { \ @@ -229,6 +231,10 @@ static PHP_INI_MH(OnUpdateConfiguration) { } hook_cookies(); + if (SNUFFLEUPAGUS_G(config).config_session->encrypt) { + hook_session(); + } + if (true == SNUFFLEUPAGUS_G(config).config_global_strict->enable) { if (!zend_get_extension(PHP_SNUFFLEUPAGUS_EXTNAME)) { zend_extension_entry.startup = NULL; -- cgit v1.3