| Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/evp/evp_key.c |
| Switch to Source code | Preprocessed file |
| Line | Source | Count | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||||||||||||||||||||
| 2 | - | |||||||||||||||||||||||||
| 3 | - | |||||||||||||||||||||||||
| 4 | - | |||||||||||||||||||||||||
| 5 | static char prompt_string[80]; | - | ||||||||||||||||||||||||
| 6 | - | |||||||||||||||||||||||||
| 7 | void | - | ||||||||||||||||||||||||
| 8 | EVP_set_pw_prompt(const char *prompt) | - | ||||||||||||||||||||||||
| 9 | { | - | ||||||||||||||||||||||||
| 10 | if (prompt ==
| 0 | ||||||||||||||||||||||||
| 11 | ((void *)0)
| 0 | ||||||||||||||||||||||||
| 12 | ) | - | ||||||||||||||||||||||||
| 13 | prompt_string[0] = '\0'; never executed: prompt_string[0] = '\0'; | 0 | ||||||||||||||||||||||||
| 14 | else { | - | ||||||||||||||||||||||||
| 15 | strlcpy(prompt_string, prompt, sizeof(prompt_string)); | - | ||||||||||||||||||||||||
| 16 | } never executed: end of block | 0 | ||||||||||||||||||||||||
| 17 | } | - | ||||||||||||||||||||||||
| 18 | - | |||||||||||||||||||||||||
| 19 | char * | - | ||||||||||||||||||||||||
| 20 | EVP_get_pw_prompt(void) | - | ||||||||||||||||||||||||
| 21 | { | - | ||||||||||||||||||||||||
| 22 | if (prompt_string[0] == '\0'
| 0 | ||||||||||||||||||||||||
| 23 | return never executed: (return ( ((void *)0) );never executed: return ( ((void *)0) ); | 0 | ||||||||||||||||||||||||
| 24 | ((void *)0) never executed: return ( ((void *)0) ); | 0 | ||||||||||||||||||||||||
| 25 | ); never executed: return ( ((void *)0) ); | 0 | ||||||||||||||||||||||||
| 26 | else | - | ||||||||||||||||||||||||
| 27 | return never executed: (prompt_string);return (prompt_string);never executed: return (prompt_string); | 0 | ||||||||||||||||||||||||
| 28 | } | - | ||||||||||||||||||||||||
| 29 | - | |||||||||||||||||||||||||
| 30 | int | - | ||||||||||||||||||||||||
| 31 | EVP_read_pw_string(char *buf, int len, const char *prompt, int verify) | - | ||||||||||||||||||||||||
| 32 | { | - | ||||||||||||||||||||||||
| 33 | return never executed: EVP_read_pw_string_min(buf, 0, len, prompt, verify);return EVP_read_pw_string_min(buf, 0, len, prompt, verify);never executed: return EVP_read_pw_string_min(buf, 0, len, prompt, verify); | 0 | ||||||||||||||||||||||||
| 34 | } | - | ||||||||||||||||||||||||
| 35 | - | |||||||||||||||||||||||||
| 36 | int | - | ||||||||||||||||||||||||
| 37 | EVP_read_pw_string_min(char *buf, int min, int len, const char *prompt, | - | ||||||||||||||||||||||||
| 38 | int verify) | - | ||||||||||||||||||||||||
| 39 | { | - | ||||||||||||||||||||||||
| 40 | int ret; | - | ||||||||||||||||||||||||
| 41 | char buff[ | - | ||||||||||||||||||||||||
| 42 | 8192 | - | ||||||||||||||||||||||||
| 43 | ]; | - | ||||||||||||||||||||||||
| 44 | UI *ui; | - | ||||||||||||||||||||||||
| 45 | - | |||||||||||||||||||||||||
| 46 | if (len >
| 0 | ||||||||||||||||||||||||
| 47 | 8192
| 0 | ||||||||||||||||||||||||
| 48 | ) | - | ||||||||||||||||||||||||
| 49 | len = never executed: len = 8192 ; | 0 | ||||||||||||||||||||||||
| 50 | 8192 never executed: len = 8192 ; | 0 | ||||||||||||||||||||||||
| 51 | ; never executed: len = 8192 ; | 0 | ||||||||||||||||||||||||
| 52 | - | |||||||||||||||||||||||||
| 53 | if (min < 0
| 0 | ||||||||||||||||||||||||
| 54 | return never executed: -1;return -1;never executed: return -1; | 0 | ||||||||||||||||||||||||
| 55 | if ((
| 0 | ||||||||||||||||||||||||
| 56 | ((void *)0)
| 0 | ||||||||||||||||||||||||
| 57 | )
| 0 | ||||||||||||||||||||||||
| 58 | prompt = prompt_string; never executed: prompt = prompt_string; | 0 | ||||||||||||||||||||||||
| 59 | ui = UI_new(); | - | ||||||||||||||||||||||||
| 60 | if (ui ==
| 0 | ||||||||||||||||||||||||
| 61 | ((void *)0)
| 0 | ||||||||||||||||||||||||
| 62 | ) | - | ||||||||||||||||||||||||
| 63 | return never executed: -1;return -1;never executed: return -1; | 0 | ||||||||||||||||||||||||
| 64 | if (UI_add_input_string(ui, prompt, 0, buf, min, len - 1) < 0
| 0 | ||||||||||||||||||||||||
| 65 | return never executed: -1;return -1;never executed: return -1; | 0 | ||||||||||||||||||||||||
| 66 | if (verify
| 0 | ||||||||||||||||||||||||
| 67 | if (UI_add_verify_string(ui, prompt, 0, buff, min, len - 1, buf)
| 0 | ||||||||||||||||||||||||
| 68 | < 0
| 0 | ||||||||||||||||||||||||
| 69 | return never executed: -1;return -1;never executed: return -1; | 0 | ||||||||||||||||||||||||
| 70 | } never executed: end of block | 0 | ||||||||||||||||||||||||
| 71 | ret = UI_process(ui); | - | ||||||||||||||||||||||||
| 72 | UI_free(ui); | - | ||||||||||||||||||||||||
| 73 | explicit_bzero(buff, | - | ||||||||||||||||||||||||
| 74 | 8192 | - | ||||||||||||||||||||||||
| 75 | ); | - | ||||||||||||||||||||||||
| 76 | return never executed: ret;return ret;never executed: return ret; | 0 | ||||||||||||||||||||||||
| 77 | } | - | ||||||||||||||||||||||||
| 78 | - | |||||||||||||||||||||||||
| 79 | int | - | ||||||||||||||||||||||||
| 80 | EVP_BytesToKey(const EVP_CIPHER *type, const EVP_MD *md, | - | ||||||||||||||||||||||||
| 81 | const unsigned char *salt, const unsigned char *data, int datal, | - | ||||||||||||||||||||||||
| 82 | int count, unsigned char *key, unsigned char *iv) | - | ||||||||||||||||||||||||
| 83 | { | - | ||||||||||||||||||||||||
| 84 | EVP_MD_CTX c; | - | ||||||||||||||||||||||||
| 85 | unsigned char md_buf[64]; | - | ||||||||||||||||||||||||
| 86 | int niv, nkey, addmd = 0; | - | ||||||||||||||||||||||||
| 87 | unsigned int mds = 0, i; | - | ||||||||||||||||||||||||
| 88 | int rv = 0; | - | ||||||||||||||||||||||||
| 89 | - | |||||||||||||||||||||||||
| 90 | nkey = type->key_len; | - | ||||||||||||||||||||||||
| 91 | niv = type->iv_len; | - | ||||||||||||||||||||||||
| 92 | - | |||||||||||||||||||||||||
| 93 | if ((
| 0-196 | ||||||||||||||||||||||||
| 94 | ERR_put_error(6,(0xfff),(137),__FILE__,142); | - | ||||||||||||||||||||||||
| 95 | return never executed: 0;return 0;never executed: return 0; | 0 | ||||||||||||||||||||||||
| 96 | } | - | ||||||||||||||||||||||||
| 97 | if ((
| 0-196 | ||||||||||||||||||||||||
| 98 | ERR_put_error(6,(0xfff),(102),__FILE__,146); | - | ||||||||||||||||||||||||
| 99 | return never executed: 0;return 0;never executed: return 0; | 0 | ||||||||||||||||||||||||
| 100 | } | - | ||||||||||||||||||||||||
| 101 | - | |||||||||||||||||||||||||
| 102 | if (data ==
| 0-196 | ||||||||||||||||||||||||
| 103 | ((void *)0)
| 0-196 | ||||||||||||||||||||||||
| 104 | ) | - | ||||||||||||||||||||||||
| 105 | return never executed: (nkey);return (nkey);never executed: return (nkey); | 0 | ||||||||||||||||||||||||
| 106 | - | |||||||||||||||||||||||||
| 107 | EVP_MD_CTX_init(&c); | - | ||||||||||||||||||||||||
| 108 | for (;;) { | - | ||||||||||||||||||||||||
| 109 | if (!EVP_DigestInit_ex(&c, md,
| 0-376 | ||||||||||||||||||||||||
| 110 | ((void *)0)
| 0-376 | ||||||||||||||||||||||||
| 111 | )
| 0-376 | ||||||||||||||||||||||||
| 112 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 113 | if (addmd++
| 180-196 | ||||||||||||||||||||||||
| 114 | if (!EVP_DigestUpdate(&c, &(md_buf[0]), mds)
| 0-180 | ||||||||||||||||||||||||
| 115 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 116 | if (!EVP_DigestUpdate(&c, data, datal)
| 0-376 | ||||||||||||||||||||||||
| 117 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 118 | if (salt !=
| 0-376 | ||||||||||||||||||||||||
| 119 | ((void *)0)
| 0-376 | ||||||||||||||||||||||||
| 120 | ) | - | ||||||||||||||||||||||||
| 121 | if (!EVP_DigestUpdate(&c, salt, 8)
| 0-376 | ||||||||||||||||||||||||
| 122 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 123 | if (!EVP_DigestFinal_ex(&c, &(md_buf[0]), &mds)
| 0-376 | ||||||||||||||||||||||||
| 124 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 125 | - | |||||||||||||||||||||||||
| 126 | for (i = 1; i < (unsigned int)count
| 0-376 | ||||||||||||||||||||||||
| 127 | if (!EVP_DigestInit_ex(&c, md,
| 0 | ||||||||||||||||||||||||
| 128 | ((void *)0)
| 0 | ||||||||||||||||||||||||
| 129 | )
| 0 | ||||||||||||||||||||||||
| 130 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 131 | if (!EVP_DigestUpdate(&c, &(md_buf[0]), mds)
| 0 | ||||||||||||||||||||||||
| 132 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 133 | if (!EVP_DigestFinal_ex(&c, &(md_buf[0]), &mds)
| 0 | ||||||||||||||||||||||||
| 134 | goto never executed: err;goto err;never executed: goto err; | 0 | ||||||||||||||||||||||||
| 135 | } never executed: end of block | 0 | ||||||||||||||||||||||||
| 136 | i = 0; | - | ||||||||||||||||||||||||
| 137 | if (nkey
| 112-264 | ||||||||||||||||||||||||
| 138 | for (;;) { | - | ||||||||||||||||||||||||
| 139 | if (nkey == 0
| 196-3660 | ||||||||||||||||||||||||
| 140 | break; executed 196 times by 1 test: break;Executed by:
| 196 | ||||||||||||||||||||||||
| 141 | if (i == mds
| 68-3592 | ||||||||||||||||||||||||
| 142 | break; executed 68 times by 1 test: break;Executed by:
| 68 | ||||||||||||||||||||||||
| 143 | if (key !=
| 0-3592 | ||||||||||||||||||||||||
| 144 | ((void *)0)
| 0-3592 | ||||||||||||||||||||||||
| 145 | ) | - | ||||||||||||||||||||||||
| 146 | *( executed 3592 times by 1 test: key++) = md_buf[i];*(key++) = md_buf[i];Executed by:
executed 3592 times by 1 test: *(key++) = md_buf[i];Executed by:
| 3592 | ||||||||||||||||||||||||
| 147 | nkey--; | - | ||||||||||||||||||||||||
| 148 | i++; | - | ||||||||||||||||||||||||
| 149 | } executed 3592 times by 1 test: end of blockExecuted by:
| 3592 | ||||||||||||||||||||||||
| 150 | } executed 264 times by 1 test: end of blockExecuted by:
| 264 | ||||||||||||||||||||||||
| 151 | if (niv
| 56-320 | ||||||||||||||||||||||||
| 152 | for (;;) { | - | ||||||||||||||||||||||||
| 153 | if (niv == 0
| 152-1716 | ||||||||||||||||||||||||
| 154 | break; executed 152 times by 1 test: break;Executed by:
| 152 | ||||||||||||||||||||||||
| 155 | if (i == mds
| 20-1696 | ||||||||||||||||||||||||
| 156 | break; executed 20 times by 1 test: break;Executed by:
| 20 | ||||||||||||||||||||||||
| 157 | if (iv !=
| 0-1696 | ||||||||||||||||||||||||
| 158 | ((void *)0)
| 0-1696 | ||||||||||||||||||||||||
| 159 | ) | - | ||||||||||||||||||||||||
| 160 | *( executed 1696 times by 1 test: iv++) = md_buf[i];*(iv++) = md_buf[i];Executed by:
executed 1696 times by 1 test: *(iv++) = md_buf[i];Executed by:
| 1696 | ||||||||||||||||||||||||
| 161 | niv--; | - | ||||||||||||||||||||||||
| 162 | i++; | - | ||||||||||||||||||||||||
| 163 | } executed 1696 times by 1 test: end of blockExecuted by:
| 1696 | ||||||||||||||||||||||||
| 164 | } executed 172 times by 1 test: end of blockExecuted by:
| 172 | ||||||||||||||||||||||||
| 165 | if ((
| 68-308 | ||||||||||||||||||||||||
| 166 | break; executed 196 times by 1 test: break;Executed by:
| 196 | ||||||||||||||||||||||||
| 167 | } executed 180 times by 1 test: end of blockExecuted by:
| 180 | ||||||||||||||||||||||||
| 168 | rv = type->key_len; | - | ||||||||||||||||||||||||
| 169 | - | |||||||||||||||||||||||||
| 170 | err: code before this statement executed 196 times by 1 test: err:Executed by:
| 196 | ||||||||||||||||||||||||
| 171 | EVP_MD_CTX_cleanup(&c); | - | ||||||||||||||||||||||||
| 172 | explicit_bzero(md_buf, sizeof md_buf); | - | ||||||||||||||||||||||||
| 173 | return executed 196 times by 1 test: rv;return rv;Executed by:
executed 196 times by 1 test: return rv;Executed by:
| 196 | ||||||||||||||||||||||||
| 174 | } | - | ||||||||||||||||||||||||
| Switch to Source code | Preprocessed file |