summaryrefslogtreecommitdiff
path: root/ext/session/php_session.h
diff options
context:
space:
mode:
authorArpad Ray <arpad@php.net>2011-09-13 22:28:15 +0000
committerArpad Ray <arpad@php.net>2011-09-13 22:28:15 +0000
commit47cfae87eb5a51a2d90c6363ca36b109e8253605 (patch)
tree4d8efafec2975af63613a8fca46760108e2de3b2 /ext/session/php_session.h
parent6e998b4d0ff6b1d14f787b4e2dd3a49af55aa378 (diff)
downloadphp-git-47cfae87eb5a51a2d90c6363ca36b109e8253605.tar.gz
Implement object-oriented session handlers (https://wiki.php.net/rfc/session-oo)
Diffstat (limited to 'ext/session/php_session.h')
-rw-r--r--ext/session/php_session.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/ext/session/php_session.h b/ext/session/php_session.h
index 767ed48c88..b11aad2074 100644
--- a/ext/session/php_session.h
+++ b/ext/session/php_session.h
@@ -129,6 +129,7 @@ typedef struct _php_ps_globals {
zend_bool cookie_secure;
zend_bool cookie_httponly;
ps_module *mod;
+ ps_module *default_mod;
void *mod_data;
php_session_status session_status;
long gc_probability;
@@ -147,6 +148,8 @@ typedef struct _php_ps_globals {
zval *ps_gc;
} name;
} mod_user_names;
+ int mod_user_implemented;
+ int mod_user_is_open;
const struct ps_serializer_struct *serializer;
zval *http_session_vars;
zend_bool auto_start;
@@ -268,4 +271,14 @@ PHPAPI ZEND_EXTERN_MODULE_GLOBALS(ps)
void php_session_auto_start(void *data);
void php_session_shutdown(void *data);
+#define PS_CLASS_NAME "SessionHandler"
+extern zend_class_entry *php_session_class_entry;
+
+extern PHP_METHOD(SessionHandler, open);
+extern PHP_METHOD(SessionHandler, close);
+extern PHP_METHOD(SessionHandler, read);
+extern PHP_METHOD(SessionHandler, write);
+extern PHP_METHOD(SessionHandler, destroy);
+extern PHP_METHOD(SessionHandler, gc);
+
#endif