From 59dd509bad701252a5c8ab26da5b313c2295a230 Mon Sep 17 00:00:00 2001 From: Sumit Bose Date: Tue, 19 Jan 2016 15:05:03 +0100 Subject: [PATCH 5/6] FO: add be_fo_get_active_server_name() --- src/providers/data_provider_fo.c | 17 +++++++++++++++++ src/providers/dp_backend.h | 3 +++ 2 files changed, 20 insertions(+) diff --git a/src/providers/data_provider_fo.c b/src/providers/data_provider_fo.c index 4c4d7b233bb4bd22aa7c7dcd1fec955c92fb08e4..39f57255af220b608d333da7c0bd1697788ea8f6 100644 --- a/src/providers/data_provider_fo.c +++ b/src/providers/data_provider_fo.c @@ -726,6 +726,23 @@ void be_fo_try_next_server(struct be_ctx *ctx, const char *service_name) } } +const char *be_fo_get_active_server_name(struct be_ctx *ctx, + const char *service_name) +{ + struct be_svc_data *svc; + struct fo_server *server; + + svc = be_fo_find_svc_data(ctx, service_name); + if (svc != NULL) { + server = fo_get_active_server(svc->fo_service); + if (server != NULL) { + return fo_get_server_name(server); + } + } + + return NULL; +} + int be_fo_run_callbacks_at_next_request(struct be_ctx *ctx, const char *service_name) { diff --git a/src/providers/dp_backend.h b/src/providers/dp_backend.h index cfd8b8aa6d296e87685ce0d503af26f83352fdd0..e6e2d0f3c7b06db3bf3c77a73a074dcdb964656e 100644 --- a/src/providers/dp_backend.h +++ b/src/providers/dp_backend.h @@ -287,6 +287,9 @@ int be_fo_run_callbacks_at_next_request(struct be_ctx *ctx, void reset_fo(struct be_ctx *be_ctx); void be_fo_reset_svc(struct be_ctx *be_ctx, const char *svc_name); +const char *be_fo_get_active_server_name(struct be_ctx *ctx, + const char *service_name); + errno_t be_res_init(struct be_ctx *ctx); /* be_req helpers */ -- 2.1.0