summaryrefslogtreecommitdiff
path: root/ext/session/php_session.h
diff options
context:
space:
mode:
authorArnaud Le Blanc <lbarnaud@php.net>2010-05-10 16:09:00 +0000
committerArnaud Le Blanc <lbarnaud@php.net>2010-05-10 16:09:00 +0000
commitda9448f3fd5810f029656668ed3b218f4be9c8f6 (patch)
tree1f5bbbf0180ee4506c783126d8364265d6084a56 /ext/session/php_session.h
parentd5a646480dc68a9b8bfaf8ddeb8160f499053a8b (diff)
downloadphp-git-da9448f3fd5810f029656668ed3b218f4be9c8f6.tar.gz
Added upload progress feedback in session data as describied
in RFC : http://wiki.php.net/rfc/session_upload_progress
Diffstat (limited to 'ext/session/php_session.h')
-rw-r--r--ext/session/php_session.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/ext/session/php_session.h b/ext/session/php_session.h
index 8d3c9d0b4e..1f32811361 100644
--- a/ext/session/php_session.h
+++ b/ext/session/php_session.h
@@ -95,6 +95,26 @@ typedef enum {
php_session_active
} php_session_status;
+typedef struct _php_session_rfc1867_progress {
+
+ size_t sname_len;
+ zval sid;
+ smart_str key;
+
+ long update_step;
+ long next_update;
+ double next_update_time;
+ zend_bool cancel_upload;
+ zend_bool apply_trans_sid;
+ size_t content_length;
+
+ zval *data; /* the array exported to session data */
+ zval *post_bytes_processed; /* data["bytes_processed"] */
+ zval *files; /* data["files"] array */
+ zval *current_file; /* array of currently uploading file */
+ zval *current_file_bytes_processed;
+} php_session_rfc1867_progress;
+
typedef struct _php_ps_globals {
char *save_path;
char *session_name;
@@ -143,6 +163,13 @@ typedef struct _php_ps_globals {
int send_cookie;
int define_sid;
zend_bool invalid_session_id; /* allows the driver to report about an invalid session id and request id regeneration */
+
+ php_session_rfc1867_progress *rfc1867_progress;
+ zend_bool rfc1867_enabled; /* session.upload_progress.enabled */
+ smart_str rfc1867_prefix; /* session.upload_progress.prefix */
+ smart_str rfc1867_name; /* session.upload_progress.name */
+ long rfc1867_freq; /* session.upload_progress.freq */
+ double rfc1867_min_freq; /* session.upload_progress.min_freq */
} php_ps_globals;
typedef php_ps_globals zend_ps_globals;