From 0c5e2bbf410d6b14771a92545fe1f5a325e133a2 Mon Sep 17 00:00:00 2001 From: Jan Kneschke Date: Mon, 15 Aug 2005 09:50:04 +0000 Subject: [PATCH] added WebDAV methods and statuscodes git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-merge-1.4.x@537 152afb58-edef-0310-8abb-c4023f1b3aa9 --- src/keyvalue.c | 12 +++++++++++- src/keyvalue.h | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/keyvalue.c b/src/keyvalue.c index 74886985..194c6967 100644 --- a/src/keyvalue.c +++ b/src/keyvalue.c @@ -15,13 +15,18 @@ static keyvalue http_methods[] = { { HTTP_METHOD_GET, "GET" }, { HTTP_METHOD_POST, "POST" }, { HTTP_METHOD_HEAD, "HEAD" }, + { HTTP_METHOD_PROPFIND, "PROPFIND" }, { HTTP_METHOD_OPTIONS, "OPTIONS" }, + { HTTP_METHOD_MKCOL, "MKCOL" }, + { HTTP_METHOD_PUT, "PUT" }, + { HTTP_METHOD_DELETE, "DELETE" }, { HTTP_METHOD_UNSET, NULL } }; static keyvalue http_status[] = { { 100, "Continue" }, { 101, "Switching Protocols" }, + { 102, "Processing" }, /* WebDAV */ { 200, "OK" }, { 201, "Created" }, { 202, "Accepted" }, @@ -29,6 +34,7 @@ static keyvalue http_status[] = { { 204, "No Content" }, { 205, "Reset Content" }, { 206, "Partial Content" }, + { 207, "Multi-status" }, /* WebDAV */ { 300, "Multiple Choices" }, { 301, "Moved Permanently" }, { 302, "Found" }, @@ -55,13 +61,17 @@ static keyvalue http_status[] = { { 415, "Unsupported Media Type" }, { 416, "Requested Range Not Satisfiable" }, { 417, "Expectation Failed" }, - { 426, "Upgrade Required" }, + { 422, "Unprocessable Entity" }, /* WebDAV */ + { 423, "Locked" }, /* WebDAV */ + { 424, "Failed Dependency" }, /* WebDAV */ + { 426, "Upgrade Required" }, /* TLS */ { 500, "Internal Server Error" }, { 501, "Not Implemented" }, { 502, "Bad Gateway" }, { 503, "Service Not Available" }, { 504, "Gateway Timeout" }, { 505, "HTTP Version Not Supported" }, + { 507, "Insufficient Storage" }, /* WebDAV */ { -1, NULL } }; diff --git a/src/keyvalue.h b/src/keyvalue.h index de7056ff..611973c8 100644 --- a/src/keyvalue.h +++ b/src/keyvalue.h @@ -7,7 +7,7 @@ # include #endif -typedef enum { HTTP_METHOD_UNSET = -1, HTTP_METHOD_GET, HTTP_METHOD_POST, HTTP_METHOD_HEAD, HTTP_METHOD_OPTIONS } http_method_t; +typedef enum { HTTP_METHOD_UNSET = -1, HTTP_METHOD_GET, HTTP_METHOD_POST, HTTP_METHOD_HEAD, HTTP_METHOD_PROPFIND, HTTP_METHOD_OPTIONS, HTTP_METHOD_MKCOL, HTTP_METHOD_PUT, HTTP_METHOD_DELETE } http_method_t; typedef enum { HTTP_VERSION_UNSET = -1, HTTP_VERSION_1_0, HTTP_VERSION_1_1 } http_version_t; typedef struct {