| line |
true |
false |
branch |
|
92
|
0 |
0 |
COUNTING_TYPE(EVP_RAND, Random, Random) |
|
|
0 |
0 |
COUNTING_TYPE(EVP_RAND, Random, Random) |
|
93
|
0 |
0 |
COUNTING_TYPE(EVP_RAND_CTX, Random__Context, Random::Context) |
|
|
0 |
0 |
COUNTING_TYPE(EVP_RAND_CTX, Random__Context, Random::Context) |
|
94
|
0 |
0 |
COUNTING_TYPE(EVP_CIPHER, Cipher, Cipher) |
|
|
0 |
0 |
COUNTING_TYPE(EVP_CIPHER, Cipher, Cipher) |
|
95
|
0 |
0 |
DUPLICATING_TYPE(EVP_CIPHER_CTX, Cipher__Context, Cipher::Context) |
|
|
0 |
0 |
DUPLICATING_TYPE(EVP_CIPHER_CTX, Cipher__Context, Cipher::Context) |
|
96
|
0 |
0 |
COUNTING_TYPE(EVP_MD, MD, MD) |
|
|
0 |
0 |
COUNTING_TYPE(EVP_MD, MD, MD) |
|
97
|
0 |
0 |
DUPLICATING_TYPE(EVP_MD_CTX, MD__Context, MD::Context) |
|
|
0 |
0 |
DUPLICATING_TYPE(EVP_MD_CTX, MD__Context, MD::Context) |
|
98
|
0 |
0 |
COUNTING_TYPE(EVP_MAC, MAC, MAC) |
|
|
0 |
0 |
COUNTING_TYPE(EVP_MAC, MAC, MAC) |
|
99
|
0 |
0 |
DUPLICATING_TYPE(EVP_MAC_CTX, MAC__Context, MAC::Context) |
|
|
0 |
0 |
DUPLICATING_TYPE(EVP_MAC_CTX, MAC__Context, MAC::Context) |
|
100
|
0 |
0 |
COUNTING_TYPE(EVP_KDF, KDF, KDF) |
|
|
0 |
0 |
COUNTING_TYPE(EVP_KDF, KDF, KDF) |
|
101
|
0 |
0 |
DUPLICATING_TYPE(EVP_KDF_CTX, KDF__Context, KDF::Context) |
|
|
0 |
0 |
DUPLICATING_TYPE(EVP_KDF_CTX, KDF__Context, KDF::Context) |
|
102
|
0 |
0 |
COUNTING_TYPE(EVP_SIGNATURE, Signature, Signature) |
|
|
0 |
0 |
COUNTING_TYPE(EVP_SIGNATURE, Signature, Signature) |
|
103
|
0 |
0 |
DUPLICATING_TYPE(EVP_PKEY, PKey, PKey) |
|
|
0 |
0 |
DUPLICATING_TYPE(EVP_PKEY, PKey, PKey) |
|
104
|
0 |
0 |
DUPLICATING_TYPE(EVP_PKEY_CTX, PKey__Context, PKey::Context) |
|
|
0 |
0 |
DUPLICATING_TYPE(EVP_PKEY_CTX, PKey__Context, PKey::Context) |
|
107
|
6 |
0 |
DUPLICATING_TYPE(BN, BigNum, BigNum); |
|
|
0 |
0 |
DUPLICATING_TYPE(BN, BigNum, BigNum); |
|
109
|
0 |
0 |
DUPLICATING_TYPE(BN_CTX, BigNum__Context, BigNum::Context) |
|
|
0 |
0 |
DUPLICATING_TYPE(BN_CTX, BigNum__Context, BigNum::Context) |
|
111
|
0 |
0 |
SIMPLE_TYPE(ASN1_OBJECT, ASN1__Object, ASN1::Object, const) |
|
|
0 |
0 |
SIMPLE_TYPE(ASN1_OBJECT, ASN1__Object, ASN1::Object, const) |
|
112
|
0 |
0 |
DUPLICATING_TYPE(ASN1_INTEGER, ASN1__Integer, ASN1::Integer) |
|
|
0 |
0 |
DUPLICATING_TYPE(ASN1_INTEGER, ASN1__Integer, ASN1::Integer) |
|
114
|
0 |
0 |
DUPLICATING_TYPE(ASN1_ENUMERATED, ASN1__Enumerated, ASN1::Enumerated) |
|
|
0 |
0 |
DUPLICATING_TYPE(ASN1_ENUMERATED, ASN1__Enumerated, ASN1::Enumerated) |
|
115
|
0 |
0 |
DUPLICATING_TYPE(ASN1_STRING, ASN1__String, ASN1::String) |
|
|
0 |
0 |
DUPLICATING_TYPE(ASN1_STRING, ASN1__String, ASN1::String) |
|
116
|
0 |
0 |
DUPLICATING_TYPE(ASN1_OCTET_STRING, ASN1__String__Octet, ASN1::String::Octet) |
|
|
0 |
0 |
DUPLICATING_TYPE(ASN1_OCTET_STRING, ASN1__String__Octet, ASN1::String::Octet) |
|
117
|
0 |
0 |
DUPLICATING_TYPE(ASN1_TIME, ASN1__Time, ASN1::Time) |
|
|
0 |
0 |
DUPLICATING_TYPE(ASN1_TIME, ASN1__Time, ASN1::Time) |
|
118
|
0 |
0 |
DUPLICATING_TYPE(ASN1_GENERALIZEDTIME, ASN1__Time__Generalized, ASN1::Time::Generalized) |
|
|
0 |
0 |
DUPLICATING_TYPE(ASN1_GENERALIZEDTIME, ASN1__Time__Generalized, ASN1::Time::Generalized) |
|
119
|
0 |
0 |
DUPLICATING_TYPE(ASN1_UTCTIME, ASN1__Time__UTC, ASN1::Time::UTC) |
|
|
0 |
0 |
DUPLICATING_TYPE(ASN1_UTCTIME, ASN1__Time__UTC, ASN1::Time::UTC) |
|
120
|
0 |
0 |
DUPLICATING_TYPE(X509, X509, X509) |
|
|
0 |
0 |
DUPLICATING_TYPE(X509, X509, X509) |
|
121
|
0 |
0 |
COUNTING_TYPE(X509_STORE, X509__Store, X509::Store) |
|
|
0 |
0 |
COUNTING_TYPE(X509_STORE, X509__Store, X509::Store) |
|
122
|
0 |
0 |
DUPLICATING_TYPE(X509_NAME, X509__Name, X509::Name) |
|
|
0 |
0 |
DUPLICATING_TYPE(X509_NAME, X509__Name, X509::Name) |
|
123
|
0 |
0 |
DUPLICATING_TYPE(X509_NAME_ENTRY, X509__Name__Entry, X509::Name::Entry) |
|
|
0 |
0 |
DUPLICATING_TYPE(X509_NAME_ENTRY, X509__Name__Entry, X509::Name::Entry) |
|
124
|
0 |
0 |
DUPLICATING_TYPE(X509_ALGOR, X509__Algorithm, X509::Algoritm) |
|
|
0 |
0 |
DUPLICATING_TYPE(X509_ALGOR, X509__Algorithm, X509::Algoritm) |
|
125
|
0 |
0 |
DUPLICATING_TYPE(X509_EXTENSION, X509__Extension, X509::Extension) |
|
|
0 |
0 |
DUPLICATING_TYPE(X509_EXTENSION, X509__Extension, X509::Extension) |
|
126
|
0 |
0 |
SIMPLE_TYPE(X509_VERIFY_PARAM, X509__VerifyParam, X509::VerifyParam, ) |
|
|
0 |
0 |
SIMPLE_TYPE(X509_VERIFY_PARAM, X509__VerifyParam, X509::VerifyParam, ) |
|
127
|
0 |
0 |
DUPLICATING_TYPE(GENERAL_NAME, X509__GeneralName, X509::GeneralName) |
|
|
0 |
0 |
DUPLICATING_TYPE(GENERAL_NAME, X509__GeneralName, X509::GeneralName) |
|
130
|
0 |
0 |
COUNTING_TYPE(BIO, BIO, BIO) |
|
|
0 |
0 |
COUNTING_TYPE(BIO, BIO, BIO) |
|
136
|
0 |
0 |
SIMPLE_TYPE(SSL_METHOD, SSL__Method, SSL::Method, const) |
|
|
0 |
0 |
SIMPLE_TYPE(SSL_METHOD, SSL__Method, SSL::Method, const) |
|
137
|
0 |
0 |
COUNTING_TYPE(SSL_CTX, SSL__Context, SSL::Context) |
|
|
0 |
0 |
COUNTING_TYPE(SSL_CTX, SSL__Context, SSL::Context) |
|
138
|
0 |
0 |
COUNTING_TYPE(SSL, SSL, SSL) |
|
|
0 |
0 |
COUNTING_TYPE(SSL, SSL, SSL) |
|
139
|
0 |
0 |
DUPLICATING_TYPE(SSL_SESSION, SSL__Session, SSL::Session) |
|
|
0 |
0 |
DUPLICATING_TYPE(SSL_SESSION, SSL__Session, SSL::Session) |
|
140
|
0 |
0 |
SIMPLE_TYPE(SSL_CIPHER, SSL__Cipher, SSL::Context, const) |
|
|
0 |
0 |
SIMPLE_TYPE(SSL_CIPHER, SSL__Cipher, SSL::Context, const) |
|
320
|
0 |
0 |
if (algo) |
|
326
|
0 |
0 |
if (algo) |
|
338
|
12 |
0 |
char* ptr = SvGROW(*retval, size); |
|
|
7 |
5 |
char* ptr = SvGROW(*retval, size); |
|
344
|
1 |
0 |
SvUPGRADE(buffer, SVt_PV); |
|
345
|
0 |
1 |
SV_CHECK_THINKFIRST(buffer); |
|
346
|
1 |
0 |
return SvGROW(buffer, size); |
|
|
1 |
0 |
return SvGROW(buffer, size); |
|
357
|
7 |
0 |
if (!SvROK(input) || SvTYPE(SvRV(input)) != SVt_PVHV) |
|
|
0 |
7 |
if (!SvROK(input) || SvTYPE(SvRV(input)) != SVt_PVHV) |
|
368
|
12 |
7 |
while (sv = hv_iternextsv(hash, &name, &name_len)) { |
|
371
|
11 |
1 |
if (found) { |
|
373
|
0 |
11 |
if (found->data_type == OSSL_PARAM_INTEGER) { |
|
374
|
0 |
0 |
if (big = get_BN(aTHX_ sv)) |
|
378
|
6 |
5 |
} else if (found->data_type == OSSL_PARAM_UNSIGNED_INTEGER) { |
|
379
|
0 |
6 |
if (big = get_BN(aTHX_ sv)) |
|
383
|
0 |
5 |
} else if (found->data_type == OSSL_PARAM_REAL) { |
|
385
|
4 |
1 |
} else if (found->data_type == OSSL_PARAM_UTF8_STRING) { |
|
389
|
1 |
0 |
} else if (found->data_type == OSSL_PARAM_OCTET_STRING) { |
|
405
|
0 |
1 |
if (iter->data_type == OSSL_PARAM_INTEGER) { |
|
406
|
0 |
0 |
if (iter->data_size == 0) |
|
408
|
0 |
0 |
else if (iter->data_size <= IVSIZE) { |
|
418
|
1 |
0 |
else if (iter->data_type == OSSL_PARAM_UNSIGNED_INTEGER) { |
|
419
|
0 |
1 |
if (iter->data_size == 0) |
|
421
|
1 |
0 |
else if (iter->data_size <= UVSIZE) { |
|
431
|
0 |
0 |
else if (iter->data_type == OSSL_PARAM_REAL) { |
|
436
|
0 |
0 |
else if (iter->data_type == OSSL_PARAM_UTF8_STRING) { |
|
439
|
0 |
0 |
else if (iter->data_type == OSSL_PARAM_OCTET_STRING) { |
|
474
|
0 |
0 |
mXPUSHp(name, strlen(name)); |
|
487
|
0 |
0 |
DEFINE_PROVIDED_CALLBACK(EVP_RAND) |
|
488
|
0 |
124 |
DEFINE_PROVIDED_CALLBACK(EVP_CIPHER) |
|
489
|
0 |
22 |
DEFINE_PROVIDED_CALLBACK(EVP_MD) |
|
490
|
0 |
9 |
DEFINE_PROVIDED_CALLBACK(EVP_MAC) |
|
491
|
0 |
12 |
DEFINE_PROVIDED_CALLBACK(EVP_KDF) |
|
492
|
0 |
0 |
DEFINE_PROVIDED_CALLBACK(EVP_SIGNATURE) |
|
674
|
0 |
1 |
if (!RETVAL) |
|
708
|
0 |
0 |
if (RETVAL >= 0) |
|
851
|
0 |
0 |
if (RETVAL >= 0) |
|
863
|
0 |
0 |
if (RETVAL >= 0) |
|
875
|
0 |
0 |
if (RETVAL >= 0) |
|
1001
|
0 |
0 |
if (RETVAL == NID_undef) |
|
1019
|
0 |
0 |
if (buf_len > 0) { |
|
1021
|
0 |
0 |
if (OBJ_obj2txt(ptr, buf_len, a, no_name) > 0) |
|
1034
|
0 |
0 |
if (!RETVAL) |
|
1042
|
0 |
0 |
if (!RETVAL) |
|
1059
|
0 |
0 |
if (!RETVAL) |
|
1107
|
0 |
0 |
if (result > 0) { |
|
1146
|
0 |
0 |
if (!RETVAL) |
|
1153
|
0 |
0 |
if (RETVAL == -2) |
|
1159
|
0 |
0 |
if (ASN1_TIME_to_tm(s, &tm)) { |
|
1160
|
0 |
0 |
EXTEND(SP, 9); |
|
1175
|
0 |
0 |
if (!RETVAL) |
|
1238
|
0 |
0 |
if (!RETVAL) |
|
1317
|
0 |
0 |
if (RETVAL) |
|
1472
|
0 |
0 |
switch (gn->type) { |
|
1553
|
0 |
0 |
if (RETVAL) |
|
1562
|
0 |
0 |
if (RETVAL) |
|
1827
|
0 |
0 |
if (!RETVAL) |
|
1865
|
0 |
0 |
RETVAL = SSL_set_alpn_protos(ssl, SvPV_nolen(buffer), raw_len); |
|
1900
|
0 |
0 |
if (!RETVAL) |
|
1949
|
1 |
0 |
if (RETVAL > 0) |
|
1978
|
0 |
0 |
if (RETVAL) |
|
1989
|
0 |
0 |
if (RETVAL) |
|
2001
|
0 |
0 |
if (RETVAL) |
|
2008
|
0 |
0 |
if (RETVAL) |
|
2016
|
0 |
0 |
if (!RETVAL) |
|
2064
|
0 |
0 |
if (RETVAL) |
|
2072
|
0 |
0 |
if (RETVAL) |
|
2176
|
0 |
0 |
if (!RETVAL) |
|
2186
|
0 |
0 |
if (RETVAL) |
|
2195
|
0 |
0 |
if (RETVAL) |
|
2265
|
0 |
0 |
if (RETVAL) |
|
2296
|
0 |
0 |
if (RETVAL == NULL) |
|
2319
|
0 |
0 |
GENERATE_GET_PARAM(EVP_RAND, rand, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_RAND, rand, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_RAND, rand, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_RAND, rand, name) |
|
2366
|
0 |
0 |
if (RETVAL) |
|
2392
|
0 |
1 |
if (RETVAL == NULL) |
|
2427
|
0 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER, cipher, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER, cipher, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER, cipher, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER, cipher, name) |
|
2444
|
2 |
0 |
if (XSauto_length_of_key != EVP_CIPHER_get_key_length(type) || XSauto_length_of_iv != EVP_CIPHER_get_iv_length(type)) |
|
|
0 |
2 |
if (XSauto_length_of_key != EVP_CIPHER_get_key_length(type) || XSauto_length_of_iv != EVP_CIPHER_get_iv_length(type)) |
|
2454
|
2 |
0 |
if (RETVAL) |
|
2463
|
2 |
0 |
if (RETVAL) |
|
2470
|
1 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER_CTX, ctx, name) |
|
|
1 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER_CTX, ctx, name) |
|
|
1 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER_CTX, ctx, name) |
|
|
1 |
0 |
GENERATE_GET_PARAM(EVP_CIPHER_CTX, ctx, name) |
|
2498
|
0 |
0 |
if (RETVAL > 0) |
|
2515
|
1 |
0 |
if (RETVAL) |
|
2526
|
0 |
1 |
if (RETVAL == NULL) |
|
2563
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD, md, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD, md, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD, md, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD, md, name) |
|
2572
|
0 |
0 |
if (RETVAL) |
|
2597
|
1 |
0 |
if (RETVAL) |
|
2605
|
0 |
0 |
if (RETVAL) |
|
2629
|
1 |
0 |
if (EVP_DigestSignFinal(ctx, NULL, &size) == 1) { |
|
2631
|
1 |
0 |
if (EVP_DigestSignFinal(ctx, ptr, &size) == 1) |
|
2640
|
0 |
0 |
if (EVP_DigestSign(ctx, NULL, &size, tbs, XSauto_length_of_tbs) == 1) { |
|
2642
|
0 |
0 |
if (EVP_DigestSign(ctx, ptr, &size, tbs, XSauto_length_of_tbs) == 1) |
|
2661
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MD_CTX, ctx, name) |
|
2690
|
0 |
1 |
if (RETVAL == NULL) |
|
2713
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC, mac, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC, mac, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC, mac, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC, mac, name) |
|
2737
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_MAC_CTX, ctx, name) |
|
2754
|
1 |
0 |
if (result) |
|
2762
|
0 |
0 |
if (RETVAL) |
|
2772
|
0 |
1 |
if (RETVAL == NULL) |
|
2795
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF, kdf, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF, kdf, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF, kdf, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF, kdf, name) |
|
2814
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_KDF_CTX, ctx, name) |
|
2829
|
1 |
0 |
if (RETVAL) |
|
2839
|
0 |
0 |
if (RETVAL == NULL) |
|
2869
|
0 |
0 |
if (RETVAL == NULL) |
|
2875
|
0 |
0 |
if (RETVAL == NULL) |
|
2888
|
0 |
0 |
if (!result) |
|
2892
|
0 |
0 |
if (result) |
|
2900
|
0 |
0 |
if (!result) |
|
2904
|
0 |
0 |
if (result) |
|
2910
|
0 |
0 |
if (!RETVAL) |
|
2915
|
0 |
0 |
const EVP_CIPHER* cipher = SvOK(cipher_sv) ? get_EVP_CIPHER(aTHX_ cipher_sv) : NULL; |
|
2918
|
0 |
0 |
if (SvOK(key)) |
|
2925
|
0 |
0 |
if (!RETVAL) |
|
2969
|
0 |
0 |
if (RETVAL > 0) |
|
2974
|
0 |
0 |
if (RETVAL <= 0) |
|
2986
|
0 |
0 |
if (RETVAL) |
|
2996
|
0 |
0 |
result = RETVAL > 0 ? newSVpvn((char*)ptr, RETVAL) : &PL_sv_undef; |
|
3001
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY, pkey, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY, pkey, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY, pkey, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY, pkey, name) |
|
3056
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY_CTX, ctx, name) |
|
|
0 |
0 |
GENERATE_GET_PARAM(EVP_PKEY_CTX, ctx, name) |
|
3077
|
0 |
2 |
if (RETVAL <= 0) |
|
3086
|
0 |
1 |
if (EVP_PKEY_encapsulate(ctx, NULL, &wrapped_length, NULL, &gen_length) != 1) |
|
3092
|
1 |
0 |
if (EVP_PKEY_encapsulate(ctx, wrapped_ptr, &wrapped_length, gen_ptr, &gen_length)) { |
|
3105
|
1 |
0 |
if (result == 1) { |
|
3108
|
1 |
0 |
if (EVP_PKEY_decapsulate(ctx, unwrapped_ptr, &unwrapped_length, wrapped, XSauto_length_of_wrapped) == 1) |
|
3129
|
0 |
0 |
if (result == 1) { |
|
3133
|
0 |
0 |
if (result == 1) |
|
3145
|
0 |
0 |
if (EVP_PKEY_decrypt(ctx, NULL, &out_length, in, XSauto_length_of_in) == 1) { |
|
3148
|
0 |
0 |
if (EVP_PKEY_decrypt(ctx, out_ptr, &out_length, in, XSauto_length_of_in) == 1) |
|
3162
|
0 |
0 |
if (EVP_PKEY_derive(ctx, NULL, &key_length) == 1) { |
|
3165
|
0 |
0 |
if (EVP_PKEY_derive(ctx, key_ptr, &key_length) == 1) |
|
3176
|
0 |
0 |
if (EVP_PKEY_sign(ctx, NULL, &sig_length, tbs, XSauto_length_of_tbs) == 1) { |
|
3179
|
0 |
0 |
if (EVP_PKEY_sign(ctx, sig_ptr, &sig_length, tbs, XSauto_length_of_tbs) == 1) |