summaryrefslogtreecommitdiff
path: root/main/rfc1867.h
diff options
context:
space:
mode:
authorStefan Esser <sesser@php.net>2006-07-22 16:38:29 +0000
committerStefan Esser <sesser@php.net>2006-07-22 16:38:29 +0000
commitcfac29e20eb286ef4d083338e446dd0cb56af1d2 (patch)
treeab3c87c8f868e5dd4663de5a55603ad945744d6c /main/rfc1867.h
parent2b8ad5a0afe8a5b8e612e7a758f61fb854f8841c (diff)
downloadphp-git-cfac29e20eb286ef4d083338e446dd0cb56af1d2.tar.gz
Added RFC1867 fileupload processing hook.
Diffstat (limited to 'main/rfc1867.h')
-rw-r--r--main/rfc1867.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/main/rfc1867.h b/main/rfc1867.h
index 175391ef2f..e7a704f828 100644
--- a/main/rfc1867.h
+++ b/main/rfc1867.h
@@ -24,10 +24,53 @@
#include "SAPI.h"
#define MULTIPART_CONTENT_TYPE "multipart/form-data"
+#define MULTIPART_EVENT_START 0
+#define MULTIPART_EVENT_FORMDATA 1
+#define MULTIPART_EVENT_FILE_START 2
+#define MULTIPART_EVENT_FILE_DATA 3
+#define MULTIPART_EVENT_FILE_END 4
+#define MULTIPART_EVENT_END 5
+
+typedef struct _multipart_event_start {
+ size_t content_length;
+} multipart_event_start;
+
+typedef struct _multipart_event_formdata {
+ size_t post_bytes_processed;
+ char *name;
+ char **value;
+ size_t length;
+ size_t *newlength;
+} multipart_event_formdata;
+
+typedef struct _multipart_event_file_start {
+ size_t post_bytes_processed;
+ char *name;
+ char **filename;
+} multipart_event_file_start;
+
+typedef struct _multipart_event_file_data {
+ size_t post_bytes_processed;
+ off_t offset;
+ char *data;
+ size_t length;
+ size_t *newlength;
+} multipart_event_file_data;
+
+typedef struct _multipart_event_file_end {
+ size_t post_bytes_processed;
+ char *temp_filename;
+ int cancel_upload;
+} multipart_event_file_end;
+
+typedef struct _multipart_event_end {
+ size_t post_bytes_processed;
+} multipart_event_end;
SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler);
void destroy_uploaded_files_hash(TSRMLS_D);
void php_rfc1867_register_constants(TSRMLS_D);
+PHPAPI int (*php_rfc1867_callback)(unsigned int event, void *event_data, void **extra TSRMLS_DC);
#endif /* RFC1867_H */