| Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/ec/ec_print.c |
| Switch to Source code | Preprocessed file |
| Line | Source | Count | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||||||||
| 2 | BIGNUM *EC_POINT_point2bn(const EC_GROUP *group, | - | ||||||||||||
| 3 | const EC_POINT *point, | - | ||||||||||||
| 4 | point_conversion_form_t form, | - | ||||||||||||
| 5 | BIGNUM *ret, BN_CTX *ctx) | - | ||||||||||||
| 6 | { | - | ||||||||||||
| 7 | size_t buf_len = 0; | - | ||||||||||||
| 8 | unsigned char *buf; | - | ||||||||||||
| 9 | - | |||||||||||||
| 10 | buf_len = EC_POINT_point2buf(group, point, form, &buf, ctx); | - | ||||||||||||
| 11 | - | |||||||||||||
| 12 | if (buf_len == 0
| 0-45 | ||||||||||||
| 13 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 14 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 15 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 16 | - | |||||||||||||
| 17 | ret = BN_bin2bn(buf, buf_len, ret); | - | ||||||||||||
| 18 | - | |||||||||||||
| 19 | CRYPTO_free(buf, __FILE__, 29); | - | ||||||||||||
| 20 | - | |||||||||||||
| 21 | return executed 45 times by 1 test: ret;return ret;Executed by:
executed 45 times by 1 test: return ret;Executed by:
| 45 | ||||||||||||
| 22 | } | - | ||||||||||||
| 23 | - | |||||||||||||
| 24 | EC_POINT *EC_POINT_bn2point(const EC_GROUP *group, | - | ||||||||||||
| 25 | const BIGNUM *bn, EC_POINT *point, BN_CTX *ctx) | - | ||||||||||||
| 26 | { | - | ||||||||||||
| 27 | size_t buf_len = 0; | - | ||||||||||||
| 28 | unsigned char *buf; | - | ||||||||||||
| 29 | EC_POINT *ret; | - | ||||||||||||
| 30 | - | |||||||||||||
| 31 | if ((
| 0 | ||||||||||||
| 32 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 33 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 34 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 35 | if ((
| 0 | ||||||||||||
| 36 | ((void *)0)
| 0 | ||||||||||||
| 37 | ) { | - | ||||||||||||
| 38 | ERR_put_error(16,(280),((1|64)),__FILE__,44); | - | ||||||||||||
| 39 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 40 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 41 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 42 | } | - | ||||||||||||
| 43 | - | |||||||||||||
| 44 | if (!BN_bn2bin(bn, buf)
| 0 | ||||||||||||
| 45 | CRYPTO_free(buf, __FILE__, 49); | - | ||||||||||||
| 46 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 47 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 48 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 49 | } | - | ||||||||||||
| 50 | - | |||||||||||||
| 51 | if (point ==
| 0 | ||||||||||||
| 52 | ((void *)0)
| 0 | ||||||||||||
| 53 | ) { | - | ||||||||||||
| 54 | if ((
| 0 | ||||||||||||
| 55 | ((void *)0)
| 0 | ||||||||||||
| 56 | ) { | - | ||||||||||||
| 57 | CRYPTO_free(buf, __FILE__, 55); | - | ||||||||||||
| 58 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 59 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 60 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 61 | } | - | ||||||||||||
| 62 | } never executed: elseend of block | 0 | ||||||||||||
| 63 | ret = point; never executed: ret = point; | 0 | ||||||||||||
| 64 | - | |||||||||||||
| 65 | if (!EC_POINT_oct2point(group, ret, buf, buf_len, ctx)
| 0 | ||||||||||||
| 66 | if (ret != point
| 0 | ||||||||||||
| 67 | EC_POINT_clear_free(ret); never executed: EC_POINT_clear_free(ret); | 0 | ||||||||||||
| 68 | CRYPTO_free(buf, __FILE__, 64); | - | ||||||||||||
| 69 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 70 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 71 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 72 | } | - | ||||||||||||
| 73 | - | |||||||||||||
| 74 | CRYPTO_free(buf, __FILE__, 68); | - | ||||||||||||
| 75 | return never executed: ret;return ret;never executed: return ret; | 0 | ||||||||||||
| 76 | } | - | ||||||||||||
| 77 | - | |||||||||||||
| 78 | static const char *HEX_DIGITS = "0123456789ABCDEF"; | - | ||||||||||||
| 79 | - | |||||||||||||
| 80 | - | |||||||||||||
| 81 | char *EC_POINT_point2hex(const EC_GROUP *group, | - | ||||||||||||
| 82 | const EC_POINT *point, | - | ||||||||||||
| 83 | point_conversion_form_t form, BN_CTX *ctx) | - | ||||||||||||
| 84 | { | - | ||||||||||||
| 85 | char *ret, *p; | - | ||||||||||||
| 86 | size_t buf_len = 0, i; | - | ||||||||||||
| 87 | unsigned char *buf = | - | ||||||||||||
| 88 | ((void *)0) | - | ||||||||||||
| 89 | , *pbuf; | - | ||||||||||||
| 90 | - | |||||||||||||
| 91 | buf_len = EC_POINT_point2buf(group, point, form, &buf, ctx); | - | ||||||||||||
| 92 | - | |||||||||||||
| 93 | if (buf_len == 0
| 0 | ||||||||||||
| 94 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 95 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 96 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 97 | - | |||||||||||||
| 98 | ret = CRYPTO_malloc(buf_len * 2 + 2, __FILE__, 88); | - | ||||||||||||
| 99 | if (ret ==
| 0 | ||||||||||||
| 100 | ((void *)0)
| 0 | ||||||||||||
| 101 | ) { | - | ||||||||||||
| 102 | CRYPTO_free(buf, __FILE__, 90); | - | ||||||||||||
| 103 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 104 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 105 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 106 | } | - | ||||||||||||
| 107 | p = ret; | - | ||||||||||||
| 108 | pbuf = buf; | - | ||||||||||||
| 109 | for (i = buf_len; i > 0
| 0 | ||||||||||||
| 110 | int v = (int)*(pbuf++); | - | ||||||||||||
| 111 | *(p++) = HEX_DIGITS[v >> 4]; | - | ||||||||||||
| 112 | *(p++) = HEX_DIGITS[v & 0x0F]; | - | ||||||||||||
| 113 | } never executed: end of block | 0 | ||||||||||||
| 114 | *p = '\0'; | - | ||||||||||||
| 115 | - | |||||||||||||
| 116 | CRYPTO_free(buf, __FILE__, 102); | - | ||||||||||||
| 117 | - | |||||||||||||
| 118 | return never executed: ret;return ret;never executed: return ret; | 0 | ||||||||||||
| 119 | } | - | ||||||||||||
| 120 | - | |||||||||||||
| 121 | EC_POINT *EC_POINT_hex2point(const EC_GROUP *group, | - | ||||||||||||
| 122 | const char *buf, EC_POINT *point, BN_CTX *ctx) | - | ||||||||||||
| 123 | { | - | ||||||||||||
| 124 | EC_POINT *ret = | - | ||||||||||||
| 125 | ((void *)0) | - | ||||||||||||
| 126 | ; | - | ||||||||||||
| 127 | BIGNUM *tmp_bn = | - | ||||||||||||
| 128 | ((void *)0) | - | ||||||||||||
| 129 | ; | - | ||||||||||||
| 130 | - | |||||||||||||
| 131 | if (!BN_hex2bn(&tmp_bn, buf)
| 0 | ||||||||||||
| 132 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 133 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 134 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 135 | - | |||||||||||||
| 136 | ret = EC_POINT_bn2point(group, tmp_bn, point, ctx); | - | ||||||||||||
| 137 | - | |||||||||||||
| 138 | BN_clear_free(tmp_bn); | - | ||||||||||||
| 139 | - | |||||||||||||
| 140 | return never executed: ret;return ret;never executed: return ret; | 0 | ||||||||||||
| 141 | } | - | ||||||||||||
| Switch to Source code | Preprocessed file |