From aff8b0e3b41644c70704b78e15501779d52b6ff4 Mon Sep 17 00:00:00 2001 From: Pavel Reichl Date: Fri, 28 Nov 2014 13:17:44 +0000 Subject: Fix: always check return value of unlink() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Resolves: https://fedorahosted.org/sssd/ticket/2506 Reviewed-by: Lukáš Slebodník --- src/monitor/monitor.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/monitor') diff --git a/src/monitor/monitor.c b/src/monitor/monitor.c index b55757d95..c6834a115 100644 --- a/src/monitor/monitor.c +++ b/src/monitor/monitor.c @@ -1685,7 +1685,14 @@ static errno_t load_configuration(TALLOC_CTX *mem_ctx, * misconfiguration gets in the way */ talloc_zfree(ctx->cdb); - unlink(cdb_file); + ret = unlink(cdb_file); + if (ret != EOK && errno != ENOENT) { + ret = errno; + DEBUG(SSSDBG_MINOR_FAILURE, + "Purging existing confdb failed: %d [%s].\n", + ret, sss_strerror(ret)); + goto done; + } ret = confdb_init(ctx, &ctx->cdb, cdb_file); if (ret != EOK) { -- cgit