Blame crypto/bn/bn_depr.c

Packit c4476c
/*
Packit c4476c
 * Copyright 2002-2019 The OpenSSL Project Authors. All Rights Reserved.
Packit c4476c
 *
Packit c4476c
 * Licensed under the OpenSSL license (the "License").  You may not use
Packit c4476c
 * this file except in compliance with the License.  You can obtain a copy
Packit c4476c
 * in the file LICENSE in the source distribution or at
Packit c4476c
 * https://www.openssl.org/source/license.html
Packit c4476c
 */
Packit c4476c
Packit c4476c
/*
Packit c4476c
 * Support for deprecated functions goes here - static linkage will only
Packit c4476c
 * slurp this code if applications are using them directly.
Packit c4476c
 */
Packit c4476c
Packit c4476c
#include <openssl/opensslconf.h>
Packit c4476c
#if OPENSSL_API_COMPAT >= 0x00908000L
Packit c4476c
NON_EMPTY_TRANSLATION_UNIT
Packit c4476c
#else
Packit c4476c
Packit c4476c
# include <stdio.h>
Packit c4476c
# include <time.h>
Packit c4476c
# include "internal/cryptlib.h"
Packit c4476c
# include "bn_local.h"
Packit c4476c
Packit c4476c
BIGNUM *BN_generate_prime(BIGNUM *ret, int bits, int safe,
Packit c4476c
                          const BIGNUM *add, const BIGNUM *rem,
Packit c4476c
                          void (*callback) (int, int, void *), void *cb_arg)
Packit c4476c
{
Packit c4476c
    BN_GENCB cb;
Packit c4476c
    BIGNUM *rnd = NULL;
Packit c4476c
Packit c4476c
    BN_GENCB_set_old(&cb, callback, cb_arg);
Packit c4476c
Packit c4476c
    if (ret == NULL) {
Packit c4476c
        if ((rnd = BN_new()) == NULL)
Packit c4476c
            goto err;
Packit c4476c
    } else
Packit c4476c
        rnd = ret;
Packit c4476c
    if (!BN_generate_prime_ex(rnd, bits, safe, add, rem, &cb))
Packit c4476c
        goto err;
Packit c4476c
Packit c4476c
    /* we have a prime :-) */
Packit c4476c
    return rnd;
Packit c4476c
 err:
Packit c4476c
    BN_free(rnd);
Packit c4476c
    return NULL;
Packit c4476c
}
Packit c4476c
Packit c4476c
int BN_is_prime(const BIGNUM *a, int checks,
Packit c4476c
                void (*callback) (int, int, void *), BN_CTX *ctx_passed,
Packit c4476c
                void *cb_arg)
Packit c4476c
{
Packit c4476c
    BN_GENCB cb;
Packit c4476c
    BN_GENCB_set_old(&cb, callback, cb_arg);
Packit c4476c
    return BN_is_prime_ex(a, checks, ctx_passed, &cb;;
Packit c4476c
}
Packit c4476c
Packit c4476c
int BN_is_prime_fasttest(const BIGNUM *a, int checks,
Packit c4476c
                         void (*callback) (int, int, void *),
Packit c4476c
                         BN_CTX *ctx_passed, void *cb_arg,
Packit c4476c
                         int do_trial_division)
Packit c4476c
{
Packit c4476c
    BN_GENCB cb;
Packit c4476c
    BN_GENCB_set_old(&cb, callback, cb_arg);
Packit c4476c
    return BN_is_prime_fasttest_ex(a, checks, ctx_passed,
Packit c4476c
                                   do_trial_division, &cb;;
Packit c4476c
}
Packit c4476c
#endif