You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
110 lines
3.5 KiB
110 lines
3.5 KiB
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|
# |
|
# Filename: package/.../lua-wsapi/status_names.patch |
|
# Copyright (C) 2009 The OpenSDE Project |
|
# |
|
# More information can be found in the files COPYING and README. |
|
# |
|
# This patch file is dual-licensed. It is available under the license the |
|
# patched project is licensed under, as long as it is an OpenSource license |
|
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|
# of the GNU General Public License as published by the Free Software |
|
# Foundation; either version 2 of the License, or (at your option) any later |
|
# version. |
|
# --- SDE-COPYRIGHT-NOTE-END --- |
|
|
|
--- ./src/wsapi/xavante.lua.orig 2009-06-02 16:30:03.000000000 +0200 |
|
+++ ./src/wsapi/xavante.lua 2009-06-02 17:09:31.000000000 +0200 |
|
@@ -4,6 +4,7 @@ |
|
-- Author: Fabio Mascarenhas |
|
-- Copyright (c) 2007 Kepler Project |
|
-- |
|
+-- vim: ts=3 cw=3 et: |
|
----------------------------------------------------------------------------- |
|
|
|
require "coxpcall" |
|
@@ -43,6 +44,49 @@ |
|
end |
|
end |
|
|
|
+local status_name = { |
|
+ [100] = "Continue", |
|
+ [101] = "Switching Protocols", |
|
+ [200] = "OK", |
|
+ [201] = "Created", |
|
+ [202] = "Accepted", |
|
+ [203] = "Non-Authoritative Information", |
|
+ [204] = "No Content", |
|
+ [205] = "Reset Content", |
|
+ [206] = "Partial Content", |
|
+ [300] = "Multiple Choices", |
|
+ [301] = "Moved Permanently", |
|
+ [302] = "Found", |
|
+ [303] = "See Other", |
|
+ [304] = "Not Modified", |
|
+ [305] = "Use Proxy", |
|
+ [307] = "Temporary Redirect", |
|
+ [400] = "Bad Request", |
|
+ [401] = "Unauthorized", |
|
+ [402] = "Payment Required", |
|
+ [403] = "Forbidden", |
|
+ [404] = "Not Found", |
|
+ [405] = "Method Not Allowed", |
|
+ [406] = "Not Acceptable", |
|
+ [407] = "Proxy Authentication Required", |
|
+ [408] = "Request Time-out", |
|
+ [409] = "Conflict", |
|
+ [410] = "Gone", |
|
+ [411] = "Length Required", |
|
+ [412] = "Precondition Failed", |
|
+ [413] = "Request Entity Too Large", |
|
+ [414] = "Request-URI Too Large", |
|
+ [415] = "Unsupported Media Type", |
|
+ [416] = "Requested range not satisfiable", |
|
+ [417] = "Expectation Failed", |
|
+ [500] = "Internal Server Error", |
|
+ [501] = "Not Implemented", |
|
+ [502] = "Bad Gateway", |
|
+ [503] = "Service Unavailable", |
|
+ [504] = "Gateway Time-out", |
|
+ [505] = "HTTP Version not supported", |
|
+} |
|
+ |
|
local function wsapihandler (req, res, wsapi_run, app_prefix, docroot, app_path) |
|
local path_info_pat = "^" .. (app_prefix or "") .. "(.*)" |
|
set_cgivars(req, docroot, path_info_pat, app_prefix) |
|
@@ -57,7 +101,8 @@ |
|
wsapi_env.APP_PATH = app_path |
|
|
|
local function set_status(status) |
|
- res.statusline = "HTTP/1.1 " .. tostring(status) |
|
+ res.statusline = string.format("HTTP/1.1 %d %s", |
|
+ status, status_name[status] or "Unknown") |
|
end |
|
|
|
local function send_headers(headers) |
|
@@ -81,16 +126,14 @@ |
|
set_status(status or 500) |
|
send_headers(headers or {}) |
|
common.send_content(res, res_iter, "send_data") |
|
+ elseif wsapi_env.STATUS == 404 then |
|
+ set_status(404) |
|
+ send_headers({ ["Content-Type"] = "text/html" }) |
|
+ res:send_data(status) |
|
else |
|
- if wsapi_env.STATUS == 404 then |
|
- res.statusline = "HTTP/1.1 404" |
|
- send_headers({ ["Content-Type"] = "text/html" }) |
|
- res:send_data(status) |
|
- else |
|
- res.statusline = "HTTP/1.1 500" |
|
- send_headers({ ["Content-Type"] = "text/html" }) |
|
- res:send_data(common.error_html(status)) |
|
- end |
|
+ set_status(500) |
|
+ send_headers({ ["Content-Type"] = "text/html" }) |
|
+ res:send_data(common.error_html(status)) |
|
end |
|
end |
|
|
|
|