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
...52
McCabe - Cyclomatic Complexity: 8
53
McCabe - Cyclomatic Complexity: 9
54
McCabe - Cyclomatic Complexity: 10
55
McCabe - Cyclomatic Complexity: 11
5657
McCabe - Cyclomatic Complexity: 16
58
McCabe - Cyclomatic Complexity: 19
59
McCabe - Cyclomatic Complexity: 25
60
McCabe - Cyclomatic Complexity: 41
FunctionCondition %eLOC - Effective Lines of CodeMcCabe - Cyclomatic Complexityâ–´
multi_split
Name: multi_split
Prototype: static int multi_split(BIO *bio, char *bound, struct stack_st_BIO **ret)
Coverage:  0.000% (0/37)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/asn_mime.c
Lines: 604-653
  0.000% (0/37)
5513
null_ctrl
Name: null_ctrl
Prototype: static long null_ctrl(BIO *b, int cmd, long num, void *ptr)
Coverage:  33.333% (5/15)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bio/bss_null.c
Lines: 120-144
 33.333% (5/15)
713
parse_http_line1
Name: parse_http_line1
Prototype: static int parse_http_line1(char *line)
Coverage:  0.000% (0/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ocsp/ocsp_ht.c
Lines: 200-260
  0.000% (0/46)
6513
pkey_gost01_decrypt
Name: pkey_gost01_decrypt
Prototype: int pkey_gost01_decrypt(EVP_PKEY_CTX *pctx, unsigned char *key, size_t *key_len, const unsigned char *in, size_t in_len)
Coverage:  0.000% (0/36)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/gost/gostr341001_pmeth.c
Lines: 370-443
  0.000% (0/36)
7813
policy_cache_create
Name: policy_cache_create
Prototype: static int policy_cache_create(X509 *x, CERTIFICATEPOLICIES *policies, int crit)
Coverage:  0.000% (0/35)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/pcy_cache.c
Lines: 72-120
  0.000% (0/35)
5213
priv_decode_gost01
Name: priv_decode_gost01
Prototype: static int priv_decode_gost01(EVP_PKEY *pk, const PKCS8_PRIV_KEY_INFO *p8inf)
Coverage:  0.000% (0/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/gost/gostr341001_ameth.c
Lines: 396-470
  0.000% (0/38)
12013
r2i_pci
Name: r2i_pci
Prototype: static PROXY_CERT_INFO_EXTENSION * r2i_pci(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *value)
Coverage:  0.000% (0/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_pci.c
Lines: 229-310
  0.000% (0/43)
9913
read_string
Name: read_string
Prototype: static int read_string(UI *ui, UI_STRING *uis)
Coverage:  0.000% (0/45)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ui/ui_openssl.c
Lines: 188-223
  0.000% (0/45)
18713
ssl3_get_server_kex_ecdhe
Name: ssl3_get_server_kex_ecdhe
Prototype: static int ssl3_get_server_kex_ecdhe(SSL *s, EVP_PKEY **pkey, CBS *cbs)
Coverage:  40.541% (15/37)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_clnt.c
Lines: 1347-1421
 40.541% (15/37)
4413
ssl3_output_cert_chain
Name: ssl3_output_cert_chain
Prototype: int ssl3_output_cert_chain(SSL *s, CBB *cbb, X509 *x)
Coverage:  40.541% (15/37)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_both.c
Lines: 380-436
 40.541% (15/37)
3913
ssl_bytes_to_cipher_list
Name: ssl_bytes_to_cipher_list
Prototype: struct stack_st_SSL_CIPHER * ssl_bytes_to_cipher_list(SSL *s, CBS *cbs)
Coverage:  53.846% (21/39)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_lib.c
Lines: 1450-1522
 53.846% (21/39)
5813
ssl_cipher_collect_aliases
Name: ssl_cipher_collect_aliases
Prototype: static void ssl_cipher_collect_aliases(const SSL_CIPHER **ca_list, int num_of_group_aliases, unsigned long disabled_mkey, unsigned long disabled_auth, unsigned long disabled_enc, unsigned long disabled_mac, unsigned long disabled_ssl, CIPHER_ORDER *head)
Coverage:  68.750% (22/32)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_ciph.c
Lines: 820-884
 68.750% (22/32)
4413
tls1_process_ticket
Name: tls1_process_ticket
Prototype: int tls1_process_ticket(SSL *s, const unsigned char *session_id, int session_id_len, CBS *ext_block, SSL_SESSION **ret)
Coverage:  44.118% (15/34)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/t1_lib.c
Lines: 845-914
 44.118% (15/34)
4213
ASN1_bn_print
Name: ASN1_bn_print
Prototype: int ASN1_bn_print(BIO *bp, const char *number, const BIGNUM *num, unsigned char *buf, int off)
Coverage:  58.696% (27/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/t_pkey.c
Lines: 65-114
 58.696% (27/46)
3714
ASN1_item_verify
Name: ASN1_item_verify
Prototype: int ASN1_item_verify(const ASN1_ITEM *it, X509_ALGOR *a, ASN1_BIT_STRING *signature, void *asn, EVP_PKEY *pkey)
Coverage:  32.558% (14/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_verify.c
Lines: 74-167
 32.558% (14/43)
6814
ASN1_primitive_free
Name: ASN1_primitive_free
Prototype: void ASN1_primitive_free(ASN1_VALUE **pval, const ASN1_ITEM *it)
Coverage:  82.927% (34/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/tasn_fre.c
Lines: 192-246
 82.927% (34/41)
4214
BN_exp
Name: BN_exp
Prototype: int BN_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx)
Coverage:  52.083% (25/48)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_exp.c
Lines: 124-173
 52.083% (25/48)
4314
BN_from_montgomery_word
Name: BN_from_montgomery_word
Prototype: static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont)
Coverage:  76.190% (32/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_mont.c
Lines: 179-272
 76.190% (32/42)
5814
CBB_flush
Name: CBB_flush
Prototype: int CBB_flush(CBB *cbb)
Coverage:  72.340% (34/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/bs_cbb.c
Lines: 185-272
 72.340% (34/47)
7414
DSA_dup_DH
Name: DSA_dup_DH
Prototype: DH * DSA_dup_DH(const DSA *r)
Coverage:  0.000% (0/34)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/dsa/dsa_lib.c
Lines: 262-300
  0.000% (0/34)
5714
EC_GROUP_check
Name: EC_GROUP_check
Prototype: int EC_GROUP_check(const EC_GROUP * group, BN_CTX * ctx)
Coverage:  42.105% (16/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_check.c
Lines: 59-115
 42.105% (16/38)
6714
EC_KEY_check_key
Name: EC_KEY_check_key
Prototype: int EC_KEY_check_key(const EC_KEY * eckey)
Coverage:  40.476% (17/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_key.c
Lines: 266-331
 40.476% (17/42)
7114
EVP_SignFinal
Name: EVP_SignFinal
Prototype: int EVP_SignFinal(EVP_MD_CTX *ctx, unsigned char *sigret, unsigned int *siglen, EVP_PKEY *pkey)
Coverage:  44.737% (17/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/p_sign.c
Lines: 66-123
 44.737% (17/38)
5314
OBJ_create_objects
Name: OBJ_create_objects
Prototype: int OBJ_create_objects(BIO *in)
Coverage:  0.000% (0/45)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/objects/obj_dat.c
Lines: 740-787
  0.000% (0/45)
9114
PKCS7_decrypt
Name: PKCS7_decrypt
Prototype: int PKCS7_decrypt(PKCS7 *p7, EVP_PKEY *pkey, X509 *cert, BIO *data, int flags)
Coverage:  35.714% (15/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pkcs7/pk7_smime.c
Lines: 526-590
 35.714% (15/42)
5414
SMIME_write_ASN1
Name: SMIME_write_ASN1
Prototype: int SMIME_write_ASN1(BIO *bio, ASN1_VALUE *val, BIO *data, int flags, int ctype_nid, int econt_nid, struct stack_st_X509_ALGOR *mdalgs, const ASN1_ITEM *it)
Coverage:  0.000% (0/45)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/asn_mime.c
Lines: 276-367
  0.000% (0/45)
7514
SSL_CIPHER_get_cipher_nid
Name: SSL_CIPHER_get_cipher_nid
Prototype: int SSL_CIPHER_get_cipher_nid(const SSL_CIPHER *c)
Coverage:  0.000% (0/26)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_ciph.c
Lines: 1663-1694
  0.000% (0/26)
1414
SSL_CTX_new
Name: SSL_CTX_new
Prototype: SSL_CTX * SSL_CTX_new(const SSL_METHOD *meth)
Coverage:  34.211% (13/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_lib.c
Lines: 1788-1933
 34.211% (13/38)
17314
TXT_DB_write
Name: TXT_DB_write
Prototype: long TXT_DB_write(BIO *out, TXT_DB *db)
Coverage:  0.000% (0/35)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/txt_db/txt_db.c
Lines: 245-293
  0.000% (0/35)
4814
UI_dup_input_boolean
Name: UI_dup_input_boolean
Prototype: int UI_dup_input_boolean(UI *ui, const char *prompt, const char *action_desc, const char *ok_chars, const char *cancel_chars, int flags, char *result_buf)
Coverage:  0.000% (0/62)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ui/ui_lib.c
Lines: 287-334
  0.000% (0/62)
18414
UTF8_putc
Name: UTF8_putc
Prototype: int UTF8_putc(unsigned char *str, int len, unsigned long value)
Coverage: 100.000% (42/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_utf8.c
Lines: 155-199
100.000% (42/42)
4114
X509_ATTRIBUTE_set1_data
Name: X509_ATTRIBUTE_set1_data
Prototype: int X509_ATTRIBUTE_set1_data(X509_ATTRIBUTE *attr, int attrtype, const void *data, int len)
Coverage:  0.000% (0/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509_att.c
Lines: 300-353
  0.000% (0/41)
4914
X509_NAME_add_entry
Name: X509_NAME_add_entry
Prototype: int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, int set)
Coverage:  41.026% (16/39)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509name.c
Lines: 238-292
 41.026% (16/39)
4714
X509_PURPOSE_add
Name: X509_PURPOSE_add
Prototype: int X509_PURPOSE_add(int id, int trust, int flags, int (*ck)(const X509_PURPOSE *, const X509 *, int), const char *name, const char *sname, void *arg)
Coverage:  0.000% (0/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_purp.c
Lines: 205-277
  0.000% (0/55)
13014
asn1_print_fsname
Name: asn1_print_fsname
Prototype: static int asn1_print_fsname(BIO *out, int indent, const char *fname, const char *sname, const ASN1_PCTX *pctx)
Coverage:  0.000% (0/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/tasn_prn.c
Lines: 389-425
  0.000% (0/42)
3314
b64_write
Name: b64_write
Prototype: static int b64_write(BIO *b, const char *in, int inl)
Coverage:  61.224% (30/49)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/bio_b64.c
Lines: 350-462
 61.224% (30/49)
10314
bn_rand_range
Name: bn_rand_range
Prototype: static int bn_rand_range(int pseudo, BIGNUM *r, const BIGNUM *range)
Coverage:  63.043% (29/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_rand.c
Lines: 216-274
 63.043% (29/46)
2914
c2i_ASN1_INTEGER
Name: c2i_ASN1_INTEGER
Prototype: ASN1_INTEGER * c2i_ASN1_INTEGER(ASN1_INTEGER **a, const unsigned char **pp, long len)
Coverage:  36.000% (18/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_int.c
Lines: 190-273
 36.000% (18/50)
8314
d2i_PublicKey
Name: d2i_PublicKey
Prototype: EVP_PKEY * d2i_PublicKey(int type, EVP_PKEY **a, const unsigned char **pp, long length)
Coverage:  0.000% (0/39)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/d2i_pu.c
Lines: 79-136
  0.000% (0/39)
6114
dsa_priv_decode
Name: dsa_priv_decode
Prototype: static int dsa_priv_decode(EVP_PKEY *pkey, const PKCS8_PRIV_KEY_INFO *p8)
Coverage:  0.000% (0/34)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/dsa/dsa_ameth.c
Lines: 181-246
  0.000% (0/34)
7914
dtls1_process_out_of_seq_message
Name: dtls1_process_out_of_seq_message
Prototype: static int dtls1_process_out_of_seq_message(SSL *s, struct hm_header_st* msg_hdr, int *ok)
Coverage:  0.000% (0/53)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/d1_both.c
Lines: 678-762
  0.000% (0/53)
8014
ec_GF2m_simple_cmp
Name: ec_GF2m_simple_cmp
Prototype: int ec_GF2m_simple_cmp(const EC_GROUP *group, const EC_POINT *a, const EC_POINT *b, BN_CTX *ctx)
Coverage:  20.000% (10/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec2_smpl.c
Lines: 654-697
 20.000% (10/50)
4714
engine_table_select
Name: engine_table_select
Prototype: ENGINE * engine_table_select(ENGINE_TABLE **table, int nid)
Coverage:  4.651% (2/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/engine/eng_table.c
Lines: 243-334
  4.651% (2/43)
4914
get_crl_score
Name: get_crl_score
Prototype: static int get_crl_score(X509_STORE_CTX *ctx, X509 **pissuer, unsigned int *preasons, X509_CRL *crl, X509 *x)
Coverage:  0.000% (0/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509_vfy.c
Lines: 1185-1244
  0.000% (0/41)
3014
i2r_ocsp_crlid
Name: i2r_ocsp_crlid
Prototype: static int i2r_ocsp_crlid(const X509V3_EXT_METHOD *method, void *in, BIO *bp, int ind)
Coverage:  0.000% (0/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_ocsp.c
Lines: 215-247
  0.000% (0/38)
2414
i2v_GENERAL_NAME
Name: i2v_GENERAL_NAME
Prototype: struct stack_st_CONF_VALUE * i2v_GENERAL_NAME(X509V3_EXT_METHOD *method, GENERAL_NAME *gen, struct stack_st_CONF_VALUE *ret)
Coverage:  0.000% (0/32)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_alt.c
Lines: 142-208
  0.000% (0/32)
4014
internal_verify
Name: internal_verify
Prototype: static int internal_verify(X509_STORE_CTX *ctx)
Coverage:  53.659% (22/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509/x509_vfy.c
Lines: 1774-1848
 53.659% (22/41)
4114
module_init
Name: module_init
Prototype: static int module_init(CONF_MODULE *pmod, char *name, char *value, const CONF *cnf)
Coverage:  0.000% (0/56)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/conf/conf_mod.c
Lines: 338-397
  0.000% (0/56)
11614
nc_match
Name: nc_match
Prototype: static int nc_match(GENERAL_NAME *gen, NAME_CONSTRAINTS *nc)
Coverage:  0.000% (0/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_ncons.c
Lines: 352-401
  0.000% (0/44)
3114
probable_prime_dh
Name: probable_prime_dh
Prototype: static int probable_prime_dh(BIGNUM *rnd, int bits, const BIGNUM *add, const BIGNUM *rem, BN_CTX *ctx)
Coverage:  48.649% (18/37)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_prime.c
Lines: 430-478
 48.649% (18/37)
3514
read_string_inner
Name: read_string_inner
Prototype: static int read_string_inner(UI *ui, UI_STRING *uis, int echo, int strip_nl)
Coverage:  0.000% (0/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ui/ui_openssl.c
Lines: 242-291
  0.000% (0/50)
8514
ssl3_get_client_kex_gost
Name: ssl3_get_client_kex_gost
Prototype: static int ssl3_get_client_kex_gost(SSL *s, CBS *cbs)
Coverage:  0.000% (0/35)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_srvr.c
Lines: 1977-2048
  0.000% (0/35)
6314
ssl3_get_client_key_exchange
Name: ssl3_get_client_key_exchange
Prototype: int ssl3_get_client_key_exchange(SSL *s)
Coverage:  45.946% (17/37)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_srvr.c
Lines: 2050-2101
 45.946% (17/37)
3414
ssl3_send_client_certificate
Name: ssl3_send_client_certificate
Prototype: int ssl3_send_client_certificate(SSL *s)
Coverage:  25.000% (12/48)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_clnt.c
Lines: 2513-2583
 25.000% (12/48)
7414
ssl3_send_client_kex_gost
Name: ssl3_send_client_kex_gost
Prototype: static int ssl3_send_client_kex_gost(SSL *s, SESS_CERT *sess_cert, CBB *cbb)
Coverage:  0.000% (0/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_clnt.c
Lines: 2195-2303
  0.000% (0/41)
7714
ssl3_send_client_key_exchange
Name: ssl3_send_client_key_exchange
Prototype: int ssl3_send_client_key_exchange(SSL *s)
Coverage:  43.590% (17/39)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_clnt.c
Lines: 2305-2360
 43.590% (17/39)
3814
ssl3_send_server_hello
Name: ssl3_send_server_hello
Prototype: int ssl3_send_server_hello(SSL *s)
Coverage:  42.500% (17/40)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_srvr.c
Lines: 1168-1245
 42.500% (17/40)
3614
ssl_get_auto_dh
Name: ssl_get_auto_dh
Prototype: DH * ssl_get_auto_dh(SSL *s)
Coverage:  36.957% (17/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_lib.c
Lines: 2211-2257
 36.957% (17/46)
9214
tls1_change_cipher_state_cipher
Name: tls1_change_cipher_state_cipher
Prototype: static int tls1_change_cipher_state_cipher(SSL *s, char is_read, const unsigned char *mac_secret, unsigned int mac_secret_size, const unsigned char *key, unsigned int key_len, const unsigned char *iv, unsigned int iv_len)
Coverage:  42.857% (18/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/t1_enc.c
Lines: 452-532
 42.857% (18/42)
7414
tls_configure_ssl_keypair
Name: tls_configure_ssl_keypair
Prototype: int tls_configure_ssl_keypair(struct tls *ctx, SSL_CTX *ssl_ctx, struct tls_keypair *keypair, int required)
Coverage:  50.000% (22/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls.c
Lines: 327-401
 50.000% (22/44)
8814
tlsext_ocsp_clienthello_build
Name: tlsext_ocsp_clienthello_build
Prototype: int tlsext_ocsp_clienthello_build(SSL *s, CBB *cbb)
Coverage:  22.500% (9/40)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_tlsext.c
Lines: 722-764
 22.500% (9/40)
4614
tlsext_sni_clienthello_parse
Name: tlsext_sni_clienthello_parse
Prototype: int tlsext_sni_clienthello_parse(SSL *s, CBS *cbs, int *alert)
Coverage:  41.860% (18/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_tlsext.c
Lines: 607-663
 41.860% (18/43)
3914
tlsext_sni_serverhello_parse
Name: tlsext_sni_serverhello_parse
Prototype: int tlsext_sni_serverhello_parse(SSL *s, CBS *cbs, int *alert)
Coverage:  13.115% (8/61)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_tlsext.c
Lines: 677-708
 13.115% (8/61)
22314
v2i_issuer_alt
Name: v2i_issuer_alt
Prototype: static GENERAL_NAMES * v2i_issuer_alt(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, struct stack_st_CONF_VALUE *nval)
Coverage:  0.000% (0/54)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_alt.c
Lines: 273-306
  0.000% (0/54)
20514
ASN1_BIT_STRING_num_asc
Name: ASN1_BIT_STRING_num_asc
Prototype: int ASN1_BIT_STRING_num_asc(const char *name, BIT_STRING_BITNAME *tbl)
Coverage:  0.000% (0/69)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/t_bitst.c
Lines: 101-112
  0.000% (0/69)
33215
ASN1_TIME_adj_internal
Name: ASN1_TIME_adj_internal
Prototype: static ASN1_TIME * ASN1_TIME_adj_internal(ASN1_TIME *s, time_t t, int offset_day, long offset_sec, int mode)
Coverage:  57.895% (22/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_time_tm.c
Lines: 256-315
 57.895% (22/38)
7015
ASN1_item_sign_ctx
Name: ASN1_item_sign_ctx
Prototype: int ASN1_item_sign_ctx(const ASN1_ITEM *it, X509_ALGOR *algor1, X509_ALGOR *algor2, ASN1_BIT_STRING *signature, void *asn, EVP_MD_CTX *ctx)
Coverage:  55.769% (29/52)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_sign.c
Lines: 141-233
 55.769% (29/52)
8815
BN_bn2dec
Name: BN_bn2dec
Prototype: char * BN_bn2dec(const BIGNUM *a)
Coverage:  0.000% (0/45)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_print.c
Lines: 109-187
  0.000% (0/45)
8515
EC_GROUP_copy
Name: EC_GROUP_copy
Prototype: int EC_GROUP_copy(EC_GROUP * dest, const EC_GROUP * src)
Coverage:  53.333% (24/45)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_lib.c
Lines: 159-225
 53.333% (24/45)
6515
EC_KEY_copy
Name: EC_KEY_copy
Prototype: EC_KEY * EC_KEY_copy(EC_KEY * dest, const EC_KEY * src)
Coverage:  0.000% (0/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_key.c
Lines: 128-187
  0.000% (0/47)
8615
EC_KEY_generate_key
Name: EC_KEY_generate_key
Prototype: int EC_KEY_generate_key(EC_KEY * eckey)
Coverage:  41.667% (20/48)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ec_key.c
Lines: 209-264
 41.667% (20/48)
8615
ENGINE_ctrl_cmd_string
Name: ENGINE_ctrl_cmd_string
Prototype: int ENGINE_ctrl_cmd_string(ENGINE *e, const char *cmd_name, const char *arg, int cmd_optional)
Coverage:  0.000% (0/49)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/engine/eng_ctrl.c
Lines: 294-379
  0.000% (0/49)
8915
GOST_KEY_check_key
Name: GOST_KEY_check_key
Prototype: int GOST_KEY_check_key(const GOST_KEY *key)
Coverage:  0.000% (0/45)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/gost/gostr341001_key.c
Lines: 111-178
  0.000% (0/45)
8715
OCSP_REQUEST_print
Name: OCSP_REQUEST_print
Prototype: int OCSP_REQUEST_print(BIO *bp, OCSP_REQUEST* o, unsigned long flags)
Coverage:  0.000% (0/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ocsp/ocsp_prn.c
Lines: 143-192
  0.000% (0/41)
4915
OCSP_cert_id_new
Name: OCSP_cert_id_new
Prototype: OCSP_CERTID * OCSP_cert_id_new(const EVP_MD *dgst, const X509_NAME *issuerName, const ASN1_BIT_STRING *issuerKey, const ASN1_INTEGER *serialNumber)
Coverage:  0.000% (0/39)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ocsp/ocsp_lib.c
Lines: 101-152
  0.000% (0/39)
5115
OCSP_url_svcloc_new
Name: OCSP_url_svcloc_new
Prototype: X509_EXTENSION * OCSP_url_svcloc_new(X509_NAME* issuer, const char **urls)
Coverage:  0.000% (0/47)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ocsp/ocsp_ext.c
Lines: 521-565
  0.000% (0/47)
6115
PKCS7_sign_add_signer
Name: PKCS7_sign_add_signer
Prototype: PKCS7_SIGNER_INFO * PKCS7_sign_add_signer(PKCS7 *p7, X509 *signcert, EVP_PKEY *pkey, const EVP_MD *md, int flags)
Coverage:  38.806% (26/67)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pkcs7/pk7_smime.c
Lines: 159-221
 38.806% (26/67)
7215
X509V3_add1_i2d
Name: X509V3_add1_i2d
Prototype: int X509V3_add1_i2d(struct stack_st_X509_EXTENSION **x, int nid, void *value, int crit, unsigned long flags)
Coverage:  26.087% (12/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_lib.c
Lines: 284-357
 26.087% (12/46)
3815
X509V3_get_d2i
Name: X509V3_get_d2i
Prototype: void * X509V3_get_d2i(const struct stack_st_X509_EXTENSION *x, int nid, int *crit, int *idx)
Coverage:  56.818% (25/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_lib.c
Lines: 229-277
 56.818% (25/44)
5015
asn1_multi
Name: asn1_multi
Prototype: static ASN1_TYPE * asn1_multi(int utype, const char *section, X509V3_CTX *cnf)
Coverage:  0.000% (0/42)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/asn1_gen.c
Lines: 430-489
  0.000% (0/42)
6115
asn1_template_print_ctx
Name: asn1_template_print_ctx
Prototype: int asn1_template_print_ctx(BIO *out, ASN1_VALUE **fld, int indent, const ASN1_TEMPLATE *tt, const ASN1_PCTX *pctx)
Coverage:  0.000% (0/50)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/tasn_prn.c
Lines: 333-387
  0.000% (0/50)
5615
asn1_write_micalg
Name: asn1_write_micalg
Prototype: static int asn1_write_micalg(BIO *out, struct stack_st_X509_ALGOR *mdalgs)
Coverage:  0.000% (0/36)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/asn_mime.c
Lines: 204-272
  0.000% (0/36)
4415
bnrand
Name: bnrand
Prototype: static int bnrand(int pseudorand, BIGNUM *rnd, int bits, int top, int bottom)
Coverage:  76.744% (33/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_rand.c
Lines: 121-192
 76.744% (33/43)
5215
do_blob_header
Name: do_blob_header
Prototype: static int do_blob_header(const unsigned char **in, unsigned int length, unsigned int *pmagic, unsigned int *pbitlen, int *pisdss, int *pispub)
Coverage:  0.000% (0/39)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pem/pvkfmt.c
Lines: 149-213
  0.000% (0/39)
4015
do_dh_print
Name: do_dh_print
Prototype: static int do_dh_print(BIO *bp, const DH *x, int indent, ASN1_PCTX *ctx, int ptype)
Coverage:  0.000% (0/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/dh/dh_ameth.c
Lines: 310-381
  0.000% (0/44)
6615
do_dsa_print
Name: do_dsa_print
Prototype: static int do_dsa_print(BIO *bp, const DSA *x, int off, int ptype)
Coverage:  45.455% (20/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/dsa/dsa_ameth.c
Lines: 376-436
 45.455% (20/44)
6215
dtls1_enc
Name: dtls1_enc
Prototype: int dtls1_enc(SSL *s, int send)
Coverage:  85.455% (47/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/d1_enc.c
Lines: 132-211
 85.455% (47/55)
7015
ec_GFp_simple_group_set_curve
Name: ec_GFp_simple_group_set_curve
Prototype: int ec_GFp_simple_group_set_curve(EC_GROUP * group, const BIGNUM * p, const BIGNUM * a, const BIGNUM * b, BN_CTX * ctx)
Coverage:  36.364% (16/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/ec/ecp_smpl.c
Lines: 176-230
 36.364% (16/44)
4515
i2b_PVK
Name: i2b_PVK
Prototype: static int i2b_PVK(unsigned char **out, EVP_PKEY*pk, int enclevel, pem_password_cb *cb, void *u)
Coverage:  0.000% (0/44)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/pem/pvkfmt.c
Lines: 835-908
  0.000% (0/44)
7415
i2c_ASN1_INTEGER
Name: i2c_ASN1_INTEGER
Prototype: int i2c_ASN1_INTEGER(ASN1_INTEGER *a, unsigned char **pp)
Coverage:  47.826% (22/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/a_int.c
Lines: 120-186
 47.826% (22/46)
4815
md_ctrl
Name: md_ctrl
Prototype: static long md_ctrl(BIO *b, int cmd, long num, void *ptr)
Coverage:  23.684% (9/38)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/bio_md.c
Lines: 176-238
 23.684% (9/38)
5215
ssl3_send_certificate_request
Name: ssl3_send_certificate_request
Prototype: int ssl3_send_certificate_request(SSL *s)
Coverage:  34.146% (14/41)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_srvr.c
Lines: 1626-1694
 34.146% (14/41)
4915
ssl3_send_client_kex_ecdhe_ecp
Name: ssl3_send_client_kex_ecdhe_ecp
Prototype: static int ssl3_send_client_kex_ecdhe_ecp(SSL *s, SESS_CERT *sc, CBB *cbb)
Coverage:  37.209% (16/43)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/ssl_clnt.c
Lines: 2044-2131
 37.209% (16/43)
10315
ssl_write
Name: ssl_write
Prototype: static int ssl_write(BIO *b, const char *out, int outl)
Coverage:  31.429% (11/35)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/ssl/bio_ssl.c
Lines: 214-278
 31.429% (11/35)
4615
tls_check_common_name
Name: tls_check_common_name
Prototype: static int tls_check_common_name(struct tls *ctx, X509 *cert, const char *name, int *cn_match)
Coverage:  35.088% (20/57)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/tls/tls_verify.c
Lines: 204-259
 35.088% (20/57)
21615
v2i_crld
Name: v2i_crld
Prototype: static void * v2i_crld(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, struct stack_st_CONF_VALUE *nval)
Coverage:  0.000% (0/39)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_crld.c
Lines: 305-363
  0.000% (0/39)
6915
valid_star
Name: valid_star
Prototype: static const unsigned char *valid_star(const unsigned char *p, size_t len, unsigned int flags)
Coverage:  0.000% (0/83)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/x509v3/v3_utl.c
Lines: 791-867
  0.000% (0/83)
8315
AES_ige_encrypt
Name: AES_ige_encrypt
Prototype: void AES_ige_encrypt(const unsigned char *in, unsigned char *out, size_t length, const AES_KEY *key, unsigned char *ivec, const int enc)
Coverage: 100.000% (46/46)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/aes/aes_ige.c
Lines: 79-194
100.000% (46/46)
8616
ASN1_generate_v3
Name: ASN1_generate_v3
Prototype: ASN1_TYPE * ASN1_generate_v3(const char *str, X509V3_CTX *cnf)
Coverage:  0.000% (0/55)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/asn1_gen.c
Lines: 135-266
  0.000% (0/55)
10216
CRYPTO_cbc128_decrypt
Name: CRYPTO_cbc128_decrypt
Prototype: void CRYPTO_cbc128_decrypt(const unsigned char *in, unsigned char *out, size_t len, const void *key, unsigned char ivec[16], block128_f block)
Coverage:  32.432% (12/37)
Absolute File Name: /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/modes/cbc128.c
Lines: 116-202
 32.432% (12/37)
3816
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
...52
McCabe - Cyclomatic Complexity: 8
53
McCabe - Cyclomatic Complexity: 9
54
McCabe - Cyclomatic Complexity: 10
55
McCabe - Cyclomatic Complexity: 11
5657
McCabe - Cyclomatic Complexity: 16
58
McCabe - Cyclomatic Complexity: 19
59
McCabe - Cyclomatic Complexity: 25
60
McCabe - Cyclomatic Complexity: 41

Generated by Squish Coco 4.2.2