1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-07 04:02:58 +03:00

PR63971 expose apr_table_unset for headers/envvars

via nil assignment



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1870650 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Eric Covener
2019-11-30 20:28:36 +00:00
parent bf3336b2c2
commit 659cf30d6f
2 changed files with 11 additions and 1 deletions

View File

@@ -1,6 +1,10 @@
-*- coding: utf-8 -*- -*- coding: utf-8 -*-
Changes with Apache 2.5.1 Changes with Apache 2.5.1
*) mod_lua: Accept nil assignments to the exposed tables (r.subprocess_env,
r.headers_out, etc) to remove the key from the table. PR63971.
[Eric Covener]
*) mod_http2: Fixed interaction with mod_reqtimeout. A loaded mod_http2 was disabling the *) mod_http2: Fixed interaction with mod_reqtimeout. A loaded mod_http2 was disabling the
ssl handshake timeouts. Also, fixed a mistake of the last version that made `H2Direct` ssl handshake timeouts. Also, fixed a mistake of the last version that made `H2Direct`
always `on`, irregardless of configuration. Found and reported by always `on`, irregardless of configuration. Found and reported by

View File

@@ -39,7 +39,13 @@ static int lua_table_set(lua_State *L)
{ {
req_table_t *t = ap_lua_check_apr_table(L, 1); req_table_t *t = ap_lua_check_apr_table(L, 1);
const char *key = luaL_checkstring(L, 2); const char *key = luaL_checkstring(L, 2);
const char *val = luaL_checkstring(L, 3); const char *val = luaL_optlstring(L, 3, NULL, NULL);
if (!val) {
apr_table_unset(t->t, key);
return 0;
}
/* Unless it's the 'notes' table, check for newline chars */ /* Unless it's the 'notes' table, check for newline chars */
/* t->r will be NULL in case of the connection notes, but since /* t->r will be NULL in case of the connection notes, but since
we aren't going to check anything called 'notes', we can safely we aren't going to check anything called 'notes', we can safely