X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=test%2Fpbelutest.c;h=11189b477688735360374c874e6b8ee0dadf0c4a;hp=e226d43f2629dd899571148fe2e6deec551279eb;hb=b66411f6cda6970c01283ddde6d8063c57b3b7d9;hpb=0fef74486ede58e34eeac2fab38c3f467ea31f95 diff --git a/test/pbelutest.c b/test/pbelutest.c index e226d43f26..11189b4776 100644 --- a/test/pbelutest.c +++ b/test/pbelutest.c @@ -8,40 +8,49 @@ */ #include -#include -#include +#include "testutil.h" +#include "test_main.h" /* * Password based encryption (PBE) table ordering test. * Attempt to look up all supported algorithms. */ -int main(int argc, char **argv) +static int test_pbelu(void) { - size_t i; - int rv = 0; - int pbe_type, pbe_nid; - int last_type = -1, last_nid = -1; + int i, failed = 0, ok; + int pbe_type, pbe_nid, last_type = -1, last_nid = -1; + for (i = 0; EVP_PBE_get(&pbe_type, &pbe_nid, i) != 0; i++) { - if (EVP_PBE_find(pbe_type, pbe_nid, NULL, NULL, 0) == 0) { - rv = 1; + if (!TEST_true(EVP_PBE_find(pbe_type, pbe_nid, NULL, NULL, 0))) { + TEST_info("i=%d, pbe_type=%d, pbe_nid=%d", i, pbe_type, pbe_nid); + failed = 1; break; } } - if (rv == 0) - return 0; + + if (!failed) + return 1; + /* Error: print out whole table */ for (i = 0; EVP_PBE_get(&pbe_type, &pbe_nid, i) != 0; i++) { if (pbe_type > last_type) - rv = 0; + ok = 0; else if (pbe_type < last_type || pbe_nid < last_nid) - rv = 1; + ok = 1; else - rv = 0; - fprintf(stderr, "PBE type=%d %d (%s): %s\n", pbe_type, pbe_nid, - OBJ_nid2sn(pbe_nid), rv ? "ERROR" : "OK"); + ok = 0; + if (!ok) + failed = 1; + TEST_info("PBE type=%d %d (%s): %s\n", pbe_type, pbe_nid, + OBJ_nid2sn(pbe_nid), ok ? "ERROR" : "OK"); last_type = pbe_type; last_nid = pbe_nid; } - return 1; + return failed ? 0 : 1; +} + +void register_tests(void) +{ + ADD_TEST(test_pbelu); }