Forward-port: Rename INPUT and OUTPUT to EVRPC_INPUT and EVRPC_OUTPUT, but keep the INPUT/OUTPUT aliases on non-win32 platforms to maintain backwards compatibility.

svn:r852
This commit is contained in:
Nick Mathewson 2008-06-14 17:50:36 +00:00
parent a6ce520cfb
commit 2baaac7fdb
4 changed files with 31 additions and 20 deletions

View File

@ -108,6 +108,8 @@ Changes in current version:
o change failing behavior of event_base_new_with_config: if a config is provided and no backend is selected, return NULL instead of aborting. o change failing behavior of event_base_new_with_config: if a config is provided and no backend is selected, return NULL instead of aborting.
o deliver partial data to request callbacks when chunked callback is set even if there is no chunking on the http level; allows cancelation of requests from within the chunked callback; from Scott Lamb. o deliver partial data to request callbacks when chunked callback is set even if there is no chunking on the http level; allows cancelation of requests from within the chunked callback; from Scott Lamb.
o allow min_heap_erase to be called on removed members; from liusifan. o allow min_heap_erase to be called on removed members; from liusifan.
o Rename INPUT and OUTPUT to EVRPC_INPUT and EVRPC_OUTPUT. Retain INPUT/OUTPUT aliases on on-win32 platforms for backwards compatibility.
Changes in 1.4.0: Changes in 1.4.0:
o allow \r or \n individually to separate HTTP headers instead of the standard "\r\n"; from Charles Kerr. o allow \r or \n individually to separate HTTP headers instead of the standard "\r\n"; from Charles Kerr.

20
evrpc.c
View File

@ -97,10 +97,10 @@ evrpc_free(struct evrpc_base *base)
assert(evrpc_unregister_rpc(base, rpc->uri)); assert(evrpc_unregister_rpc(base, rpc->uri));
} }
while ((hook = TAILQ_FIRST(&base->input_hooks)) != NULL) { while ((hook = TAILQ_FIRST(&base->input_hooks)) != NULL) {
assert(evrpc_remove_hook(base, INPUT, hook)); assert(evrpc_remove_hook(base, EVRPC_INPUT, hook));
} }
while ((hook = TAILQ_FIRST(&base->output_hooks)) != NULL) { while ((hook = TAILQ_FIRST(&base->output_hooks)) != NULL) {
assert(evrpc_remove_hook(base, OUTPUT, hook)); assert(evrpc_remove_hook(base, EVRPC_OUTPUT, hook));
} }
mm_free(base); mm_free(base);
} }
@ -115,14 +115,14 @@ evrpc_add_hook(void *vbase,
struct evrpc_hook_list *head = NULL; struct evrpc_hook_list *head = NULL;
struct evrpc_hook *hook = NULL; struct evrpc_hook *hook = NULL;
switch (hook_type) { switch (hook_type) {
case INPUT: case EVRPC_INPUT:
head = &base->in_hooks; head = &base->in_hooks;
break; break;
case OUTPUT: case EVRPC_OUTPUT:
head = &base->out_hooks; head = &base->out_hooks;
break; break;
default: default:
assert(hook_type == INPUT || hook_type == OUTPUT); assert(hook_type == EVRPC_INPUT || hook_type == EVRPC_OUTPUT);
} }
hook = mm_calloc(1, sizeof(struct evrpc_hook)); hook = mm_calloc(1, sizeof(struct evrpc_hook));
@ -160,14 +160,14 @@ evrpc_remove_hook(void *vbase, enum EVRPC_HOOK_TYPE hook_type, void *handle)
struct _evrpc_hooks *base = vbase; struct _evrpc_hooks *base = vbase;
struct evrpc_hook_list *head = NULL; struct evrpc_hook_list *head = NULL;
switch (hook_type) { switch (hook_type) {
case INPUT: case EVRPC_INPUT:
head = &base->in_hooks; head = &base->in_hooks;
break; break;
case OUTPUT: case EVRPC_OUTPUT:
head = &base->out_hooks; head = &base->out_hooks;
break; break;
default: default:
assert(hook_type == INPUT || hook_type == OUTPUT); assert(hook_type == EVRPC_INPUT || hook_type == EVRPC_OUTPUT);
} }
return (evrpc_remove_hook_internal(head, handle)); return (evrpc_remove_hook_internal(head, handle));
@ -525,11 +525,11 @@ evrpc_pool_free(struct evrpc_pool *pool)
} }
while ((hook = TAILQ_FIRST(&pool->input_hooks)) != NULL) { while ((hook = TAILQ_FIRST(&pool->input_hooks)) != NULL) {
assert(evrpc_remove_hook(pool, INPUT, hook)); assert(evrpc_remove_hook(pool, EVRPC_INPUT, hook));
} }
while ((hook = TAILQ_FIRST(&pool->output_hooks)) != NULL) { while ((hook = TAILQ_FIRST(&pool->output_hooks)) != NULL) {
assert(evrpc_remove_hook(pool, OUTPUT, hook)); assert(evrpc_remove_hook(pool, EVRPC_OUTPUT, hook));
} }
mm_free(pool); mm_free(pool);

13
evrpc.h
View File

@ -429,10 +429,19 @@ void evrpc_pool_set_timeout(struct evrpc_pool *pool, int timeout_in_secs);
*/ */
enum EVRPC_HOOK_TYPE { enum EVRPC_HOOK_TYPE {
INPUT, /**< apply the function to an input hook */ EVRPC_INPUT, /**< apply the function to an input hook */
OUTPUT /**< apply the function to an output hook */ EVRPC_OUTPUT /**< apply the function to an output hook */
}; };
#ifndef WIN32
/** Deprecated alias for EVRPC_INPUT. Not available on windows, where it
* conflicts with platform headers. */
#define INPUT EVRPC_INPUT
/** Deprecated alias for EVRPC_OUTPUT. Not available on windows, where it
* conflicts with platform headers. */
#define OUTPUT EVRPC_OUTPUT
#endif
/** /**
* Return value from hook processing functions * Return value from hook processing functions
*/ */

View File

@ -474,15 +474,15 @@ rpc_basic_client(void)
need_input_hook = 1; need_input_hook = 1;
need_output_hook = 1; need_output_hook = 1;
assert(evrpc_add_hook(base, INPUT, rpc_hook_add_header, (void*)"input") assert(evrpc_add_hook(base, EVRPC_INPUT, rpc_hook_add_header, (void*)"input")
!= NULL); != NULL);
assert(evrpc_add_hook(base, OUTPUT, rpc_hook_add_header, (void*)"output") assert(evrpc_add_hook(base, EVRPC_OUTPUT, rpc_hook_add_header, (void*)"output")
!= NULL); != NULL);
pool = rpc_pool_with_connection(port); pool = rpc_pool_with_connection(port);
assert(evrpc_add_hook(pool, OUTPUT, rpc_hook_add_meta, NULL)); assert(evrpc_add_hook(pool, EVRPC_OUTPUT, rpc_hook_add_meta, NULL));
assert(evrpc_add_hook(pool, INPUT, rpc_hook_remove_header, (void*)"output")); assert(evrpc_add_hook(pool, EVRPC_INPUT, rpc_hook_remove_header, (void*)"output"));
/* set up the basic message */ /* set up the basic message */
msg = msg_new(); msg = msg_new();
@ -662,13 +662,13 @@ rpc_basic_client_with_pause(void)
rpc_setup(&http, &port, &base); rpc_setup(&http, &port, &base);
assert(evrpc_add_hook(base, INPUT, rpc_hook_pause, base)); assert(evrpc_add_hook(base, EVRPC_INPUT, rpc_hook_pause, base));
assert(evrpc_add_hook(base, OUTPUT, rpc_hook_pause, base)); assert(evrpc_add_hook(base, EVRPC_OUTPUT, rpc_hook_pause, base));
pool = rpc_pool_with_connection(port); pool = rpc_pool_with_connection(port);
assert(evrpc_add_hook(pool, INPUT, rpc_hook_pause, pool)); assert(evrpc_add_hook(pool, EVRPC_INPUT, rpc_hook_pause, pool));
assert(evrpc_add_hook(pool, OUTPUT, rpc_hook_pause, pool)); assert(evrpc_add_hook(pool, EVRPC_OUTPUT, rpc_hook_pause, pool));
/* set up the basic message */ /* set up the basic message */
msg = msg_new(); msg = msg_new();