static int pbe_test_init(EVP_TEST *t, const char *alg)
{
    PBE_DATA *pdat;
    int pbe_type = 0;
    if (strcmp(alg, "scrypt") == 0) {
#ifndef OPENSSL_NO_SCRYPT
        pbe_type = PBE_TYPE_SCRYPT;
#else
        t->skip = 1;
        return 1;
#endif
    } else if (strcmp(alg, "pbkdf2") == 0) {
        pbe_type = PBE_TYPE_PBKDF2;
    } else if (strcmp(alg, "pkcs12") == 0) {
        pbe_type = PBE_TYPE_PKCS12;
    } else {
        TEST_error("Unknown pbe algorithm %s", alg);
    }
    pdat = OPENSSL_malloc(sizeof(*pdat));
    pdat->pbe_type = pbe_type;
    pdat->pass = NULL;
    pdat->salt = NULL;
    pdat->N = 0;
    pdat->r = 0;
    pdat->p = 0;
    pdat->maxmem = 0;
    pdat->id = 0;
    pdat->iter = 0;
    pdat->md = NULL;
    t->data = pdat;
    return 1;
}
['static int pbe_test_init(EVP_TEST *t, const char *alg)\n{\n    PBE_DATA *pdat;\n    int pbe_type = 0;\n    if (strcmp(alg, "scrypt") == 0) {\n#ifndef OPENSSL_NO_SCRYPT\n        pbe_type = PBE_TYPE_SCRYPT;\n#else\n        t->skip = 1;\n        return 1;\n#endif\n    } else if (strcmp(alg, "pbkdf2") == 0) {\n        pbe_type = PBE_TYPE_PBKDF2;\n    } else if (strcmp(alg, "pkcs12") == 0) {\n        pbe_type = PBE_TYPE_PKCS12;\n    } else {\n        TEST_error("Unknown pbe algorithm %s", alg);\n    }\n    pdat = OPENSSL_malloc(sizeof(*pdat));\n    pdat->pbe_type = pbe_type;\n    pdat->pass = NULL;\n    pdat->salt = NULL;\n    pdat->N = 0;\n    pdat->r = 0;\n    pdat->p = 0;\n    pdat->maxmem = 0;\n    pdat->id = 0;\n    pdat->iter = 0;\n    pdat->md = NULL;\n    t->data = pdat;\n    return 1;\n}', 'void test_error(const char *file, int line, const char *desc, ...)\n{\n    va_list ap;\n    va_start(ap, desc);\n    test_fail_message_va(NULL, file, line, NULL, NULL, NULL, NULL, desc, ap);\n    va_end(ap);\n}', 'void *CRYPTO_malloc(size_t num, const char *file, int line)\n{\n    void *ret = NULL;\n    if (malloc_impl != NULL && malloc_impl != CRYPTO_malloc)\n        return malloc_impl(num, file, line);\n    if (num == 0)\n        return NULL;\n    FAILTEST();\n    allow_customize = 0;\n#ifndef OPENSSL_NO_CRYPTO_MDEBUG\n    if (call_malloc_debug) {\n        CRYPTO_mem_debug_malloc(NULL, num, 0, file, line);\n        ret = malloc(num);\n        CRYPTO_mem_debug_malloc(ret, num, 1, file, line);\n    } else {\n        ret = malloc(num);\n    }\n#else\n    osslargused(file); osslargused(line);\n    ret = malloc(num);\n#endif\n    return ret;\n}']