/* * Copyright (C) Yichun Zhang (agentzh) */ #ifndef DDEBUG #define DDEBUG 0 #endif #include "ddebug.h" #include "ngx_http_lua_subrequest.h" int ngx_http_lua_ffi_req_get_method(ngx_http_request_t *r) { if (r->connection->fd == (ngx_socket_t) -1) { return NGX_HTTP_LUA_FFI_BAD_CONTEXT; } return r->method; } int ngx_http_lua_ffi_req_get_method_name(ngx_http_request_t *r, u_char **name, size_t *len) { if (r->connection->fd == (ngx_socket_t) -1) { return NGX_HTTP_LUA_FFI_BAD_CONTEXT; } *name = r->method_name.data; *len = r->method_name.len; return NGX_OK; } int ngx_http_lua_ffi_req_set_method(ngx_http_request_t *r, int method) { if (r->connection->fd == (ngx_socket_t) -1) { return NGX_HTTP_LUA_FFI_BAD_CONTEXT; } switch (method) { case NGX_HTTP_GET: r->method_name = ngx_http_lua_get_method; break; case NGX_HTTP_POST: r->method_name = ngx_http_lua_post_method; break; case NGX_HTTP_PUT: r->method_name = ngx_http_lua_put_method; break; case NGX_HTTP_HEAD: r->method_name = ngx_http_lua_head_method; break; case NGX_HTTP_DELETE: r->method_name = ngx_http_lua_delete_method; break; case NGX_HTTP_OPTIONS: r->method_name = ngx_http_lua_options_method; break; case NGX_HTTP_MKCOL: r->method_name = ngx_http_lua_mkcol_method; break; case NGX_HTTP_COPY: r->method_name = ngx_http_lua_copy_method; break; case NGX_HTTP_MOVE: r->method_name = ngx_http_lua_move_method; break; case NGX_HTTP_PROPFIND: r->method_name = ngx_http_lua_propfind_method; break; case NGX_HTTP_PROPPATCH: r->method_name = ngx_http_lua_proppatch_method; break; case NGX_HTTP_LOCK: r->method_name = ngx_http_lua_lock_method; break; case NGX_HTTP_UNLOCK: r->method_name = ngx_http_lua_unlock_method; break; case NGX_HTTP_PATCH: r->method_name = ngx_http_lua_patch_method; break; case NGX_HTTP_TRACE: r->method_name = ngx_http_lua_trace_method; break; default: return NGX_DECLINED; } r->method = method; return NGX_OK; } /* vi:set ft=c ts=4 sw=4 et fdm=marker: */