OpenCoverage

LibreSSL Portable Test Coverage

Functions

Page:<>1
McCabe - Cyclomatic Complexity: 131
2
McCabe - Cyclomatic Complexity: 30
3
McCabe - Cyclomatic Complexity: 22
45
McCabe - Cyclomatic Complexity: 14
6
McCabe - Cyclomatic Complexity: 12
7
McCabe - Cyclomatic Complexity: 10
8
McCabe - Cyclomatic Complexity: 9
...10
McCabe - Cyclomatic Complexity: 8
...20
McCabe - Cyclomatic Complexity: 4
...30
McCabe - Cyclomatic Complexity: 2
...60
McCabe - Cyclomatic Complexity: 1
FunctionCondition %eLOC - Effective Lines of CodeMcCabe - Cyclomatic Complexityâ–¾
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
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
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
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
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
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
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_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
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
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
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
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
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
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
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
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
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
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
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
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
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_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_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_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_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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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_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
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
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
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_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
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
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
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
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
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_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
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
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
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
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_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
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
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
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_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
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
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
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_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
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
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
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
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
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_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_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_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
Page:<>1
McCabe - Cyclomatic Complexity: 131
2
McCabe - Cyclomatic Complexity: 30
3
McCabe - Cyclomatic Complexity: 22
45
McCabe - Cyclomatic Complexity: 14
6
McCabe - Cyclomatic Complexity: 12
7
McCabe - Cyclomatic Complexity: 10
8
McCabe - Cyclomatic Complexity: 9
...10
McCabe - Cyclomatic Complexity: 8
...20
McCabe - Cyclomatic Complexity: 4
...30
McCabe - Cyclomatic Complexity: 2
...60
McCabe - Cyclomatic Complexity: 1

Generated by Squish Coco 4.2.2