summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Zidek <mzidek@redhat.com>2015-03-10 18:38:10 +0100
committerJakub Hrozek <jhrozek@redhat.com>2015-03-13 09:39:07 +0100
commitc82b150d9599e212a71996d3f987f9b236833fe4 (patch)
tree808003c011cdd92484c23faceff9203796477816
parentb54376696a0f41b8187718c3589307dd1d9d1d4f (diff)
downloadsssd-c82b150d9599e212a71996d3f987f9b236833fe4.tar.gz
sssd-c82b150d9599e212a71996d3f987f9b236833fe4.tar.xz
sssd-c82b150d9599e212a71996d3f987f9b236833fe4.zip
test: Check ERR_LAST
Check if number of error codes and messages is the same. Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
-rw-r--r--src/tests/util-tests.c10
-rw-r--r--src/util/util_errors.c1
-rw-r--r--src/util/util_errors.h2
3 files changed, 12 insertions, 1 deletions
diff --git a/src/tests/util-tests.c b/src/tests/util-tests.c
index 21eb02f14..7ee40dbca 100644
--- a/src/tests/util-tests.c
+++ b/src/tests/util-tests.c
@@ -1050,6 +1050,12 @@ START_TEST(test_convert_time)
}
END_TEST
+START_TEST(test_sss_strerror_err_last)
+{
+ ck_assert_str_eq(sss_strerror(ERR_LAST), "ERR_LAST");
+}
+END_TEST
+
Suite *util_suite(void)
{
Suite *s = suite_create("util");
@@ -1102,11 +1108,15 @@ Suite *util_suite(void)
ck_leak_check_teardown);
tcase_add_test(tc_convert_time, test_convert_time);
+ TCase *tc_sss_strerror = tcase_create("sss_strerror");
+ tcase_add_test(tc_sss_strerror, test_sss_strerror_err_last);
+
suite_add_tcase (s, tc_util);
suite_add_tcase (s, tc_utf8);
suite_add_tcase (s, tc_mh3);
suite_add_tcase (s, tc_atomicio);
suite_add_tcase (s, tc_convert_time);
+ suite_add_tcase (s, tc_sss_strerror);
return s;
}
diff --git a/src/util/util_errors.c b/src/util/util_errors.c
index 180d2e713..dad988bce 100644
--- a/src/util/util_errors.c
+++ b/src/util/util_errors.c
@@ -69,6 +69,7 @@ struct err_string error_to_str[] = {
{ "Error setting SELinux user context" }, /* ERR_SELINUX_CONTEXT */
{ "Username format not allowed by re_expression" }, /* ERR_REGEX_NOMATCH */
{ "Time specification not supported" }, /* ERR_TIMESPEC_NOT_SUPPORTED */
+ { "ERR_LAST" } /* ERR_LAST */
};
diff --git a/src/util/util_errors.h b/src/util/util_errors.h
index 5ebce631d..5d657c707 100644
--- a/src/util/util_errors.h
+++ b/src/util/util_errors.h
@@ -97,7 +97,7 @@ enum sssd_errors {
#define SSSD_ERR_BASE(err) ((err) & ~ERR_MASK)
#define SSSD_ERR_IDX(err) ((err) & ERR_MASK)
#define IS_SSSD_ERROR(err) \
- ((SSSD_ERR_BASE(err) == ERR_BASE) && ((err) < ERR_LAST))
+ ((SSSD_ERR_BASE(err) == ERR_BASE) && ((err) <= ERR_LAST))
#define ERR_OK 0
/* Backwards compat */