summaryrefslogtreecommitdiffstats
path: root/mod_wsgi-3.3-httpd24.patch
diff options
context:
space:
mode:
Diffstat (limited to 'mod_wsgi-3.3-httpd24.patch')
-rw-r--r--mod_wsgi-3.3-httpd24.patch203
1 files changed, 0 insertions, 203 deletions
diff --git a/mod_wsgi-3.3-httpd24.patch b/mod_wsgi-3.3-httpd24.patch
deleted file mode 100644
index f0f3a2f..0000000
--- a/mod_wsgi-3.3-httpd24.patch
+++ /dev/null
@@ -1,203 +0,0 @@
-
-http://code.google.com/p/modwsgi/source/detail?r=8906fb52b6b23455320c848216f6120c979e57f5
-http://code.google.com/p/modwsgi/source/detail?r=25deb4b94536c96d63505b2a6d4dfb5be1b38195
-
-diff -r 21f4dac5959a -r 8906fb52b6b2 mod_wsgi/mod_wsgi.c
---- mod_wsgi-3.3/mod_wsgi.c.httpd24
-+++ mod_wsgi-3.3/mod_wsgi.c
-@@ -193,6 +193,9 @@ static PyTypeObject Auth_Type;
- #endif
- #if AP_MODULE_MAGIC_AT_LEAST(20060110,0)
- #define MOD_WSGI_WITH_AUTHZ_PROVIDER 1
-+#if AP_MODULE_MAGIC_AT_LEAST(20100919,0)
-+#define MOD_WSGI_WITH_AUTHZ_PROVIDER_PARSED 1
-+#endif
- #endif
- #endif
-
-@@ -5637,7 +5640,7 @@ static void wsgi_python_version(void)
- }
- }
-
--static apr_status_t wsgi_python_term()
-+static apr_status_t wsgi_python_term(void)
- {
- PyInterpreterState *interp = NULL;
- PyThreadState *tstate = NULL;
-@@ -7851,6 +7854,7 @@ static const char *wsgi_set_auth_group_s
- return NULL;
- }
-
-+#if !defined(MOD_WSGI_WITH_AUTHN_PROVIDER)
- static const char *wsgi_set_user_authoritative(cmd_parms *cmd, void *mconfig,
- const char *f)
- {
-@@ -7866,6 +7870,7 @@ static const char *wsgi_set_user_authori
-
- return NULL;
- }
-+#endif
-
- static const char *wsgi_set_group_authoritative(cmd_parms *cmd, void *mconfig,
- const char *f)
-@@ -10092,6 +10097,17 @@ static void wsgi_process_socket(apr_pool
- }
- apr_sockaddr_ip_get(&c->local_ip, c->local_addr);
-
-+#if AP_MODULE_MAGIC_AT_LEAST(20111130,0)
-+ if ((rv = apr_socket_addr_get(&c->client_addr, APR_REMOTE, sock))
-+ != APR_SUCCESS) {
-+ ap_log_error(APLOG_MARK, APLOG_INFO, rv, wsgi_server,
-+ "mod_wsgi (pid=%d): Failed call "
-+ "apr_socket_addr_get(APR_REMOTE).", getpid());
-+ apr_socket_close(sock);
-+ return;
-+ }
-+ apr_sockaddr_ip_get(&c->client_ip, c->client_addr);
-+#else
- if ((rv = apr_socket_addr_get(&c->remote_addr, APR_REMOTE, sock))
- != APR_SUCCESS) {
- ap_log_error(APLOG_MARK, WSGI_LOG_INFO(rv), wsgi_server,
-@@ -10101,6 +10117,7 @@ static void wsgi_process_socket(apr_pool
- return;
- }
- apr_sockaddr_ip_get(&c->remote_ip, c->remote_addr);
-+#endif
-
- c->base_server = daemon->group->server;
-
-@@ -10183,7 +10200,7 @@ static apr_status_t wsgi_worker_acquire(
- }
- }
-
--static apr_status_t wsgi_worker_release()
-+static apr_status_t wsgi_worker_release(void)
- {
- WSGIThreadStack *stack = wsgi_worker_stack;
-
-@@ -10232,7 +10249,7 @@ static apr_status_t wsgi_worker_release(
- }
- }
-
--static apr_status_t wsgi_worker_shutdown()
-+static apr_status_t wsgi_worker_shutdown(void)
- {
- int i;
- apr_status_t rv;
-@@ -11008,8 +11025,9 @@ static int wsgi_start_process(apr_pool_t
- * shared memory segments or memory mapped files not
- * available to code in daemon processes.
- */
--
-+#if !AP_MODULE_MAGIC_AT_LEAST(20071023, 0)
- ap_cleanup_scoreboard(0);
-+#endif
-
- /*
- * Wipe out random value used in magic token so that not
-@@ -12739,8 +12757,13 @@ static int wsgi_hook_daemon_handler(conn
- * file for the host.
- */
-
-+#if AP_MODULE_MAGIC_AT_LEAST(20111130,0)
-+ r->connection->client_ip = (char *)apr_table_get(r->subprocess_env,
-+ "REMOTE_ADDR");
-+#else
- r->connection->remote_ip = (char *)apr_table_get(r->subprocess_env,
- "REMOTE_ADDR");
-+#endif
-
- key = apr_psprintf(p, "%s|%s",
- apr_table_get(r->subprocess_env,
-@@ -13259,6 +13282,18 @@ static PyObject *Auth_environ(AuthObject
- Py_DECREF(object);
- }
-
-+#if AP_MODULE_MAGIC_AT_LEAST(20111130,0)
-+ if (r->useragent_ip) {
-+ value = r->useragent_ip;
-+#if PY_MAJOR_VERSION >= 3
-+ object = PyUnicode_DecodeLatin1(value, strlen(value), NULL);
-+#else
-+ object = PyString_FromString(value);
-+#endif
-+ PyDict_SetItemString(vars, "REMOTE_ADDR", object);
-+ Py_DECREF(object);
-+ }
-+#else
- if (c->remote_ip) {
- value = c->remote_ip;
- #if PY_MAJOR_VERSION >= 3
-@@ -13269,6 +13304,7 @@ static PyObject *Auth_environ(AuthObject
- PyDict_SetItemString(vars, "REMOTE_ADDR", object);
- Py_DECREF(object);
- }
-+#endif
-
- #if PY_MAJOR_VERSION >= 3
- value = ap_document_root(r);
-@@ -13292,6 +13328,17 @@ static PyObject *Auth_environ(AuthObject
- Py_DECREF(object);
- }
-
-+#if AP_MODULE_MAGIC_AT_LEAST(20111130,0)
-+ rport = c->client_addr->port;
-+ value = apr_itoa(r->pool, rport);
-+#if PY_MAJOR_VERSION >= 3
-+ object = PyUnicode_DecodeLatin1(value, strlen(value), NULL);
-+#else
-+ object = PyString_FromString(value);
-+#endif
-+ PyDict_SetItemString(vars, "REMOTE_PORT", object);
-+ Py_DECREF(object);
-+#else
- rport = c->remote_addr->port;
- value = apr_itoa(r->pool, rport);
- #if PY_MAJOR_VERSION >= 3
-@@ -13301,6 +13348,7 @@ static PyObject *Auth_environ(AuthObject
- #endif
- PyDict_SetItemString(vars, "REMOTE_PORT", object);
- Py_DECREF(object);
-+#endif
-
- value = r->protocol;
- #if PY_MAJOR_VERSION >= 3
-@@ -14391,8 +14439,13 @@ static int wsgi_hook_access_checker(requ
- host = ap_get_remote_host(r->connection, r->per_dir_config,
- REMOTE_HOST, NULL);
-
-+#if AP_MODULE_MAGIC_AT_LEAST(20111130,0)
-+ if (!host)
-+ host = r->useragent_ip;
-+#else
- if (!host)
- host = r->connection->remote_ip;
-+#endif
-
- allow = wsgi_allow_access(r, config, host);
-
-@@ -14645,8 +14698,14 @@ static int wsgi_hook_check_user_id(reque
-
- #if defined(MOD_WSGI_WITH_AUTHZ_PROVIDER)
-
-+#if MOD_WSGI_WITH_AUTHZ_PROVIDER_PARSED
-+static authz_status wsgi_check_authorization(request_rec *r,
-+ const char *require_args,
-+ const void *parsed_require_line)
-+#else
- static authz_status wsgi_check_authorization(request_rec *r,
- const char *require_args)
-+#endif
- {
- WSGIRequestConfig *config;
-
-@@ -14695,6 +14754,9 @@ static authz_status wsgi_check_authoriza
- static const authz_provider wsgi_authz_provider =
- {
- &wsgi_check_authorization,
-+#if MOD_WSGI_WITH_AUTHZ_PROVIDER_PARSED
-+ NULL,
-+#endif
- };
-
- #else