summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--modules/arch/win32/mod_isapi.c55
1 files changed, 39 insertions, 16 deletions
diff --git a/modules/arch/win32/mod_isapi.c b/modules/arch/win32/mod_isapi.c
index 6c1705b614..fbac1727c5 100644
--- a/modules/arch/win32/mod_isapi.c
+++ b/modules/arch/win32/mod_isapi.c
@@ -80,6 +80,29 @@ typedef struct isapi_loaded isapi_loaded;
apr_status_t isapi_lookup(apr_pool_t *p, server_rec *s, request_rec *r,
const char *fpath, isapi_loaded** isa);
+/* In addition to being provided via the EXTENSION_CONTROL_BLOCK,
+ * these four are also callable directly.
+ */
+int APR_THREAD_FUNC GetServerVariable (isapi_cid *cid,
+ char *variable_name,
+ void *buf_ptr,
+ apr_uint32_t *buf_size);
+
+int APR_THREAD_FUNC ReadClient(isapi_cid *cid,
+ void *buf_data,
+ apr_uint32_t *buf_size);
+
+int APR_THREAD_FUNC WriteClient(isapi_cid *cid,
+ void *buf_ptr,
+ apr_uint32_t *size_arg,
+ apr_uint32_t flags);
+
+int APR_THREAD_FUNC ServerSupportFunction(isapi_cid *cid,
+ apr_uint32_t HSE_code,
+ void *buf_ptr,
+ apr_uint32_t *buf_size,
+ apr_uint32_t *data_type);
+
static void *create_isapi_dir_config(apr_pool_t *p, char *dummy)
{
isapi_dir_conf *dir = apr_palloc(p, sizeof(isapi_dir_conf));
@@ -485,10 +508,10 @@ struct isapi_cid {
apr_thread_mutex_t *completed;
};
-static int APR_THREAD_FUNC GetServerVariable (isapi_cid *cid,
- char *variable_name,
- void *buf_ptr,
- apr_uint32_t *buf_size)
+int APR_THREAD_FUNC GetServerVariable (isapi_cid *cid,
+ char *variable_name,
+ void *buf_ptr,
+ apr_uint32_t *buf_size)
{
request_rec *r = cid->r;
const char *result;
@@ -587,9 +610,9 @@ static int APR_THREAD_FUNC GetServerVariable (isapi_cid *cid,
return 0;
}
-static int APR_THREAD_FUNC ReadClient(isapi_cid *cid,
- void *buf_data,
- apr_uint32_t *buf_size)
+int APR_THREAD_FUNC ReadClient(isapi_cid *cid,
+ void *buf_data,
+ apr_uint32_t *buf_size)
{
request_rec *r = cid->r;
apr_uint32_t read = 0;
@@ -804,10 +827,10 @@ static apr_ssize_t send_response_header(isapi_cid *cid,
return ate;
}
-static int APR_THREAD_FUNC WriteClient(isapi_cid *cid,
- void *buf_ptr,
- apr_uint32_t *size_arg,
- apr_uint32_t flags)
+int APR_THREAD_FUNC WriteClient(isapi_cid *cid,
+ void *buf_ptr,
+ apr_uint32_t *size_arg,
+ apr_uint32_t flags)
{
request_rec *r = cid->r;
conn_rec *c = r->connection;
@@ -860,11 +883,11 @@ static int APR_THREAD_FUNC WriteClient(isapi_cid *cid,
return (rv == APR_SUCCESS);
}
-static int APR_THREAD_FUNC ServerSupportFunction(isapi_cid *cid,
- apr_uint32_t HSE_code,
- void *buf_ptr,
- apr_uint32_t *buf_size,
- apr_uint32_t *data_type)
+int APR_THREAD_FUNC ServerSupportFunction(isapi_cid *cid,
+ apr_uint32_t HSE_code,
+ void *buf_ptr,
+ apr_uint32_t *buf_size,
+ apr_uint32_t *data_type)
{
request_rec *r = cid->r;
conn_rec *c = r->connection;