Add patch support (#217)

Add PATCH to supported verbs in config and what not.
This commit is contained in:
rouzier 2018-01-02 16:27:59 -05:00 committed by Joris Vink
parent f8b3915ee1
commit f0f1296265
5 changed files with 13 additions and 0 deletions

View File

@ -172,6 +172,7 @@ struct http_file {
#define HTTP_METHOD_DELETE 3
#define HTTP_METHOD_HEAD 4
#define HTTP_METHOD_OPTIONS 5
#define HTTP_METHOD_PATCH 6
#define HTTP_REQUEST_COMPLETE 0x0001
#define HTTP_REQUEST_DELETE 0x0002

View File

@ -88,6 +88,9 @@ kore_accesslog_write(const void *data, u_int32_t len)
case HTTP_METHOD_HEAD:
method = "HEAD";
break;
case HTTP_METHOD_PATCH:
method = "PATCH";
break;
default:
method = "UNKNOWN";
break;

View File

@ -760,6 +760,8 @@ configure_params(char *options)
current_method = HTTP_METHOD_DELETE;
} else if (!strcasecmp(argv[0], "head")) {
current_method = HTTP_METHOD_HEAD;
} else if (!strcasecmp(argv[0], "patch")) {
current_method = HTTP_METHOD_PATCH;
} else {
printf("unknown method: %s in params block for %s\n",
argv[0], argv[1]);

View File

@ -234,6 +234,9 @@ http_request_new(struct connection *c, const char *host,
} else if (!strcasecmp(method, "options")) {
m = HTTP_METHOD_OPTIONS;
flags = HTTP_REQUEST_COMPLETE;
} else if (!strcasecmp(method, "patch")) {
m = HTTP_METHOD_PATCH;
flags = HTTP_REQUEST_EXPECT_BODY;
} else {
http_error_response(c, 400);
return (KORE_RESULT_ERROR);
@ -1894,6 +1897,9 @@ http_method_text(int method)
case HTTP_METHOD_OPTIONS:
r = "OPTIONS";
break;
case HTTP_METHOD_PATCH:
r = "PATCH";
break;
default:
r = "";
break;

View File

@ -107,6 +107,7 @@ static struct {
{ "METHOD_POST", HTTP_METHOD_POST },
{ "METHOD_DELETE", HTTP_METHOD_DELETE },
{ "METHOD_OPTIONS", HTTP_METHOD_OPTIONS },
{ "METHOD_PATCH", HTTP_METHOD_PATCH },
{ "WEBSOCKET_OP_TEXT", WEBSOCKET_OP_TEXT },
{ "WEBSOCKET_OP_BINARY", WEBSOCKET_OP_BINARY },
{ "WEBSOCKET_BROADCAST_LOCAL", WEBSOCKET_BROADCAST_LOCAL },