Module Name: src
Committed By: christos
Date: Mon Oct 5 14:34:04 UTC 2020
Modified Files:
src/crypto/external/bsd/openssl/dist/crypto/bn: bn_print.c
src/crypto/external/bsd/openssl/dist/include/openssl: bn.h
src/crypto/external/bsd/openssl/lib/libcrypto: crypto.map
Log Message:
revert previous octal conversion code (broken and not worth it).
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/openssl/dist/crypto/bn/bn_print.c
cvs rdiff -u -r1.2 -r1.3 \
src/crypto/external/bsd/openssl/dist/include/openssl/bn.h
cvs rdiff -u -r1.10 -r1.11 \
src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/crypto/external/bsd/openssl/dist/crypto/bn/bn_print.c
diff -u src/crypto/external/bsd/openssl/dist/crypto/bn/bn_print.c:1.2 src/crypto/external/bsd/openssl/dist/crypto/bn/bn_print.c:1.3
--- src/crypto/external/bsd/openssl/dist/crypto/bn/bn_print.c:1.2 Sun Oct 4 15:32:48 2020
+++ src/crypto/external/bsd/openssl/dist/crypto/bn/bn_print.c Mon Oct 5 10:34:03 2020
@@ -266,87 +266,6 @@ int BN_dec2bn(BIGNUM **bn, const char *a
return 0;
}
-int BN_oct2bn(BIGNUM **bn, const char *a)
-{
- BIGNUM *ret = NULL;
- BN_ULONG l = 0;
- int neg = 0, h, m, i, j, b, k, c, r;
- int num;
-
- if (a == NULL || *a == '\0')
- return 0;
-
- if (*a == '-') {
- neg = 1;
- a++;
- }
-
- for (i = 0; i <= INT_MAX / 4 && ossl_isdigit(a[i]) && a[i] < '8'; i++)
- continue;
-
- if (i == 0 || i > INT_MAX / 4)
- goto err;
-
- num = i + neg;
- if (bn == NULL)
- return num;
-
- /* a is the start of the hex digits, and it is 'i' long */
- if (*bn == NULL) {
- if ((ret = BN_new()) == NULL)
- return 0;
- } else {
- ret = *bn;
- BN_zero(ret);
- }
-
- /* i is the number of hex digits */
- if (bn_expand(ret, i * 4) == NULL)
- goto err;
-
- j = i; /* least significant 'oct' */
- h = 0;
- b = 0;
-#define M (BN_BYTES * 8 / 3)
- while (j > 0) {
- m = (M <= j) ? M : j;
- while (m > 0) {
- k = a[j - m] - '0';
- l = (l << 3) | k;
- b += 3;
- m--;
- }
- j -= M;
- if (j <= 0) {
- ret->d[h++] = l;
- break;
- }
- b = BN_BYTES * 8 - b;
- r = 3 - b;
- k = a[j--] - '0';
- l = (l << r) | (k >> b);
- ret->d[h++] = l;
- l = k & ((2 << r) - 1);
- if (j == 0) {
- ret->d[h++] = l;
- break;
- }
- }
- ret->top = h;
- bn_correct_top(ret);
-
- *bn = ret;
- bn_check_top(ret);
- /* Don't set the negative flag if it's zero. */
- if (ret->top != 0)
- ret->neg = neg;
- return num;
- err:
- if (*bn == NULL)
- BN_free(ret);
- return 0;
-}
-
int BN_asc2bn(BIGNUM **bn, const char *a)
{
const char *p = a;
@@ -354,14 +273,9 @@ int BN_asc2bn(BIGNUM **bn, const char *a
if (*p == '-')
p++;
- if (p[0] == '0') {
- if (p[1] == 'X' || p[1] == 'x') {
- if (!BN_hex2bn(bn, p + 2))
- return 0;
- } else {
- if (!BN_oct2bn(bn, p + 1))
- return 0;
- }
+ if (p[0] == '0' && (p[1] == 'X' || p[1] == 'x')) {
+ if (!BN_hex2bn(bn, p + 2))
+ return 0;
} else {
if (!BN_dec2bn(bn, p))
return 0;
Index: src/crypto/external/bsd/openssl/dist/include/openssl/bn.h
diff -u src/crypto/external/bsd/openssl/dist/include/openssl/bn.h:1.2 src/crypto/external/bsd/openssl/dist/include/openssl/bn.h:1.3
--- src/crypto/external/bsd/openssl/dist/include/openssl/bn.h:1.2 Sun Oct 4 15:32:48 2020
+++ src/crypto/external/bsd/openssl/dist/include/openssl/bn.h Mon Oct 5 10:34:03 2020
@@ -310,7 +310,6 @@ char *BN_bn2hex(const BIGNUM *a);
char *BN_bn2dec(const BIGNUM *a);
int BN_hex2bn(BIGNUM **a, const char *str);
int BN_dec2bn(BIGNUM **a, const char *str);
-int BN_oct2bn(BIGNUM **a, const char *str);
int BN_asc2bn(BIGNUM **a, const char *str);
int BN_gcd(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx);
int BN_kronecker(const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx); /* returns
Index: src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map
diff -u src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map:1.10 src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map:1.11
--- src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map:1.10 Mon Oct 5 07:29:36 2020
+++ src/crypto/external/bsd/openssl/lib/libcrypto/crypto.map Mon Oct 5 10:34:04 2020
@@ -552,7 +552,6 @@ OPENSSL_1_1_0 {
BN_nnmod;
BN_num_bits;
BN_num_bits_word;
- BN_oct2bn;
BN_options;
BN_print;
BN_print_fp;