From 49b5baf0e6ef978d971427160677c2c95e89c418 Mon Sep 17 00:00:00 2001 From: Pavel Březina Date: Sep 16 2019 08:32:19 +0000 Subject: sysdb: add sysdb_del_autofsentry_by_key Resolves: https://pagure.io/SSSD/sssd/issue/2607 Reviewed-by: Tomáš Halman --- diff --git a/src/db/sysdb_autofs.c b/src/db/sysdb_autofs.c index 971abaf..11841d5 100644 --- a/src/db/sysdb_autofs.c +++ b/src/db/sysdb_autofs.c @@ -450,6 +450,28 @@ sysdb_del_autofsentry(struct sss_domain_info *domain, } errno_t +sysdb_del_autofsentry_by_key(struct sss_domain_info *domain, + const char *map_name, + const char *entry_key) +{ + struct ldb_message *entry; + errno_t ret; + + ret = sysdb_get_autofsentry(NULL, domain, map_name, entry_key, &entry); + if (ret == ENOENT) { + return EOK; + } else if (ret != EOK) { + DEBUG(SSSDBG_OP_FAILURE, "Unable to get autofs entry [%d]: %s\n", + ret, sss_strerror(ret)); + return ret; + } + + ret = sysdb_delete_entry(domain->sysdb, entry->dn, true); + talloc_free(entry); + return ret; +} + +errno_t sysdb_autofs_entries_by_map(TALLOC_CTX *mem_ctx, struct sss_domain_info *domain, const char *mapname, diff --git a/src/db/sysdb_autofs.h b/src/db/sysdb_autofs.h index 79ecbd9..3775e2a 100644 --- a/src/db/sysdb_autofs.h +++ b/src/db/sysdb_autofs.h @@ -76,6 +76,11 @@ sysdb_del_autofsentry(struct sss_domain_info *domain, const char *entry_dn); errno_t +sysdb_del_autofsentry_by_key(struct sss_domain_info *domain, + const char *map_name, + const char *entry_key); + +errno_t sysdb_autofs_entries_by_map(TALLOC_CTX *mem_ctx, struct sss_domain_info *domain, const char *mapname,