From 2211abf772cb8b28356e57b8c64a4328c9b2c3dc Mon Sep 17 00:00:00 2001 From: Pavel Březina Date: Thu, 22 Aug 2013 13:58:27 +0200 Subject: sudo: do not strdup usn on ENOENT If USN attribute is not present, we call strdup on uninitialized variable. This may cause segfault, or if we are lucky and usn is NULL it will return ENOMEM. --- src/providers/ldap/sdap_sudo_cache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/providers') diff --git a/src/providers/ldap/sdap_sudo_cache.c b/src/providers/ldap/sdap_sudo_cache.c index 5cc1dd20c..de4f65c41 100644 --- a/src/providers/ldap/sdap_sudo_cache.c +++ b/src/providers/ldap/sdap_sudo_cache.c @@ -39,7 +39,7 @@ static errno_t sdap_sudo_get_usn(TALLOC_CTX *mem_ctx, } ret = sysdb_attrs_get_string(attrs, map[SDAP_AT_SUDO_USN].sys_name, &usn); - if (ret != EOK && ret != ENOENT) { + if (ret != EOK) { DEBUG(SSSDBG_MINOR_FAILURE, ("Failed to retrieve USN value: [%s]\n", strerror(ret))); -- cgit