diff --git a/libs/freetdm/src/include/openzap.h b/libs/freetdm/src/include/openzap.h index ddcb9b0133..b114e844fb 100644 --- a/libs/freetdm/src/include/openzap.h +++ b/libs/freetdm/src/include/openzap.h @@ -617,9 +617,7 @@ struct zap_io_interface { zio_api_t api; }; -struct zap_queue; -#define zap_queue_t struct zap_queue - +typedef struct zap_queue zap_queue_t; typedef zap_status_t (*zap_queue_create_func_t)(zap_queue_t **queue, zap_size_t capacity); typedef zap_status_t (*zap_queue_enqueue_func_t)(zap_queue_t *queue, void *obj); typedef void *(*zap_queue_dequeue_func_t)(zap_queue_t *queue); diff --git a/libs/freetdm/src/include/zap_dso.h b/libs/freetdm/src/include/zap_dso.h index 9cfe87e962..c5d1457b95 100644 --- a/libs/freetdm/src/include/zap_dso.h +++ b/libs/freetdm/src/include/zap_dso.h @@ -28,9 +28,9 @@ extern "C" { typedef void (*zap_func_ptr_t) (void); typedef void * zap_dso_lib_t; -void zap_dso_destroy(zap_dso_lib_t *lib); -zap_dso_lib_t zap_dso_open(const char *path, char **err); -void *zap_dso_func_sym(zap_dso_lib_t lib, const char *sym, char **err); +OZ_DECLARE(void) zap_dso_destroy(zap_dso_lib_t *lib); +OZ_DECLARE(zap_dso_lib_t) zap_dso_open(const char *path, char **err); +OZ_DECLARE(void *) zap_dso_func_sym(zap_dso_lib_t lib, const char *sym, char **err); #ifdef __cplusplus } diff --git a/libs/freetdm/src/ozmod/ozmod_sangoma_boost/ozmod_sangoma_boost.2008.vcproj b/libs/freetdm/src/ozmod/ozmod_sangoma_boost/ozmod_sangoma_boost.2008.vcproj index 3f7ef8de43..ee9bae316b 100644 --- a/libs/freetdm/src/ozmod/ozmod_sangoma_boost/ozmod_sangoma_boost.2008.vcproj +++ b/libs/freetdm/src/ozmod/ozmod_sangoma_boost/ozmod_sangoma_boost.2008.vcproj @@ -63,7 +63,9 @@ /> mcon; pcon = &sangoma_boost_data->pcon; - if (sangoma_boost_data->sigmod || FD_ISSET(pcon->socket, &sangoma_boost_data->rfds)) { + if (sangoma_boost_data->sigmod +#ifndef WIN32 + || FD_ISSET(pcon->socket, &sangoma_boost_data->rfds) +#endif + ) { event = sangomabc_connection_readp(pcon, sangoma_boost_data->iteration); } - +#ifndef WIN32 /* if there is no event and this is not a sigmod-driven span it's time to try the other connection for events */ if (!event && !sangoma_boost_data->sigmod && FD_ISSET(mcon->socket, &sangoma_boost_data->rfds)) { event = sangomabc_connection_readp(mcon, sangoma_boost_data->iteration); } +#endif return event; } diff --git a/libs/freetdm/src/ozmod/ozmod_wanpipe/ozmod_wanpipe.2008.vcproj b/libs/freetdm/src/ozmod/ozmod_wanpipe/ozmod_wanpipe.2008.vcproj index 1c8685c6d4..eb4cecb32d 100644 --- a/libs/freetdm/src/ozmod/ozmod_wanpipe/ozmod_wanpipe.2008.vcproj +++ b/libs/freetdm/src/ozmod/ozmod_wanpipe/ozmod_wanpipe.2008.vcproj @@ -41,7 +41,7 @@ -void zap_dso_destroy(zap_dso_lib_t *lib) { +OZ_DECLARE(void) zap_dso_destroy(zap_dso_lib_t *lib) { if (lib && *lib) { FreeLibrary(*lib); *lib = NULL; } } -zap_dso_lib_t zap_dso_open(const char *path, char **err) { +OZ_DECLARE(zap_dso_lib_t) zap_dso_open(const char *path, char **err) { HINSTANCE lib; lib = LoadLibraryEx(path, NULL, 0); @@ -53,7 +53,7 @@ zap_dso_lib_t zap_dso_open(const char *path, char **err) { return lib; } -void* zap_dso_func_sym(zap_dso_lib_t lib, const char *sym, char **err) { +OZ_DECLARE(void*) zap_dso_func_sym(zap_dso_lib_t lib, const char *sym, char **err) { FARPROC func = GetProcAddress(lib, sym); if (!func) { DWORD error = GetLastError(); @@ -78,14 +78,14 @@ void* zap_dso_func_sym(zap_dso_lib_t lib, const char *sym, char **err) { #include -void zap_dso_destroy(zap_dso_lib_t *lib) { +OZ_DECLARE(void) zap_dso_destroy(zap_dso_lib_t *lib) { if (lib && *lib) { dlclose(*lib); *lib = NULL; } } -zap_dso_lib_t zap_dso_open(const char *path, char **err) { +OZ_DECLARE(zap_dso_lib_t) zap_dso_open(const char *path, char **err) { void *lib = dlopen(path, RTLD_NOW | RTLD_LOCAL); if (lib == NULL) { *err = zap_strdup(dlerror()); @@ -93,7 +93,7 @@ zap_dso_lib_t zap_dso_open(const char *path, char **err) { return lib; } -void *zap_dso_func_sym(zap_dso_lib_t lib, const char *sym, char **err) { +OZ_DECLARE(void*) zap_dso_func_sym(zap_dso_lib_t lib, const char *sym, char **err) { void *func = dlsym(lib, sym); if (!func) { *err = zap_strdup(dlerror()); diff --git a/libs/freetdm/src/zap_queue.c b/libs/freetdm/src/zap_queue.c index 6a0a05d683..969e170783 100644 --- a/libs/freetdm/src/zap_queue.c +++ b/libs/freetdm/src/zap_queue.c @@ -34,8 +34,13 @@ #include "openzap.h" -#undef zap_queue_t -typedef struct zap_queue { +static zap_status_t zap_std_queue_create(zap_queue_t **outqueue, zap_size_t capacity); +static zap_status_t zap_std_queue_enqueue(zap_queue_t *queue, void *obj); +static void *zap_std_queue_dequeue(zap_queue_t *queue); +static zap_status_t zap_std_queue_wait(zap_queue_t *queue, int ms); +static zap_status_t zap_std_queue_destroy(zap_queue_t **inqueue); + +struct zap_queue { zap_mutex_t *mutex; zap_condition_t *condition; zap_size_t capacity; @@ -43,21 +48,15 @@ typedef struct zap_queue { unsigned rindex; unsigned windex; void **elements; -} zap_queue_t; - -static zap_status_t zap_std_queue_create(zap_queue_t **outqueue, zap_size_t capacity); -static zap_status_t zap_std_queue_enqueue(zap_queue_t *queue, void *obj); -static void *zap_std_queue_dequeue(zap_queue_t *queue); -static zap_status_t zap_std_queue_wait(zap_queue_t *queue, int ms); -static zap_status_t zap_std_queue_destroy(zap_queue_t **inqueue); +}; OZ_DECLARE_DATA zap_queue_handler_t g_zap_queue_handler = { - .create = zap_std_queue_create, - .enqueue = zap_std_queue_enqueue, - .dequeue = zap_std_queue_dequeue, - .wait = zap_std_queue_wait, - .destroy = zap_std_queue_destroy + /*.create = */ zap_std_queue_create, + /*.enqueue = */ zap_std_queue_enqueue, + /*.dequeue = */ zap_std_queue_dequeue, + /*.wait = */ zap_std_queue_wait, + /*.destroy = */ zap_std_queue_destroy }; OZ_DECLARE(zap_status_t) zap_global_set_queue_handler(zap_queue_handler_t *handler) @@ -76,11 +75,12 @@ OZ_DECLARE(zap_status_t) zap_global_set_queue_handler(zap_queue_handler_t *handl static zap_status_t zap_std_queue_create(zap_queue_t **outqueue, zap_size_t capacity) { + zap_queue_t *queue = NULL; zap_assert_return(outqueue, ZAP_FAIL, "Queue double pointer is null\n"); zap_assert_return(capacity > 0, ZAP_FAIL, "Queue capacity is not bigger than 0\n"); *outqueue = NULL; - zap_queue_t *queue = zap_calloc(1, sizeof(*queue)); + queue = zap_calloc(1, sizeof(*queue)); if (!queue) { return ZAP_FAIL; }