From d4156e946e4ac99f968b8d065932a9d7570404ac Mon Sep 17 00:00:00 2001 From: lazedo Date: Wed, 18 Jan 2017 08:42:44 +0000 Subject: [PATCH 1/3] kazoo: initialize pointers and return default zones --- modules/kazoo/kz_amqp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/kazoo/kz_amqp.c b/modules/kazoo/kz_amqp.c index e4c07799a8a..feac04793f7 100644 --- a/modules/kazoo/kz_amqp.c +++ b/modules/kazoo/kz_amqp.c @@ -424,6 +424,7 @@ kz_amqp_zone_ptr kz_amqp_get_primary_zone() { strcpy(kz_primary_zone->zone, dbk_primary_zone_name.s); kz_primary_zone->zone[dbk_primary_zone_name.len] = '\0'; kz_primary_zone->servers = (kz_amqp_servers_ptr) shm_malloc(sizeof(kz_amqp_servers)); + memset(kz_primary_zone->servers, 0, sizeof(kz_amqp_servers)); } return kz_primary_zone; } @@ -448,6 +449,7 @@ kz_amqp_zone_ptr kz_amqp_add_zone(char* zone) { kz_amqp_zone_ptr zone_ptr = (kz_amqp_zone_ptr) shm_malloc(sizeof(kz_amqp_zone)); memset(zone_ptr, 0, sizeof(kz_amqp_zone)); zone_ptr->zone = shm_malloc(strlen(zone)+1); + memset(zone_ptr->servers, 0, sizeof(kz_amqp_servers)); strcpy(zone_ptr->zone, zone); zone_ptr->zone[strlen(zone)] = '\0'; zone_ptr->servers = (kz_amqp_servers_ptr) shm_malloc(sizeof(kz_amqp_servers)); @@ -657,7 +659,7 @@ int kz_amqp_add_connection(modparam_t type, void* val) url = ++ptr; } else { - zone_ptr = kz_amqp_get_primary_zone(); + zone_ptr = kz_amqp_get_zones(); } From c84e8c5269f4823a3dce078bee4afcf583d8ef44 Mon Sep 17 00:00:00 2001 From: lazedo Date: Wed, 18 Jan 2017 08:45:14 +0000 Subject: [PATCH 2/3] kazoo: extra logs in hash lookup --- modules/kazoo/kz_hash.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/kazoo/kz_hash.c b/modules/kazoo/kz_hash.c index 29da9bb21b7..bb939e86537 100644 --- a/modules/kazoo/kz_hash.c +++ b/modules/kazoo/kz_hash.c @@ -153,7 +153,7 @@ kz_amqp_cmd_ptr kz_cmd_retrieve(str* message_id) p = kz_search_cmd_table(message_id, hash_code); if(p== NULL) { - LM_DBG("command pointer hash entry not found\n"); + LM_DBG("command pointer hash entry not found - %s\n", message_id->s); lock_release(&kz_cmd_htable[hash_code].lock); return NULL; } @@ -167,7 +167,7 @@ kz_amqp_cmd_ptr kz_cmd_retrieve(str* message_id) } if(prev_p->next== NULL) { - LM_ERR("command pointer not found\n"); + LM_ERR("command pointer not found - %s\n", message_id->s); lock_release(&kz_cmd_htable[hash_code].lock); return NULL; } From 1114fe01abdb791379274b4f388317d600d72e38 Mon Sep 17 00:00:00 2001 From: lazedo Date: Wed, 18 Jan 2017 09:19:44 +0000 Subject: [PATCH 3/3] kazoo: fix kz_amqp_add_zone --- modules/kazoo/kz_amqp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/kazoo/kz_amqp.c b/modules/kazoo/kz_amqp.c index feac04793f7..2b8a5e905cc 100644 --- a/modules/kazoo/kz_amqp.c +++ b/modules/kazoo/kz_amqp.c @@ -449,10 +449,10 @@ kz_amqp_zone_ptr kz_amqp_add_zone(char* zone) { kz_amqp_zone_ptr zone_ptr = (kz_amqp_zone_ptr) shm_malloc(sizeof(kz_amqp_zone)); memset(zone_ptr, 0, sizeof(kz_amqp_zone)); zone_ptr->zone = shm_malloc(strlen(zone)+1); - memset(zone_ptr->servers, 0, sizeof(kz_amqp_servers)); strcpy(zone_ptr->zone, zone); zone_ptr->zone[strlen(zone)] = '\0'; zone_ptr->servers = (kz_amqp_servers_ptr) shm_malloc(sizeof(kz_amqp_servers)); + memset(zone_ptr->servers, 0, sizeof(kz_amqp_servers)); kz_zones->tail->next = zone_ptr; kz_zones->tail = zone_ptr; return zone_ptr;