/usr/include/openssl
NameSizeModeActions
aes.h33490644editdlrm
asn1.h336270644editdlrm
asn1err.h146870644editdlrm
asn1t.h329400644editdlrm
asn1_mac.h3950644editdlrm
async.h23980644editdlrm
asyncerr.h13260644editdlrm
bio.h349070644editdlrm
bioerr.h64000644editdlrm
blowfish.h18470644editdlrm
bn.h221350644editdlrm
bnerr.h49690644editdlrm
buffer.h16000644editdlrm
buffererr.h8200644editdlrm
camellia.h31790644editdlrm
cast.h16740644editdlrm
cmac.h10640644editdlrm
cms.h163790644editdlrm
cmserr.h111600644editdlrm
comp.h13280644editdlrm
comperr.h12120644editdlrm
conf.h56010644editdlrm
conferr.h34290644editdlrm
conf_api.h13000644editdlrm
crypto.h173350644editdlrm
cryptoerr.h22610644editdlrm
ct.h158720644editdlrm
cterr.h34700644editdlrm
des.h76270644editdlrm
dh.h137380644editdlrm
dherr.h44150644editdlrm
dsa.h101030644editdlrm
dsaerr.h33500644editdlrm
dtls1.h15780644editdlrm
ebcdic.h9240644editdlrm
ec.h636570644editdlrm
ecdh.h3580644editdlrm
ecdsa.h3580644editdlrm
ecerr.h166400644editdlrm
engine.h346610644editdlrm
engineerr.h54470644editdlrm
err.h112690644editdlrm
evp.h769380644editdlrm
evperr.h120730644editdlrm
e_os2.h88870644editdlrm
fips.h99750644editdlrm
fips_rand.h71690644editdlrm
hmac.h15910644editdlrm
idea.h20990644editdlrm
kdf.h75650644editdlrm
kdferr.h47880644editdlrm
lhash.h92710644editdlrm
md2.h10540644editdlrm
md4.h13220644editdlrm
md5.h13200644editdlrm
mdc2.h10530644editdlrm
modes.h104780644editdlrm
objects.h66330644editdlrm
objectserr.h13160644editdlrm
obj_mac.h2184860644editdlrm
ocsp.h153050644editdlrm
ocsperr.h33560644editdlrm
opensslconf-x86_64.h48980644editdlrm
opensslconf.h15810644editdlrm
opensslv.h41070644editdlrm
ossl_typ.h63100644editdlrm
pem.h154680644editdlrm
pem2.h4150644editdlrm
pemerr.h52220644editdlrm
pkcs7.h115900644editdlrm
pkcs7err.h51100644editdlrm
pkcs12.h98710644editdlrm
pkcs12err.h37490644editdlrm
rand.h23580644editdlrm
randerr.h46950644editdlrm
rand_drbg.h47630644editdlrm
rc2.h15340644editdlrm
rc4.h8250644editdlrm
rc5.h19880644editdlrm
ripemd.h12430644editdlrm
rsa.h223480644editdlrm
rsaerr.h98190644editdlrm
safestack.h81390644editdlrm
seed.h34790644editdlrm
sha.h38310644editdlrm
srp.h38270644editdlrm
srtp.h13160644editdlrm
ssl.h1111600644editdlrm
ssl2.h5420644editdlrm
ssl3.h147050644editdlrm
sslerr.h466760644editdlrm
stack.h30950644editdlrm
store.h111990644editdlrm
storeerr.h43990644editdlrm
symhacks.h13110644editdlrm
tls1.h724900644editdlrm
ts.h224290644editdlrm
tserr.h67460644editdlrm
txt_db.h16660644editdlrm
ui.h160520644editdlrm
uierr.h27370644editdlrm
whrlpool.h13770644editdlrm
x509.h433260644editdlrm
x509err.h68030644editdlrm
x509v3.h334410644editdlrm
x509v3err.h87770644editdlrm
x509_vfy.h324510644editdlrm
Edit: /usr/include/openssl/dsa.h (10103B)
/* * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy * in the file LICENSE in the source distribution or at * https://www.openssl.org/source/license.html */ #ifndef HEADER_DSA_H # define HEADER_DSA_H # include # ifndef OPENSSL_NO_DSA # ifdef __cplusplus extern "C" { # endif # include # include # include # include # include # if OPENSSL_API_COMPAT < 0x10100000L # include # endif # include # ifndef OPENSSL_DSA_MAX_MODULUS_BITS # define OPENSSL_DSA_MAX_MODULUS_BITS 10000 # endif # define OPENSSL_DSA_FIPS_MIN_MODULUS_BITS 1024 # define OPENSSL_DSA_FIPS_MIN_MODULUS_BITS_GEN 2048 # define DSA_FLAG_CACHE_MONT_P 0x01 # if OPENSSL_API_COMPAT < 0x10100000L /* * Does nothing. Previously this switched off constant time behaviour. */ # define DSA_FLAG_NO_EXP_CONSTTIME 0x00 # endif /* * If this flag is set the DSA method is FIPS compliant and can be used in * FIPS mode. This is set in the validated module method. If an application * sets this flag in its own methods it is its responsibility to ensure the * result is compliant. */ # define DSA_FLAG_FIPS_METHOD 0x0400 /* * If this flag is set the operations normally disabled in FIPS mode are * permitted it is then the applications responsibility to ensure that the * usage is compliant. */ # define DSA_FLAG_NON_FIPS_ALLOW 0x0400 # define DSA_FLAG_FIPS_CHECKED 0x0800 /* Already defined in ossl_typ.h */ /* typedef struct dsa_st DSA; */ /* typedef struct dsa_method DSA_METHOD; */ typedef struct DSA_SIG_st DSA_SIG; # define d2i_DSAparams_fp(fp,x) (DSA *)ASN1_d2i_fp((char *(*)())DSA_new, \ (char *(*)())d2i_DSAparams,(fp),(unsigned char **)(x)) # define i2d_DSAparams_fp(fp,x) ASN1_i2d_fp(i2d_DSAparams,(fp), \ (unsigned char *)(x)) # define d2i_DSAparams_bio(bp,x) ASN1_d2i_bio_of(DSA,DSA_new,d2i_DSAparams,bp,x) # define i2d_DSAparams_bio(bp,x) ASN1_i2d_bio_of_const(DSA,i2d_DSAparams,bp,x) DSA *DSAparams_dup(DSA *x); DSA_SIG *DSA_SIG_new(void); void DSA_SIG_free(DSA_SIG *a); int i2d_DSA_SIG(const DSA_SIG *a, unsigned char **pp); DSA_SIG *d2i_DSA_SIG(DSA_SIG **v, const unsigned char **pp, long length); void DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps); int DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s); DSA_SIG *DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa); int DSA_do_verify(const unsigned char *dgst, int dgst_len, DSA_SIG *sig, DSA *dsa); const DSA_METHOD *DSA_OpenSSL(void); void DSA_set_default_method(const DSA_METHOD *); const DSA_METHOD *DSA_get_default_method(void); int DSA_set_method(DSA *dsa, const DSA_METHOD *); const DSA_METHOD *DSA_get_method(DSA *d); DSA *DSA_new(void); DSA *DSA_new_method(ENGINE *engine); void DSA_free(DSA *r); /* "up" the DSA object's reference count */ int DSA_up_ref(DSA *r); int DSA_size(const DSA *); int DSA_bits(const DSA *d); int DSA_security_bits(const DSA *d); /* next 4 return -1 on error */ DEPRECATEDIN_1_2_0(int DSA_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp)) int DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig, unsigned int *siglen, DSA *dsa); int DSA_verify(int type, const unsigned char *dgst, int dgst_len, const unsigned char *sigbuf, int siglen, DSA *dsa); #define DSA_get_ex_new_index(l, p, newf, dupf, freef) \ CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DSA, l, p, newf, dupf, freef) int DSA_set_ex_data(DSA *d, int idx, void *arg); void *DSA_get_ex_data(DSA *d, int idx); DSA *d2i_DSAPublicKey(DSA **a, const unsigned char **pp, long length); DSA *d2i_DSAPrivateKey(DSA **a, const unsigned char **pp, long length); DSA *d2i_DSAparams(DSA **a, const unsigned char **pp, long length); /* Deprecated version */ DEPRECATEDIN_0_9_8(DSA *DSA_generate_parameters(int bits, unsigned char *seed, int seed_len, int *counter_ret, unsigned long *h_ret, void (*callback) (int, int, void *), void *cb_arg)) /* New version */ int DSA_generate_parameters_ex(DSA *dsa, int bits, const unsigned char *seed, int seed_len, int *counter_ret, unsigned long *h_ret, BN_GENCB *cb); int DSA_generate_key(DSA *a); int i2d_DSAPublicKey(const DSA *a, unsigned char **pp); int i2d_DSAPrivateKey(const DSA *a, unsigned char **pp); int i2d_DSAparams(const DSA *a, unsigned char **pp); int DSAparams_print(BIO *bp, const DSA *x); int DSA_print(BIO *bp, const DSA *x, int off); # ifndef OPENSSL_NO_STDIO int DSAparams_print_fp(FILE *fp, const DSA *x); int DSA_print_fp(FILE *bp, const DSA *x, int off); # endif # define DSS_prime_checks 64 /* * Primality test according to FIPS PUB 186-4, Appendix C.3. Since we only * have one value here we set the number of checks to 64 which is the 128 bit * security level that is the highest level and valid for creating a 3072 bit * DSA key. */ # define DSA_is_prime(n, callback, cb_arg) \ BN_is_prime(n, DSS_prime_checks, callback, NULL, cb_arg) # ifndef OPENSSL_NO_DH /* * Convert DSA structure (key or just parameters) into DH structure (be * careful to avoid small subgroup attacks when using this!) */ DH *DSA_dup_DH(const DSA *r); # endif # define EVP_PKEY_CTX_set_dsa_paramgen_bits(ctx, nbits) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DSA, EVP_PKEY_OP_PARAMGEN, \ EVP_PKEY_CTRL_DSA_PARAMGEN_BITS, nbits, NULL) # define EVP_PKEY_CTX_set_dsa_paramgen_q_bits(ctx, qbits) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DSA, EVP_PKEY_OP_PARAMGEN, \ EVP_PKEY_CTRL_DSA_PARAMGEN_Q_BITS, qbits, NULL) # define EVP_PKEY_CTX_set_dsa_paramgen_md(ctx, md) \ EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DSA, EVP_PKEY_OP_PARAMGEN, \ EVP_PKEY_CTRL_DSA_PARAMGEN_MD, 0, (void *)(md)) # define EVP_PKEY_CTRL_DSA_PARAMGEN_BITS (EVP_PKEY_ALG_CTRL + 1) # define EVP_PKEY_CTRL_DSA_PARAMGEN_Q_BITS (EVP_PKEY_ALG_CTRL + 2) # define EVP_PKEY_CTRL_DSA_PARAMGEN_MD (EVP_PKEY_ALG_CTRL + 3) void DSA_get0_pqg(const DSA *d, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g); int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g); void DSA_get0_key(const DSA *d, const BIGNUM **pub_key, const BIGNUM **priv_key); int DSA_set0_key(DSA *d, BIGNUM *pub_key, BIGNUM *priv_key); const BIGNUM *DSA_get0_p(const DSA *d); const BIGNUM *DSA_get0_q(const DSA *d); const BIGNUM *DSA_get0_g(const DSA *d); const BIGNUM *DSA_get0_pub_key(const DSA *d); const BIGNUM *DSA_get0_priv_key(const DSA *d); void DSA_clear_flags(DSA *d, int flags); int DSA_test_flags(const DSA *d, int flags); void DSA_set_flags(DSA *d, int flags); ENGINE *DSA_get0_engine(DSA *d); DSA_METHOD *DSA_meth_new(const char *name, int flags); void DSA_meth_free(DSA_METHOD *dsam); DSA_METHOD *DSA_meth_dup(const DSA_METHOD *dsam); const char *DSA_meth_get0_name(const DSA_METHOD *dsam); int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name); int DSA_meth_get_flags(const DSA_METHOD *dsam); int DSA_meth_set_flags(DSA_METHOD *dsam, int flags); void *DSA_meth_get0_app_data(const DSA_METHOD *dsam); int DSA_meth_set0_app_data(DSA_METHOD *dsam, void *app_data); DSA_SIG *(*DSA_meth_get_sign(const DSA_METHOD *dsam)) (const unsigned char *, int, DSA *); int DSA_meth_set_sign(DSA_METHOD *dsam, DSA_SIG *(*sign) (const unsigned char *, int, DSA *)); int (*DSA_meth_get_sign_setup(const DSA_METHOD *dsam)) (DSA *, BN_CTX *, BIGNUM **, BIGNUM **); int DSA_meth_set_sign_setup(DSA_METHOD *dsam, int (*sign_setup) (DSA *, BN_CTX *, BIGNUM **, BIGNUM **)); int (*DSA_meth_get_verify(const DSA_METHOD *dsam)) (const unsigned char *, int, DSA_SIG *, DSA *); int DSA_meth_set_verify(DSA_METHOD *dsam, int (*verify) (const unsigned char *, int, DSA_SIG *, DSA *)); int (*DSA_meth_get_mod_exp(const DSA_METHOD *dsam)) (DSA *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *); int DSA_meth_set_mod_exp(DSA_METHOD *dsam, int (*mod_exp) (DSA *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *)); int (*DSA_meth_get_bn_mod_exp(const DSA_METHOD *dsam)) (DSA *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *); int DSA_meth_set_bn_mod_exp(DSA_METHOD *dsam, int (*bn_mod_exp) (DSA *, BIGNUM *, const BIGNUM *, const BIGNUM *, const BIGNUM *, BN_CTX *, BN_MONT_CTX *)); int (*DSA_meth_get_init(const DSA_METHOD *dsam))(DSA *); int DSA_meth_set_init(DSA_METHOD *dsam, int (*init)(DSA *)); int (*DSA_meth_get_finish(const DSA_METHOD *dsam)) (DSA *); int DSA_meth_set_finish(DSA_METHOD *dsam, int (*finish) (DSA *)); int (*DSA_meth_get_paramgen(const DSA_METHOD *dsam)) (DSA *, int, const unsigned char *, int, int *, unsigned long *, BN_GENCB *); int DSA_meth_set_paramgen(DSA_METHOD *dsam, int (*paramgen) (DSA *, int, const unsigned char *, int, int *, unsigned long *, BN_GENCB *)); int (*DSA_meth_get_keygen(const DSA_METHOD *dsam)) (DSA *); int DSA_meth_set_keygen(DSA_METHOD *dsam, int (*keygen) (DSA *)); # ifdef __cplusplus } # endif # endif #endif