summaryrefslogtreecommitdiffstats
path: root/src/providers/ldap/sdap_refresh.c
diff options
context:
space:
mode:
authorPavel Březina <pbrezina@redhat.com>2015-02-19 12:04:09 +0100
committerJakub Hrozek <jhrozek@redhat.com>2015-03-08 22:27:16 +0100
commit17531a398cc9084036cb08d69fe876a8f12707bb (patch)
tree336099412efe7c5b47197a74f2fee51b6342d8d0 /src/providers/ldap/sdap_refresh.c
parentab0eda3622b828df2bfb7850c96d1395f614eb13 (diff)
downloadsssd-17531a398cc9084036cb08d69fe876a8f12707bb.tar.gz
sssd-17531a398cc9084036cb08d69fe876a8f12707bb.tar.xz
sssd-17531a398cc9084036cb08d69fe876a8f12707bb.zip
be_refresh: add sdap_refresh_init
Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
Diffstat (limited to 'src/providers/ldap/sdap_refresh.c')
-rw-r--r--src/providers/ldap/sdap_refresh.c32
1 files changed, 25 insertions, 7 deletions
diff --git a/src/providers/ldap/sdap_refresh.c b/src/providers/ldap/sdap_refresh.c
index 29055359f..e300e28b6 100644
--- a/src/providers/ldap/sdap_refresh.c
+++ b/src/providers/ldap/sdap_refresh.c
@@ -199,18 +199,36 @@ static errno_t sdap_refresh_recv(struct tevent_req *req)
return EOK;
}
-struct tevent_req *sdap_refresh_netgroups_send(TALLOC_CTX *mem_ctx,
- struct tevent_context *ev,
- struct be_ctx *be_ctx,
- struct sss_domain_info *domain,
- char **names,
- void *pvt)
+static struct tevent_req *
+sdap_refresh_netgroups_send(TALLOC_CTX *mem_ctx,
+ struct tevent_context *ev,
+ struct be_ctx *be_ctx,
+ struct sss_domain_info *domain,
+ char **names,
+ void *pvt)
{
return sdap_refresh_send(mem_ctx, ev, be_ctx, domain,
BE_REQ_NETGROUP, names, pvt);
}
-errno_t sdap_refresh_netgroups_recv(struct tevent_req *req)
+static errno_t sdap_refresh_netgroups_recv(struct tevent_req *req)
{
return sdap_refresh_recv(req);
}
+
+errno_t sdap_refresh_init(struct be_refresh_ctx *refresh_ctx,
+ struct sdap_id_ctx *id_ctx)
+{
+ errno_t ret;
+
+ ret = be_refresh_add_cb(refresh_ctx, BE_REFRESH_TYPE_NETGROUPS,
+ sdap_refresh_netgroups_send,
+ sdap_refresh_netgroups_recv,
+ id_ctx);
+ if (ret != EOK && ret != EEXIST) {
+ DEBUG(SSSDBG_MINOR_FAILURE, "Periodical refresh of netgroups "
+ "will not work [%d]: %s\n", ret, strerror(ret));
+ }
+
+ return ret;
+}