OpenCoverage

LibreSSL Portable Test Coverage

Function Tree

Page:<>1
McCabe - Cyclomatic Complexity: 1
...20
McCabe - Cyclomatic Complexity: 1
...30
McCabe - Cyclomatic Complexity: 2
...40
McCabe - Cyclomatic Complexity: 3
...50
McCabe - Cyclomatic Complexity: 7
...53
McCabe - Cyclomatic Complexity: 9
54
McCabe - Cyclomatic Complexity: 10
55
McCabe - Cyclomatic Complexity: 11
56
McCabe - Cyclomatic Complexity: 13
5758
McCabe - Cyclomatic Complexity: 19
59
McCabe - Cyclomatic Complexity: 25
60
McCabe - Cyclomatic Complexity: 41
FunctionCondition %eLOC - Effective Lines of CodeMcCabe - Cyclomatic Complexityâ–´
EC_KEY_set_public_key_affine_coordinates
Name: EC_KEY_set_public_key_affine_coordinates
Prototype: int EC_KEY_set_public_key_affine_coordinates(EC_KEY * key, BIGNUM * x, BIGNUM * y)
Coverage:  0.000% (0/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_key.c
Lines: 333-403
  0.000% (0/53)
5616
ENGINE_ctrl
Name: ENGINE_ctrl
Prototype: int ENGINE_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f)(void))
Coverage:  0.000% (0/35)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/engine/eng_ctrl.c
Lines: 192-240
  0.000% (0/35)
2916
EVP_DigestInit_ex
Name: EVP_DigestInit_ex
Prototype: int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl)
Coverage:  46.032% (29/63)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/digest.c
Lines: 132-211
 46.032% (29/63)
6616
OBJ_add_object
Name: OBJ_add_object
Prototype: int OBJ_add_object(const ASN1_OBJECT *obj)
Coverage:  42.500% (17/40)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/objects/obj_dat.c
Lines: 292-338
 42.500% (17/40)
6416
PKCS5_pbe2_set_iv
Name: PKCS5_pbe2_set_iv
Prototype: X509_ALGOR * PKCS5_pbe2_set_iv(const EVP_CIPHER *cipher, int iter, unsigned char *salt, int saltlen, unsigned char *aiv, int prf_nid)
Coverage:  0.000% (0/45)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/p5_pbev2.c
Lines: 183-285
  0.000% (0/45)
8816
RSA_padding_check_PKCS1_OAEP
Name: RSA_padding_check_PKCS1_OAEP
Prototype: int RSA_padding_check_PKCS1_OAEP(unsigned char *to, int tlen, const unsigned char *from, int flen, int num, const unsigned char *param, int plen)
Coverage:  63.043% (29/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rsa/rsa_oaep.c
Lines: 94-188
 63.043% (29/46)
6316
SSL_new
Name: SSL_new
Prototype: SSL * SSL_new(SSL_CTX *ctx)
Coverage:  44.681% (21/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_lib.c
Lines: 233-372
 44.681% (21/47)
16216
TS_CONF_add_flag
Name: TS_CONF_add_flag
Prototype: static int TS_CONF_add_flag(CONF *conf, const char *section, const char *field, int flag, TS_RESP_CTX *ctx)
Coverage:  0.000% (0/70)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ts/ts_conf.c
Lines: 494-511
  0.000% (0/70)
33216
UI_process
Name: UI_process
Prototype: int UI_process(UI *ui)
Coverage:  0.000% (0/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ui/ui_lib.c
Lines: 450-507
  0.000% (0/42)
3416
X509V3_parse_list
Name: X509V3_parse_list
Prototype: struct stack_st_CONF_VALUE * X509V3_parse_list(const char *line)
Coverage:  0.000% (0/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_utl.c
Lines: 291-375
  0.000% (0/53)
11416
aes_ccm_cipher
Name: aes_ccm_cipher
Prototype: static int aes_ccm_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, const unsigned char *in, size_t len)
Coverage:  0.000% (0/56)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/e_aes.c
Lines: 1294-1354
  0.000% (0/56)
4216
aes_ccm_ctrl
Name: aes_ccm_ctrl
Prototype: static int aes_ccm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr)
Coverage:  0.000% (0/52)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/e_aes.c
Lines: 1198-1260
  0.000% (0/52)
3916
buffer_read
Name: buffer_read
Prototype: static int buffer_read(BIO *b, char *out, int outl)
Coverage:  0.000% (0/48)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bio/bf_buff.c
Lines: 144-213
  0.000% (0/48)
5516
d2i_ASN1_SET
Name: d2i_ASN1_SET
Prototype: struct stack_st_OPENSSL_BLOCK * d2i_ASN1_SET(struct stack_st_OPENSSL_BLOCK **a, const unsigned char **pp, long length, d2i_of_void *d2i, void (*free_func)(OPENSSL_BLOCK), int ex_tag, int ex_class)
Coverage:  0.000% (0/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_set.c
Lines: 168-234
  0.000% (0/53)
7316
do_sigver_init
Name: do_sigver_init
Prototype: static int do_sigver_init(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx, const EVP_MD *type, ENGINE *e, EVP_PKEY *pkey, int ver)
Coverage:  48.936% (23/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/m_sigver.c
Lines: 68-111
 48.936% (23/47)
4016
dtls1_get_message_fragment
Name: dtls1_get_message_fragment
Prototype: static long dtls1_get_message_fragment(SSL *s, int st1, int stn, long max, int *ok)
Coverage:  49.180% (30/61)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/d1_both.c
Lines: 765-889
 49.180% (30/61)
6416
ec_GF2m_simple_is_on_curve
Name: ec_GF2m_simple_is_on_curve
Prototype: int ec_GF2m_simple_is_on_curve(const EC_GROUP *group, const EC_POINT *point, BN_CTX *ctx)
Coverage:  36.364% (16/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec2_smpl.c
Lines: 590-645
 36.364% (16/44)
5116
ec_GFp_simple_group_get_curve
Name: ec_GFp_simple_group_get_curve
Prototype: int ec_GFp_simple_group_get_curve(const EC_GROUP * group, BIGNUM * p, BIGNUM * a, BIGNUM * b, BN_CTX * ctx)
Coverage:  32.609% (15/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ecp_smpl.c
Lines: 233-274
 32.609% (15/46)
5016
fd_ctrl
Name: fd_ctrl
Prototype: static long fd_ctrl(BIO *b, int cmd, long num, void *ptr)
Coverage:  0.000% (0/31)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bio/bss_fd.c
Lines: 162-212
  0.000% (0/31)
3316
i2c_ASN1_BIT_STRING
Name: i2c_ASN1_BIT_STRING
Prototype: int i2c_ASN1_BIT_STRING(ASN1_BIT_STRING *a, unsigned char **pp)
Coverage:  21.277% (10/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_bitstr.c
Lines: 71-127
 21.277% (10/47)
4616
idp_check_dp
Name: idp_check_dp
Prototype: static int idp_check_dp(DIST_POINT_NAME *a, DIST_POINT_NAME *b)
Coverage:  0.000% (0/48)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509_vfy.c
Lines: 1369-1426
  0.000% (0/48)
4516
int_rsa_verify
Name: int_rsa_verify
Prototype: int int_rsa_verify(int type, const unsigned char *m, unsigned int m_len, unsigned char *rm, size_t *prm_len, const unsigned char *sigbuf, size_t siglen, RSA *rsa)
Coverage:  38.298% (18/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rsa/rsa_sign.c
Lines: 176-265
 38.298% (18/47)
6116
mime_hdr_new
Name: mime_hdr_new
Prototype: static MIME_HEADER * mime_hdr_new(char *name, char *value)
Coverage:  0.000% (0/66)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/asn_mime.c
Lines: 841-873
  0.000% (0/66)
14816
nc_email
Name: nc_email
Prototype: static int nc_email(ASN1_IA5STRING *eml, ASN1_IA5STRING *base)
Coverage:  0.000% (0/82)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_ncons.c
Lines: 470-509
  0.000% (0/82)
28716
s2i_skey_id
Name: s2i_skey_id
Prototype: static ASN1_OCTET_STRING * s2i_skey_id(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *str)
Coverage:  0.000% (0/63)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_skey.c
Lines: 113-161
  0.000% (0/63)
20116
ssl3_send_server_kex_ecdhe_ecp
Name: ssl3_send_server_kex_ecdhe_ecp
Prototype: static int ssl3_send_server_kex_ecdhe_ecp(SSL *s, int nid, CBB *cbb)
Coverage:  34.783% (16/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_srvr.c
Lines: 1349-1441
 34.783% (16/46)
8316
ssl_ctrl_get_server_tmp_key
Name: ssl_ctrl_get_server_tmp_key
Prototype: static long ssl_ctrl_get_server_tmp_key(SSL *s, EVP_PKEY **pkey_tmp)
Coverage:  0.000% (0/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/s3_lib.c
Lines: 1581-1641
  0.000% (0/46)
9716
tls_config_parse_protocols
Name: tls_config_parse_protocols
Prototype: int tls_config_parse_protocols(uint32_t *protocols, const char *protostr)
Coverage:  76.667% (46/60)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls_config.c
Lines: 199-260
 76.667% (46/60)
14816
tls_connect_servername
Name: tls_connect_servername
Prototype: int tls_connect_servername(struct tls *ctx, const char *host, const char *port, const char *servername)
Coverage:  0.000% (0/48)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls_client.c
Lines: 58-164
  0.000% (0/48)
11116
tls_conninfo_populate
Name: tls_conninfo_populate
Prototype: int tls_conninfo_populate(struct tls *ctx)
Coverage:  25.806% (16/62)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls_conninfo.c
Lines: 230-277
 25.806% (16/62)
14316
tls_decrypt_ticket
Name: tls_decrypt_ticket
Prototype: static int tls_decrypt_ticket(SSL *s, const unsigned char *etick, int eticklen, const unsigned char *sess_id, int sesslen, SSL_SESSION **psess)
Coverage:  0.000% (0/51)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/t1_lib.c
Lines: 931-1057
  0.000% (0/51)
9916
tls_load_file
Name: tls_load_file
Prototype: uint8_t * tls_load_file(const char *name, size_t *len, char *password)
Coverage:  0.000% (0/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls_util.c
Lines: 148-218
  0.000% (0/44)
10716
tls_ssl_error
Name: tls_ssl_error
Prototype: int tls_ssl_error(struct tls *ctx, SSL *ssl_conn, int ssl_ret, const char *prefix)
Coverage:  12.903% (4/31)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls.c
Lines: 621-669
 12.903% (4/31)
3716
v3_check_generic
Name: v3_check_generic
Prototype: static int v3_check_generic(const char **value)
Coverage:  0.000% (0/95)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_conf.c
Lines: 255-274
  0.000% (0/95)
42116
BIO_debug_callback
Name: BIO_debug_callback
Prototype: long BIO_debug_callback(BIO *bio, int cmd, const char *argp, int argi, long argl, long ret)
Coverage:  0.000% (0/40)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bio/bio_cb.c
Lines: 66-145
  0.000% (0/40)
6217
BN_dec2bn
Name: BN_dec2bn
Prototype: int BN_dec2bn(BIGNUM **bn, const char *a)
Coverage:  0.000% (0/51)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_print.c
Lines: 266-330
  0.000% (0/51)
6717
PEM_ASN1_write_bio
Name: PEM_ASN1_write_bio
Prototype: int PEM_ASN1_write_bio(i2d_of_void *i2d, const char *name, BIO *bp, void *x, const EVP_CIPHER *enc, unsigned char *kstr, int klen, pem_password_cb *callback, void *u)
Coverage:  15.094% (8/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pem/pem_lib.c
Lines: 333-429
 15.094% (8/53)
9917
PKCS5_pbkdf2_set
Name: PKCS5_pbkdf2_set
Prototype: X509_ALGOR * PKCS5_pbkdf2_set(int iter, unsigned char *salt, int saltlen, int prf_nid, int keylen)
Coverage:  0.000% (0/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/p5_pbev2.c
Lines: 294-372
  0.000% (0/50)
6817
X509_STORE_CTX_init
Name: X509_STORE_CTX_init
Prototype: int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509, struct stack_st_X509 *chain)
Coverage:  51.807% (43/83)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509_vfy.c
Lines: 2195-2314
 51.807% (43/83)
6617
aes_gcm_cipher
Name: aes_gcm_cipher
Prototype: static int aes_gcm_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, const unsigned char *in, size_t len)
Coverage:  0.000% (0/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/e_aes.c
Lines: 992-1052
  0.000% (0/50)
4117
asn1_bio_ctrl
Name: asn1_bio_ctrl
Prototype: static long asn1_bio_ctrl(BIO *b, int cmd, long arg1, void *arg2)
Coverage:  0.000% (0/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/bio_asn1.c
Lines: 367-446
  0.000% (0/41)
4817
buffer_write
Name: buffer_write
Prototype: static int buffer_write(BIO *b, const char *in, int inl)
Coverage:  13.208% (7/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bio/bf_buff.c
Lines: 215-289
 13.208% (7/53)
6017
conf_value_cmp
Name: conf_value_cmp
Prototype: static int conf_value_cmp(const CONF_VALUE *a, const CONF_VALUE *b)
Coverage:  12.987% (10/77)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/conf/conf_api.c
Lines: 163-180
 12.987% (10/77)
35117
crl_cb
Name: crl_cb
Prototype: static int crl_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, void *exarg)
Coverage:  0.000% (0/52)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/x_crl.c
Lines: 266-361
  0.000% (0/52)
12217
do_PVK_body
Name: do_PVK_body
Prototype: static EVP_PKEY * do_PVK_body(const unsigned char **in, unsigned int saltlen, unsigned int keylen, pem_password_cb *cb, void *u)
Coverage:  0.000% (0/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pem/pvkfmt.c
Lines: 718-797
  0.000% (0/55)
8517
do_buf
Name: do_buf
Prototype: static int do_buf(unsigned char *buf, int buflen, int type, unsigned char flags, char *quotes, char_io *io_ch, void *arg)
Coverage:  0.000% (0/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_strex.c
Lines: 184-261
  0.000% (0/55)
5217
do_print_ex
Name: do_print_ex
Prototype: static int do_print_ex(char_io *io_ch, void *arg, unsigned long lflags, const ASN1_STRING *str)
Coverage:  0.000% (0/61)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_strex.c
Lines: 348-425
  0.000% (0/61)
5717
ec_GFp_simple_get_Jprojective_coordinates_GFp
Name: ec_GFp_simple_get_Jprojective_coordinates_GFp
Prototype: int ec_GFp_simple_get_Jprojective_coordinates_GFp(const EC_GROUP * group, const EC_POINT * point, BIGNUM * x, BIGNUM * y, BIGNUM * z, BN_CTX * ctx)
Coverage:  29.167% (14/48)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ecp_smpl.c
Lines: 468-513
 29.167% (14/48)
4817
ec_group_new_from_data
Name: ec_group_new_from_data
Prototype: static EC_GROUP * ec_group_new_from_data(const ec_list_element curve)
Coverage:  43.103% (25/58)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_curve.c
Lines: 3157-3252
 43.103% (25/58)
14517
ecdsa_do_verify
Name: ecdsa_do_verify
Prototype: static int ecdsa_do_verify(const unsigned char *dgst, int dgst_len, const ECDSA_SIG *sig, EC_KEY *eckey)
Coverage:  46.875% (30/64)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ecdsa/ecs_ossl.c
Lines: 387-489
 46.875% (30/64)
9917
euclid
Name: euclid
Prototype: static BIGNUM * euclid(BIGNUM *a, BIGNUM *b)
Coverage:  0.000% (0/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_gcd.c
Lines: 176-244
  0.000% (0/53)
4017
i2d_ECPrivateKey
Name: i2d_ECPrivateKey
Prototype: int i2d_ECPrivateKey(EC_KEY * a, unsigned char **out)
Coverage:  0.000% (0/59)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_asn1.c
Lines: 1439-1520
  0.000% (0/59)
10617
pkey_gost_mac_ctrl_str
Name: pkey_gost_mac_ctrl_str
Prototype: static int pkey_gost_mac_ctrl_str(EVP_PKEY_CTX *ctx, const char *type, const char *value)
Coverage:  0.000% (0/73)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/gost/gost89imit_pmeth.c
Lines: 182-206
  0.000% (0/73)
34617
pkey_hmac_ctrl_str
Name: pkey_hmac_ctrl_str
Prototype: static int pkey_hmac_ctrl_str(EVP_PKEY_CTX *ctx, const char *type, const char *value)
Coverage:  0.000% (0/73)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/hmac/hm_pmeth.c
Lines: 217-238
  0.000% (0/73)
34017
set_reasons
Name: set_reasons
Prototype: static int set_reasons(ASN1_BIT_STRING **preas, char *value)
Coverage:  0.000% (0/59)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_crld.c
Lines: 207-243
  0.000% (0/59)
19617
ssl_read
Name: ssl_read
Prototype: static int ssl_read(BIO *b, char *out, int outl)
Coverage:  28.947% (11/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/bio_ssl.c
Lines: 142-212
 28.947% (11/38)
5117
string_to_hex
Name: string_to_hex
Prototype: unsigned char * string_to_hex(const char *str, long *len)
Coverage:  0.000% (0/65)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_utl.c
Lines: 432-487
  0.000% (0/65)
10217
tls1_process_sigalgs
Name: tls1_process_sigalgs
Prototype: int tls1_process_sigalgs(SSL *s, CBS *cbs)
Coverage:  62.791% (27/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/t1_lib.c
Lines: 1162-1230
 62.791% (27/43)
5717
tlsext_ocsp_clienthello_parse
Name: tlsext_ocsp_clienthello_parse
Prototype: int tlsext_ocsp_clienthello_parse(SSL *s, CBS *cbs, int *alert)
Coverage:  23.404% (11/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_tlsext.c
Lines: 766-838
 23.404% (11/47)
6717
x509_name_canon
Name: x509_name_canon
Prototype: static int x509_name_canon(X509_NAME *a)
Coverage:  44.898% (22/49)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/x_name.c
Lines: 454-521
 44.898% (22/49)
8717
BN_GF2m_mod_arr
Name: BN_GF2m_mod_arr
Prototype: int BN_GF2m_mod_arr(BIGNUM *r, const BIGNUM *a, const int p[])
Coverage:  83.929% (47/56)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_gf2m.c
Lines: 364-455
 83.929% (47/56)
5418
CRYPTO_cfb128_encrypt
Name: CRYPTO_cfb128_encrypt
Prototype: void CRYPTO_cfb128_encrypt(const unsigned char *in, unsigned char *out, size_t len, const void *key, unsigned char ivec[16], int *num, int enc, block128_f block)
Coverage:  55.172% (32/58)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/modes/cfb128.c
Lines: 66-169
 55.172% (32/58)
6418
CRYPTO_gcm128_decrypt
Name: CRYPTO_gcm128_decrypt
Prototype: int CRYPTO_gcm128_decrypt(GCM128_CONTEXT *ctx, const unsigned char *in, unsigned char *out, size_t len)
Coverage:  40.678% (24/59)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/modes/gcm128.c
Lines: 1069-1256
 40.678% (24/59)
8118
CRYPTO_gcm128_encrypt
Name: CRYPTO_gcm128_encrypt
Prototype: int CRYPTO_gcm128_encrypt(GCM128_CONTEXT *ctx, const unsigned char *in, unsigned char *out, size_t len)
Coverage:  40.678% (24/59)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/modes/gcm128.c
Lines: 887-1067
 40.678% (24/59)
7518
Gost2814789_cfb64_encrypt
Name: Gost2814789_cfb64_encrypt
Prototype: void Gost2814789_cfb64_encrypt(const unsigned char *in, unsigned char *out, size_t len, GOST2814789_KEY *key, unsigned char *ivec, int *num, const int enc)
Coverage:  27.586% (16/58)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/gost/gost2814789.c
Lines: 207-319
 27.586% (16/58)
6818
OCSP_basic_add1_status
Name: OCSP_basic_add1_status
Prototype: OCSP_SINGLERESP * OCSP_basic_add1_status(OCSP_BASICRESP *rsp, OCSP_CERTID *cid, int status, int reason, ASN1_TIME *revtime, ASN1_TIME *thisupd, ASN1_TIME *nextupd)
Coverage:  0.000% (0/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ocsp/ocsp_srv.c
Lines: 141-205
  0.000% (0/50)
5018
PKCS7_signatureVerify
Name: PKCS7_signatureVerify
Prototype: int PKCS7_signatureVerify(BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si, X509 *x509)
Coverage:  38.596% (22/57)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pkcs7/pk7_doit.c
Lines: 976-1080
 38.596% (22/57)
9418
TS_RESP_sign
Name: TS_RESP_sign
Prototype: static int TS_RESP_sign(TS_RESP_CTX *ctx)
Coverage:  0.000% (0/52)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ts/ts_rsp_sign.c
Lines: 704-810
  0.000% (0/52)
9018
UTF8_getc
Name: UTF8_getc
Prototype: int UTF8_getc(const unsigned char *str, int len, unsigned long *val)
Coverage:  96.825% (61/63)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_utf8.c
Lines: 78-139
 96.825% (61/63)
5418
WHIRLPOOL_BitUpdate
Name: WHIRLPOOL_BitUpdate
Prototype: void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c,const void *_inp,size_t bits)
Coverage:  0.000% (0/60)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/whrlpool/wp_dgst.c
Lines: 86-215
  0.000% (0/60)
6818
asn1_check_tlen
Name: asn1_check_tlen
Prototype: static int asn1_check_tlen(long *olen, int *otag, unsigned char *oclass, char *inf, char *cst, const unsigned char **in, long len, int exptag, int expclass, char opt, ASN1_TLC *ctx)
Coverage:  71.186% (42/59)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/tasn_dec.c
Lines: 1092-1167
 71.186% (42/59)
5018
cbs_get_any_asn1_element_internal
Name: cbs_get_any_asn1_element_internal
Prototype: int cbs_get_any_asn1_element_internal(CBS *cbs, CBS *out, unsigned int *out_tag, size_t *out_header_len, int strict)
Coverage:  61.818% (34/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/bs_cbs.c
Lines: 250-334
 61.818% (34/55)
5318
check_crl_time
Name: check_crl_time
Prototype: static int check_crl_time(X509_STORE_CTX *ctx, X509_CRL *crl, int notify)
Coverage:  0.000% (0/54)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509_vfy.c
Lines: 977-1034
  0.000% (0/54)
4718
compute_wNAF
Name: compute_wNAF
Prototype: static signed char * compute_wNAF(const BIGNUM * scalar, int w, size_t * ret_len)
Coverage:  56.923% (37/65)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_mult.c
Lines: 194-312
 56.923% (37/65)
7818
do_esc_char
Name: do_esc_char
Prototype: static int do_esc_char(unsigned long c, unsigned char flags, char *do_quotes, char_io *io_ch, void *arg)
Coverage:  0.000% (0/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_strex.c
Lines: 116-174
  0.000% (0/55)
4218
do_rsa_print
Name: do_rsa_print
Prototype: static int do_rsa_print(BIO *bp, const RSA *x, int off, int priv)
Coverage:  24.528% (13/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rsa/rsa_ameth.c
Lines: 196-262
 24.528% (13/53)
5918
do_x509_check
Name: do_x509_check
Prototype: static int do_x509_check(X509 *x, const char *chk, size_t chklen, unsigned int flags, int check_type, char **peername)
Coverage:  0.000% (0/60)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_utl.c
Lines: 929-1011
  0.000% (0/60)
8518
ec_GFp_simple_set_Jprojective_coordinates_GFp
Name: ec_GFp_simple_set_Jprojective_coordinates_GFp
Prototype: int ec_GFp_simple_set_Jprojective_coordinates_GFp(const EC_GROUP * group, EC_POINT * point, const BIGNUM * x, const BIGNUM * y, const BIGNUM * z, BN_CTX * ctx)
Coverage:  41.935% (26/62)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ecp_smpl.c
Lines: 415-465
 41.935% (26/62)
4718
r2i_certpol
Name: r2i_certpol
Prototype: static struct stack_st_POLICYINFO *r2i_certpol(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *value)
Coverage:  0.000% (0/65)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_cpols.c
Lines: 401-469
  0.000% (0/65)
23018
rsa_item_verify
Name: rsa_item_verify
Prototype: static int rsa_item_verify(EVP_MD_CTX *ctx, const ASN1_ITEM *it, void *asn, X509_ALGOR *sigalg, ASN1_BIT_STRING *sig, EVP_PKEY *pkey)
Coverage:  0.000% (0/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rsa/rsa_ameth.c
Lines: 440-533
  0.000% (0/55)
7918
ssl3_send_server_kex_dhe
Name: ssl3_send_server_kex_dhe
Prototype: static int ssl3_send_server_kex_dhe(SSL *s, CBB *cbb)
Coverage:  41.176% (21/51)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_srvr.c
Lines: 1273-1347
 41.176% (21/51)
6718
tls_configure_ssl_verify
Name: tls_configure_ssl_verify
Prototype: int tls_configure_ssl_verify(struct tls *ctx, SSL_CTX *ssl_ctx, int verify)
Coverage:  24.000% (12/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls.c
Lines: 478-563
 24.000% (12/50)
10818
tlsext_srtp_clienthello_parse
Name: tlsext_srtp_clienthello_parse
Prototype: int tlsext_srtp_clienthello_parse(SSL *s, CBS *cbs, int *alert)
Coverage:  55.769% (29/52)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_tlsext.c
Lines: 1038-1116
 55.769% (29/52)
5718
BN_BLINDING_create_param
Name: BN_BLINDING_create_param
Prototype: BN_BLINDING * BN_BLINDING_create_param(BN_BLINDING *b, const BIGNUM *e, BIGNUM *m, BN_CTX *ctx, int (*bn_mod_exp)(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *m_ctx), BN_MONT_CTX *m_ctx)
Coverage:  52.459% (32/61)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_blind.c
Lines: 318-387
 52.459% (32/61)
9619
BN_div_recp
Name: BN_div_recp
Prototype: int BN_div_recp(BIGNUM *dv, BIGNUM *rem, const BIGNUM *m, BN_RECP_CTX *recp, BN_CTX *ctx)
Coverage:  57.143% (36/63)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_recp.c
Lines: 141-234
 57.143% (36/63)
7219
RSA_padding_add_PKCS1_PSS_mgf1
Name: RSA_padding_add_PKCS1_PSS_mgf1
Prototype: int RSA_padding_add_PKCS1_PSS_mgf1(RSA *rsa, unsigned char *EM, const unsigned char *mHash, const EVP_MD *Hash, const EVP_MD *mgf1Hash, int sLen)
Coverage:  0.000% (0/59)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rsa/rsa_pss.c
Lines: 186-281
  0.000% (0/59)
7319
SSL_ctrl
Name: SSL_ctrl
Prototype: long SSL_ctrl(SSL *s, int cmd, long larg, void *parg)
Coverage:  16.279% (7/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_lib.c
Lines: 1052-1107
 16.279% (7/43)
3219
SSL_get_error
Name: SSL_get_error
Prototype: int SSL_get_error(const SSL *s, int i)
Coverage:  20.635% (13/63)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_lib.c
Lines: 2323-2399
 20.635% (13/63)
4219
X509_certificate_type
Name: X509_certificate_type
Prototype: int X509_certificate_type(const X509 *x, const EVP_PKEY *pkey)
Coverage:  25.000% (10/40)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509type.c
Lines: 65-123
 25.000% (10/40)
4219
X509_policy_check
Name: X509_policy_check
Prototype: int X509_policy_check(X509_POLICY_TREE **ptree, int *pexplicit_policy, struct stack_st_X509 *certs, struct stack_st_ASN1_OBJECT *policy_oids, unsigned int flags)
Coverage:  0.000% (0/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/pcy_tree.c
Lines: 668-770
  0.000% (0/47)
5619
d2i_ECPrivateKey
Name: d2i_ECPrivateKey
Prototype: EC_KEY * d2i_ECPrivateKey(EC_KEY ** a, const unsigned char **in, long len)
Coverage:  0.000% (0/62)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_asn1.c
Lines: 1342-1437
  0.000% (0/62)
12819
dsa_sign_setup
Name: dsa_sign_setup
Prototype: static int dsa_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp)
Coverage:  40.299% (27/67)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/dsa/dsa_ossl.c
Lines: 213-316
 40.299% (27/67)
9019
ec_GF2m_simple_mul
Name: ec_GF2m_simple_mul
Prototype: int ec_GF2m_simple_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *ctx)
Coverage:  0.000% (0/59)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec2_mult.c
Lines: 374-437
  0.000% (0/59)
6219
ec_asn1_group2curve
Name: ec_asn1_group2curve
Prototype: static int ec_asn1_group2curve(const EC_GROUP * group, X9_62_CURVE * curve)
Coverage:  0.000% (0/66)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_asn1.c
Lines: 801-905
  0.000% (0/66)
12119
ec_asn1_group2parameters
Name: ec_asn1_group2parameters
Prototype: static ECPARAMETERS * ec_asn1_group2parameters(const EC_GROUP * group, ECPARAMETERS * param)
Coverage:  0.000% (0/58)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_asn1.c
Lines: 907-1000
  0.000% (0/58)
12219
generate_key
Name: generate_key
Prototype: static int generate_key(DH *dh)
Coverage:  39.437% (28/71)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/dh/dh_key.c
Lines: 101-181
 39.437% (28/71)
8719
get_error_values
Name: get_error_values
Prototype: static unsigned long get_error_values(int inc, int top, const char **file, int *line, const char **data, int *flags)
Coverage:  25.397% (16/63)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/err/err.c
Lines: 820-884
 25.397% (16/63)
7219
i2d_RSA_NET
Name: i2d_RSA_NET
Prototype: int i2d_RSA_NET(const RSA *a, unsigned char **pp, int (*cb)(char *buf, int len, const char *prompt, int verify), int sgckey)
Coverage:  0.000% (0/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/n_pkey.c
Lines: 213-321
  0.000% (0/53)
13619
level_add_node
Name: level_add_node
Prototype: int level_add_node(X509_POLICY_LEVEL *level, const X509_POLICY_DATA *data, X509_POLICY_NODE *parent, X509_POLICY_TREE *tree, X509_POLICY_NODE **nodep)
Coverage:  0.000% (0/51)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/pcy_node.c
Lines: 111-166
  0.000% (0/51)
5119
newpass_p12
Name: newpass_p12
Prototype: static int newpass_p12(PKCS12 *p12, const char *oldpass, const char *newpass)
Coverage:  0.000% (0/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pkcs12/p12_npas.c
Lines: 106-189
  0.000% (0/53)
8219
Page:<>1
McCabe - Cyclomatic Complexity: 1
...20
McCabe - Cyclomatic Complexity: 1
...30
McCabe - Cyclomatic Complexity: 2
...40
McCabe - Cyclomatic Complexity: 3
...50
McCabe - Cyclomatic Complexity: 7
...53
McCabe - Cyclomatic Complexity: 9
54
McCabe - Cyclomatic Complexity: 10
55
McCabe - Cyclomatic Complexity: 11
56
McCabe - Cyclomatic Complexity: 13
5758
McCabe - Cyclomatic Complexity: 19
59
McCabe - Cyclomatic Complexity: 25
60
McCabe - Cyclomatic Complexity: 41

Generated by Squish Coco 4.2.2