summaryrefslogtreecommitdiff
path: root/src/check.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/check.c')
-rw-r--r--src/check.c106
1 files changed, 63 insertions, 43 deletions
diff --git a/src/check.c b/src/check.c
index d76f0e9..9609779 100644
--- a/src/check.c
+++ b/src/check.c
@@ -9,27 +9,47 @@ p11t_check_fail(const char *message, ...)
{
va_list va;
va_start(va, message);
- p11t_msg_va(message, va);
+ p11t_msg_code("FAIL", message, va);
va_end(va);
- return 0;
+ return STOP;
}
int
-p11t_check_returns(const char *message, CK_RV have, CK_RV want)
+p11t_check_info(const char *message, ...)
+{
+ va_list va;
+ va_start(va, message);
+ p11t_msg_code("INFO", message, va);
+ va_end(va);
+ return CONTINUE;
+}
+
+int
+p11t_check_warn(const char *message, ...)
+{
+ va_list va;
+ va_start(va, message);
+ p11t_msg_code("WARN", message, va);
+ va_end(va);
+ return CONTINUE;
+}
+
+int
+_p11t_check_rv(const char *what, CK_RV have, CK_RV want)
{
if(have != want)
{
- p11t_msg_print("%s: expected %s but got %s", message,
- p11t_msg_rv(want), p11t_msg_rv(have));
- return 0;
+ p11t_check_fail("%s: expected %s but got %s", what,
+ p11t_msg_rv(want), p11t_msg_rv(have));
+ return STOP;
}
- return 1;
+ return CONTINUE;
}
int
-p11t_check_padded_len(const char *message, const CK_UTF8CHAR_PTR padded,
- CK_ULONG length)
+_p11t_check_padded(const char *what, const CK_UTF8CHAR_PTR padded,
+ CK_ULONG length)
{
CK_ULONG i;
@@ -37,48 +57,48 @@ p11t_check_padded_len(const char *message, const CK_UTF8CHAR_PTR padded,
{
if(!isprint(padded[i]))
{
- p11t_msg_print("%s: non printable character: %d", message, padded[i]);
- return 0;
+ p11t_check_fail("%s: non printable character: %d", what, padded[i]);
+ return STOP;
}
if(!padded[i])
{
- p11t_msg_print("%s: not blank padded", message);
- return 0;
+ p11t_check_fail("%s: not blank padded", what);
+ return STOP;
}
}
- return 1;
+ return CONTINUE;
}
int
-p11t_check_ulong(const char *message, CK_ULONG have, CK_ULONG want)
+_p11t_check_ulong(const char *what, CK_ULONG have, CK_ULONG want)
{
if(have != want)
{
- p11t_msg_print("%s: expected 0x%08x but have 0x%08x", message,
- want, have);
- return 0;
+ p11t_check_fail("%s: expected 0x%08x but have 0x%08x", what,
+ want, have);
+ return STOP;
}
- return 1;
+ return CONTINUE;
}
int
-p11t_check_bool(const char *message, CK_BBOOL value)
+_p11t_check_bool(const char *what, CK_BBOOL value)
{
if(value != CK_FALSE && value != CK_TRUE)
{
- p11t_msg_print("%s: expected CK_TRUE or CK_FALSE but got 0x%02x",
- message, (int)value);
- return 0;
+ p11t_check_fail("%s: expected CK_TRUE or CK_FALSE but got 0x%02x",
+ what, (int)value);
+ return STOP;
}
- return 1;
+ return CONTINUE;
}
int
-p11t_check_string(const char *message, CK_UTF8CHAR_PTR value, CK_ULONG length)
+_p11t_check_string(const char *what, CK_UTF8CHAR_PTR value, CK_ULONG length)
{
CK_ULONG i;
@@ -86,49 +106,49 @@ p11t_check_string(const char *message, CK_UTF8CHAR_PTR value, CK_ULONG length)
{
if(!value[i])
{
- p11t_msg_print("%s: is null terminated", message);
- return 0;
+ p11t_check_fail("%s: is null terminated", what);
+ return STOP;
}
}
- return 1;
+ return CONTINUE;
}
int
-p11t_check_mask(const char *message, CK_ULONG flags, CK_ULONG mask)
+_p11t_check_mask(const char *what, CK_ULONG flags, CK_ULONG mask)
{
if((flags & ~mask) != 0)
{
- p11t_msg_print("%s: extra flags outside of mask: 0x%08x",
- message, (flags & ~mask));
- return 0;
+ p11t_check_fail("%s: extra flags outside of mask: 0x%08x",
+ what, (flags & ~mask));
+ return STOP;
}
- return 1;
+ return CONTINUE;
}
int
-p11t_check_flag(const char *message, CK_ULONG flags, CK_ULONG flag)
+_p11t_check_flag(const char *what, CK_ULONG flags, CK_ULONG flag)
{
if((flags & flag) != flag)
{
- p11t_msg_print("%s: flag 0x%08x should be set in: 0x%08x",
- message, flag, flags);
- return 0;
+ p11t_check_fail("%s: flag 0x%08x should be set in: 0x%08x",
+ what, flag, flags);
+ return STOP;
}
- return 1;
+ return CONTINUE;
}
int
-p11t_check_nflag(const char *message, CK_ULONG flags, CK_ULONG nflag)
+_p11t_check_nflag(const char *what, CK_ULONG flags, CK_ULONG nflag)
{
if((flags & nflag) != 0)
{
- p11t_msg_print("%s: flag 0x%08x should not be set in: 0x%08x",
- message, nflag, flags);
- return 0;
+ p11t_check_fail("%s: flag 0x%08x should not be set in: 0x%08x",
+ what, nflag, flags);
+ return STOP;
}
- return 1;
+ return CONTINUE;
}