summaryrefslogtreecommitdiff
path: root/libexec/httpd/lua/glue.c
diff options
context:
space:
mode:
authorsevan <sevan@NetBSD.org>2018-05-04 19:45:27 +0000
committersevan <sevan@NetBSD.org>2018-05-04 19:45:27 +0000
commit923a1e92560251072c2b79dcce01257ca8f26e8a (patch)
tree188b966e34298ee5b1de3c0ff902e2ec264925d3 /libexec/httpd/lua/glue.c
parentb3ca58d665e1fad7de7f6f502aaacc9edaed538c (diff)
Do not try and process empty requests. This resolves a crash when issuing a
carriage return to read_request() in foreground mode. In the C daemon, a NULL check is performed on bozo_read_request in main.c before moving on to bozo_process_request & bozo_clean_request. Here, process_request & clean_request just return instead.
Diffstat (limited to 'libexec/httpd/lua/glue.c')
-rw-r--r--libexec/httpd/lua/glue.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libexec/httpd/lua/glue.c b/libexec/httpd/lua/glue.c
index 9752eb62207..28c5c834959 100644
--- a/libexec/httpd/lua/glue.c
+++ b/libexec/httpd/lua/glue.c
@@ -155,6 +155,9 @@ l_bozo_process_request(lua_State *L)
bozo_httpreq_t *req;
req = lua_touserdata(L, 1);
+ if (req == NULL) {
+ return 0;
+ }
bozo_process_request(req);
lua_pushnumber(L, 1);
return 1;
@@ -167,6 +170,9 @@ l_bozo_clean_request(lua_State *L)
bozo_httpreq_t *req;
req = lua_touserdata(L, 1);
+ if (req == NULL) {
+ return 0;
+ }
bozo_clean_request(req);
lua_pushnumber(L, 1);
return 1;