author | Petr Sumbera <petr.sumbera@oracle.com> |
Thu, 14 Mar 2013 13:45:44 -0700 | |
changeset 1212 | 207ff3b0329a |
parent 1028 | 30d7999e80d9 |
permissions | -rw-r--r-- |
1212
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
1 |
https://github.com/SpiderLabs/ModSecurity/commit/452177c437cdefeb6e8b773b5865af356a1c9e2d.patch |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
2 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
3 |
From 452177c437cdefeb6e8b773b5865af356a1c9e2d Mon Sep 17 00:00:00 2001 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
4 |
From: Breno Silva <[email protected]> |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
5 |
Date: Wed, 30 Jan 2013 22:04:21 -0400 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
6 |
Subject: [PATCH] ModSecurity: fixed compiling with lua 5.2 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
7 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
8 |
--- |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
9 |
apache2/mod_security2.c | 4 ++++ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
10 |
apache2/msc_lua.c | 17 +++++++++++++++++ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
11 |
2 files changed, 21 insertions(+) |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
12 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
13 |
diff --git a/apache2/mod_security2.c b/apache2/mod_security2.c |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
14 |
index 6b41088..849ca9d 100644 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
15 |
--- a/apache2/mod_security2.c |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
16 |
+++ b/apache2/mod_security2.c |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
17 |
@@ -440,7 +440,11 @@ static modsec_rec *create_tx_context(request_rec *r) { |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
18 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
19 |
#if defined(WITH_LUA) |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
20 |
#ifdef CACHE_LUA |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
21 |
+#if LUA_VERSION_NUM > 501 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
22 |
+ msr->L = luaL_newstate(); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
23 |
+#else |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
24 |
msr->L = lua_open(); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
25 |
+#endif |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
26 |
luaL_openlibs(msr->L); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
27 |
#endif |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
28 |
#endif |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
29 |
diff --git a/apache2/msc_lua.c b/apache2/msc_lua.c |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
30 |
index 4abf7e5..6450e77 100644 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
31 |
--- a/apache2/msc_lua.c |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
32 |
+++ b/apache2/msc_lua.c |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
33 |
@@ -94,7 +94,11 @@ char *lua_compile(msc_script **script, const char *filename, apr_pool_t *pool) { |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
34 |
msc_lua_dumpw_t dump; |
1028
30d7999e80d9
7203970 lua update breaks things
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
35 |
|
1212
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
36 |
/* Initialise state. */ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
37 |
+#if LUA_VERSION_NUM > 501 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
38 |
+ L = luaL_newstate(); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
39 |
+#else |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
40 |
L = lua_open(); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
41 |
+#endif |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
42 |
luaL_openlibs(L); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
43 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
44 |
/* Find script. */ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
45 |
@@ -158,7 +162,11 @@ static apr_array_header_t *resolve_tfns(lua_State *L, int idx, modsec_rec *msr, |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
46 |
if (lua_isuserdata(L, idx) || lua_isnoneornil(L, idx)) { /* No second parameter */ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
47 |
return tfn_arr; |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
48 |
} else if (lua_istable(L, idx)) { /* Is the second parameter an array? */ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
49 |
+#if LUA_VERSION_NUM > 501 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
50 |
+ int i, n = lua_rawlen(L, idx); |
1028
30d7999e80d9
7203970 lua update breaks things
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
51 |
+#else |
1212
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
52 |
int i, n = lua_objlen(L, idx); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
53 |
+#endif |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
54 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
55 |
for(i = 1; i <= n; i++) { |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
56 |
lua_rawgeti(L, idx, i); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
57 |
@@ -415,7 +423,11 @@ int lua_execute(msc_script *script, char *param, modsec_rec *msr, msre_rule *rul |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
58 |
lua_pop(L, rc); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
59 |
#else |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
60 |
/* Create new state. */ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
61 |
+#if LUA_VERSION_NUM > 501 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
62 |
+ L = luaL_newstate(); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
63 |
+#else |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
64 |
L = lua_open(); |
1028
30d7999e80d9
7203970 lua update breaks things
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
65 |
+#endif |
1212
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
66 |
luaL_openlibs(L); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
67 |
#endif |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
68 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
69 |
@@ -433,7 +445,12 @@ int lua_execute(msc_script *script, char *param, modsec_rec *msr, msre_rule *rul |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
70 |
} |
1028
30d7999e80d9
7203970 lua update breaks things
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
71 |
|
1212
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
72 |
/* Register functions. */ |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
73 |
+#if LUA_VERSION_NUM > 501 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
74 |
+ luaL_setfuncs(L,mylib,0); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
75 |
+ lua_setglobal(L,"m"); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
76 |
+#else |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
77 |
luaL_register(L, "m", mylib); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
78 |
+#endif |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
79 |
|
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
80 |
rc = lua_restore(L, script); |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
81 |
if (rc) { |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
82 |
-- |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
83 |
1.7.10 |
207ff3b0329a
16476497 Upgrade ModSecurity to version 2.7.2
Petr Sumbera <petr.sumbera@oracle.com>
parents:
1028
diff
changeset
|
84 |