From 98b1690a0e18f85560c092f8abac5f451bddf2e7 Mon Sep 17 00:00:00 2001 From: Martin Babinsky Date: Wed, 28 Jan 2015 16:21:15 +0100 Subject: ipa-kdb: unexpected error code in 'ipa_kdb_audit_as_req' triggers a message This patch is related this defect reported by covscan on FreeIPA master: """ Error: DEADCODE (CWE-561): /daemons/ipa-kdb/ipa_kdb_audit_as.c:42: cond_const: Condition "error_code != -1765328353L", taking false branch. Now the value of "error_code" is equal to -1765328353. /daemons/ipa-kdb/ipa_kdb_audit_as.c:42: cond_const: Condition "error_code != -1765328360L", taking false branch. Now the value of "error_code" is equal to -1765328360. /daemons/ipa-kdb/ipa_kdb_audit_as.c:42: cond_const: Condition "error_code != 0", taking false branch. Now the value of "error_code" is equal to 0. /daemons/ipa-kdb/ipa_kdb_audit_as.c:71: intervals: When switching on "error_code", the value of "error_code" must be in one of the following intervals: {[-1765328360,-1765328360], [-1765328353,-1765328353], [0,0]}. /daemons/ipa-kdb/ipa_kdb_audit_as.c:71: dead_error_condition: The switch value "error_code" cannot reach the default case. /daemons/ipa-kdb/ipa_kdb_audit_as.c:123: dead_error_begin: Execution cannot reach this statement: "default:". """ This patch is a part of series related to https://fedorahosted.org/freeipa/ticket/4795. Reviewed-By: Alexander Bokovoy --- daemons/ipa-kdb/ipa_kdb_audit_as.c | 4 ++++ daemons/ipa-kdb/ipa_kdb_mspac.c | 3 --- util/ipa_krb5.h | 2 ++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/daemons/ipa-kdb/ipa_kdb_audit_as.c b/daemons/ipa-kdb/ipa_kdb_audit_as.c index 52c165442..5f59bf33a 100644 --- a/daemons/ipa-kdb/ipa_kdb_audit_as.c +++ b/daemons/ipa-kdb/ipa_kdb_audit_as.c @@ -20,6 +20,7 @@ * along with this program. If not, see . */ +#include #include "ipa_kdb.h" #include "ipa_pwd.h" @@ -121,6 +122,9 @@ void ipadb_audit_as_req(krb5_context kcontext, client->mask |= KMASK_LAST_FAILED; break; default: + krb5_klog_syslog(LOG_ERR, + "File '%s' line %d: Got an unexpected value of " + "error_code: %d\n", __FILE__, __LINE__, error_code); return; } diff --git a/daemons/ipa-kdb/ipa_kdb_mspac.c b/daemons/ipa-kdb/ipa_kdb_mspac.c index a45000707..22774e023 100644 --- a/daemons/ipa-kdb/ipa_kdb_mspac.c +++ b/daemons/ipa-kdb/ipa_kdb_mspac.c @@ -54,9 +54,6 @@ struct ipadb_mspac { time_t last_update; }; - -int krb5_klog_syslog(int, const char *, ...); - static char *user_pac_attrs[] = { "objectClass", "uid", diff --git a/util/ipa_krb5.h b/util/ipa_krb5.h index 7b877aa66..2153bd571 100644 --- a/util/ipa_krb5.h +++ b/util/ipa_krb5.h @@ -30,6 +30,8 @@ struct keys_container { #define KEYTAB_RET_OID "2.16.840.1.113730.3.8.10.2" #define KEYTAB_GET_OID "2.16.840.1.113730.3.8.10.5" +int krb5_klog_syslog(int, const char *, ...); + void ipa_krb5_free_ktypes(krb5_context context, krb5_enctype *val); -- cgit