| 143 | #define makeintegerfield(L, n) lua_pushinteger(L, n); lua_setfield(L, -2, #n) |
| 144 | |
| 145 | void ap_lua_load_apache2_lmodule(lua_State *L) |
| 146 | { |
| 147 | lua_getglobal(L, "package"); |
| 148 | lua_getfield(L, -1, "loaded"); |
| 149 | lua_newtable(L); |
| 150 | lua_setfield(L, -2, "apache2"); |
| 151 | lua_setglobal(L, "apache2"); |
| 152 | lua_pop(L, 1); /* empty stack */ |
| 153 | |
| 154 | lua_getglobal(L, "apache2"); |
| 155 | |
| 156 | lua_pushstring(L, ap_get_server_banner()); |
| 157 | lua_setfield(L, -2, "version"); |
| 158 | |
| 159 | makeintegerfield(L, OK); |
| 160 | makeintegerfield(L, DECLINED); |
| 161 | makeintegerfield(L, DONE); |
| 162 | makeintegerfield(L, HTTP_MOVED_TEMPORARILY); |
| 163 | makeintegerfield(L, PROXYREQ_NONE); |
| 164 | makeintegerfield(L, PROXYREQ_PROXY); |
| 165 | makeintegerfield(L, PROXYREQ_REVERSE); |
| 166 | makeintegerfield(L, PROXYREQ_RESPONSE); |
| 167 | makeintegerfield(L, PROXYREQ_RESPONSE); |
| 168 | makeintegerfield(L, AUTHZ_DENIED); |
| 169 | makeintegerfield(L, AUTHZ_GRANTED); |
| 170 | makeintegerfield(L, AUTHZ_NEUTRAL); |
| 171 | makeintegerfield(L, AUTHZ_GENERAL_ERROR); |
| 172 | makeintegerfield(L, AUTHZ_DENIED_NO_USER); |
| 173 | |
| 174 | /* |
| 175 | makeintegerfield(L, HTTP_CONTINUE); |
| 176 | makeintegerfield(L, HTTP_SWITCHING_PROTOCOLS); |
| 177 | makeintegerfield(L, HTTP_PROCESSING); |
| 178 | makeintegerfield(L, HTTP_OK); |
| 179 | makeintegerfield(L, HTTP_CREATED); |
| 180 | makeintegerfield(L, HTTP_ACCEPTED); |
| 181 | makeintegerfield(L, HTTP_NON_AUTHORITATIVE); |
| 182 | makeintegerfield(L, HTTP_NO_CONTENT); |
| 183 | makeintegerfield(L, HTTP_RESET_CONTENT); |
| 184 | makeintegerfield(L, HTTP_PARTIAL_CONTENT); |
| 185 | makeintegerfield(L, HTTP_MULTI_STATUS); |
| 186 | makeintegerfield(L, HTTP_ALREADY_REPORTED); |
| 187 | makeintegerfield(L, HTTP_IM_USED); |
| 188 | makeintegerfield(L, HTTP_MULTIPLE_CHOICES); |
| 189 | makeintegerfield(L, HTTP_MOVED_PERMANENTLY); |
| 190 | makeintegerfield(L, HTTP_MOVED_TEMPORARILY); |
| 191 | makeintegerfield(L, HTTP_SEE_OTHER); |
| 192 | makeintegerfield(L, HTTP_NOT_MODIFIED); |
| 193 | makeintegerfield(L, HTTP_USE_PROXY); |
| 194 | makeintegerfield(L, HTTP_TEMPORARY_REDIRECT); |
| 195 | makeintegerfield(L, HTTP_PERMANENT_REDIRECT); |
| 196 | makeintegerfield(L, HTTP_BAD_REQUEST); |
| 197 | makeintegerfield(L, HTTP_UNAUTHORIZED); |
| 198 | makeintegerfield(L, HTTP_PAYMENT_REQUIRED); |
| 199 | makeintegerfield(L, HTTP_FORBIDDEN); |
| 200 | makeintegerfield(L, HTTP_NOT_FOUND); |
| 201 | makeintegerfield(L, HTTP_METHOD_NOT_ALLOWED); |
| 202 | makeintegerfield(L, HTTP_NOT_ACCEPTABLE); |
no test coverage detected