- drop mhash support
[m6w6/ext-http] / php_http_request_method_api.h
1 /*
2 +--------------------------------------------------------------------+
3 | PECL :: http |
4 +--------------------------------------------------------------------+
5 | Redistribution and use in source and binary forms, with or without |
6 | modification, are permitted provided that the conditions mentioned |
7 | in the accompanying LICENSE file are met. |
8 +--------------------------------------------------------------------+
9 | Copyright (c) 2004-2005, Michael Wallner <mike@php.net> |
10 +--------------------------------------------------------------------+
11 */
12
13 /* $Id$ */
14
15 #ifndef PHP_HTTP_REQUEST_METHOD_API_H
16 #define PHP_HTTP_REQUEST_METHOD_API_H
17
18 #include "php_http_std_defs.h"
19 #include "phpstr/phpstr.h"
20
21 typedef enum {
22 HTTP_NO_REQUEST_METHOD = 0,
23 /* HTTP/1.1 */
24 HTTP_GET = 1,
25 HTTP_HEAD = 2,
26 HTTP_POST = 3,
27 HTTP_PUT = 4,
28 HTTP_DELETE = 5,
29 HTTP_OPTIONS = 6,
30 HTTP_TRACE = 7,
31 HTTP_CONNECT = 8,
32 /* WebDAV - RFC 2518 */
33 HTTP_PROPFIND = 9,
34 HTTP_PROPPATCH = 10,
35 HTTP_MKCOL = 11,
36 HTTP_COPY = 12,
37 HTTP_MOVE = 13,
38 HTTP_LOCK = 14,
39 HTTP_UNLOCK = 15,
40 /* WebDAV Versioning - RFC 3253 */
41 HTTP_VERSION_CONTROL = 16,
42 HTTP_REPORT = 17,
43 HTTP_CHECKOUT = 18,
44 HTTP_CHECKIN = 19,
45 HTTP_UNCHECKOUT = 20,
46 HTTP_MKWORKSPACE = 21,
47 HTTP_UPDATE = 22,
48 HTTP_LABEL = 23,
49 HTTP_MERGE = 24,
50 HTTP_BASELINE_CONTROL = 25,
51 HTTP_MKACTIVITY = 26,
52 /* WebDAV Access Control - RFC 3744 */
53 HTTP_ACL = 27,
54 HTTP_MAX_REQUEST_METHOD = 28
55 } http_request_method;
56
57 #define HTTP_STD_REQUEST_METHOD(m) ((m > HTTP_NO_REQUEST_METHOD) && (m < HTTP_MAX_REQUEST_METHOD))
58 #define HTTP_CUSTOM_REQUEST_METHOD(m) (m - HTTP_MAX_REQUEST_METHOD)
59
60 extern PHP_MINIT_FUNCTION(http_request_method);
61 extern PHP_RSHUTDOWN_FUNCTION(http_request_method);
62
63 #define http_request_method_name(m) _http_request_method_name((m) TSRMLS_CC)
64 PHP_HTTP_API const char *_http_request_method_name(http_request_method m TSRMLS_DC);
65
66 #define http_request_method_exists(u, l, c) _http_request_method_exists((u), (l), (c) TSRMLS_CC)
67 PHP_HTTP_API ulong _http_request_method_exists(zend_bool by_name, ulong id, const char *name TSRMLS_DC);
68
69 #define http_request_method_register(m, l) _http_request_method_register((m), (l) TSRMLS_CC)
70 PHP_HTTP_API ulong _http_request_method_register(const char *method, size_t method_name_len TSRMLS_DC);
71
72 #define http_request_method_unregister(mn) _http_request_method_unregister((mn) TSRMLS_CC)
73 PHP_HTTP_API STATUS _http_request_method_unregister(ulong method TSRMLS_DC);
74
75 #endif
76
77 /*
78 * Local variables:
79 * tab-width: 4
80 * c-basic-offset: 4
81 * End:
82 * vim600: noet sw=4 ts=4 fdm=marker
83 * vim<600: noet sw=4 ts=4
84 */
85