From 040c238fbf2cbda3097d2d3c6ab7494fe28db067 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20B=C5=99ezina?= Date: Thu, 16 Jun 2016 13:54:22 +0200 Subject: [PATCH 19/27] DP: Add function to get be_ctx directly from dp_client --- src/providers/data_provider/dp_client.c | 10 ++++++++++ src/providers/data_provider/dp_private.h | 1 + src/providers/data_provider/dp_target_id.c | 4 +--- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/providers/data_provider/dp_client.c b/src/providers/data_provider/dp_client.c index 7009a5c384a09ad865a07bc2a70aad131adea00c..b2da13de54aba9c9dfbcbf09dacb3dc015202193 100644 --- a/src/providers/data_provider/dp_client.c +++ b/src/providers/data_provider/dp_client.c @@ -238,6 +238,16 @@ dp_client_provider(struct dp_client *dp_cli) return dp_cli->provider; } +struct be_ctx * +dp_client_be(struct dp_client *dp_cli) +{ + if (dp_cli == NULL || dp_cli->provider == NULL) { + return NULL; + } + + return dp_cli->provider->be_ctx; +} + struct sbus_connection * dp_client_conn(struct dp_client *dp_cli) { diff --git a/src/providers/data_provider/dp_private.h b/src/providers/data_provider/dp_private.h index ece60e7a437dc2a3b9df30831f95bbcdfb1c14a9..2e71a373fdc8886fccb23bfb8283dc5bc341b1b0 100644 --- a/src/providers/data_provider/dp_private.h +++ b/src/providers/data_provider/dp_private.h @@ -242,6 +242,7 @@ void _dp_req_with_reply(struct dp_client *dp_cli, errno_t dp_client_init(struct sbus_connection *conn, void *data); struct data_provider *dp_client_provider(struct dp_client *dp_cli); +struct be_ctx *dp_client_be(struct dp_client *dp_cli); struct sbus_connection *dp_client_conn(struct dp_client *dp_cli); #endif /* _DP_PRIVATE_H_ */ diff --git a/src/providers/data_provider/dp_target_id.c b/src/providers/data_provider/dp_target_id.c index 66fa125b470df51cc71dacf6f3c7f11e78e78699..7c882be2c17650d818cb3907197e381a8f635a77 100644 --- a/src/providers/data_provider/dp_target_id.c +++ b/src/providers/data_provider/dp_target_id.c @@ -205,14 +205,12 @@ static errno_t dp_initgroups(struct sbus_request *sbus_req, struct be_acct_req *data) { struct be_ctx *be_ctx; - struct data_provider *provider; struct sss_domain_info *domain; struct dp_initgr_ctx *ctx; struct ldb_result *res; errno_t ret; - provider = dp_client_provider(dp_cli); - be_ctx = provider->be_ctx; + be_ctx = dp_client_be(dp_cli); if (data->domain == NULL) { domain = be_ctx->domain; -- 2.4.11