diff options
Diffstat (limited to 'crypto/bio/bio_print.c')
| -rw-r--r-- | crypto/bio/bio_print.c | 152 |
1 files changed, 74 insertions, 78 deletions
diff --git a/crypto/bio/bio_print.c b/crypto/bio/bio_print.c index 1934a6884251..b8f562117467 100644 --- a/crypto/bio/bio_print.c +++ b/crypto/bio/bio_print.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2025 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2026 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -23,71 +23,71 @@ */ #ifdef HAVE_LONG_DOUBLE -# define LDOUBLE long double +#define LDOUBLE long double #else -# define LDOUBLE double +#define LDOUBLE double #endif static int fmtstr(char **, char **, size_t *, size_t *, - const char *, int, int, int); + const char *, int, int, int); static int fmtint(char **, char **, size_t *, size_t *, - int64_t, int, int, int, int); + int64_t, int, int, int, int); #ifndef OPENSSL_SYS_UEFI static int fmtfp(char **, char **, size_t *, size_t *, - LDOUBLE, int, int, int, int); + LDOUBLE, int, int, int, int); #endif static int doapr_outch(char **, char **, size_t *, size_t *, int); static int _dopr(char **sbuffer, char **buffer, - size_t *maxlen, size_t *retlen, int *truncated, - const char *format, va_list args); + size_t *maxlen, size_t *retlen, int *truncated, + const char *format, va_list args); /* format read states */ -#define DP_S_DEFAULT 0 -#define DP_S_FLAGS 1 -#define DP_S_MIN 2 -#define DP_S_DOT 3 -#define DP_S_MAX 4 -#define DP_S_MOD 5 -#define DP_S_CONV 6 -#define DP_S_DONE 7 +#define DP_S_DEFAULT 0 +#define DP_S_FLAGS 1 +#define DP_S_MIN 2 +#define DP_S_DOT 3 +#define DP_S_MAX 4 +#define DP_S_MOD 5 +#define DP_S_CONV 6 +#define DP_S_DONE 7 /* format flags - Bits */ /* left-aligned padding */ -#define DP_F_MINUS (1 << 0) +#define DP_F_MINUS (1 << 0) /* print an explicit '+' for a value with positive sign */ -#define DP_F_PLUS (1 << 1) +#define DP_F_PLUS (1 << 1) /* print an explicit ' ' for a value with positive sign */ -#define DP_F_SPACE (1 << 2) +#define DP_F_SPACE (1 << 2) /* print 0/0x prefix for octal/hex and decimal point for floating point */ -#define DP_F_NUM (1 << 3) +#define DP_F_NUM (1 << 3) /* print leading zeroes */ -#define DP_F_ZERO (1 << 4) -/* print HEX in UPPPERcase */ -#define DP_F_UP (1 << 5) +#define DP_F_ZERO (1 << 4) +/* print HEX in UPPERcase */ +#define DP_F_UP (1 << 5) /* treat value as unsigned */ -#define DP_F_UNSIGNED (1 << 6) +#define DP_F_UNSIGNED (1 << 6) /* conversion flags */ -#define DP_C_SHORT 1 -#define DP_C_LONG 2 -#define DP_C_LDOUBLE 3 -#define DP_C_LLONG 4 -#define DP_C_SIZE 5 +#define DP_C_SHORT 1 +#define DP_C_LONG 2 +#define DP_C_LDOUBLE 3 +#define DP_C_LLONG 4 +#define DP_C_SIZE 5 /* Floating point formats */ -#define F_FORMAT 0 -#define E_FORMAT 1 -#define G_FORMAT 2 +#define F_FORMAT 0 +#define E_FORMAT 1 +#define G_FORMAT 2 /* some handy macros */ #define char_to_int(p) (p - '0') -#define OSSL_MAX(p,q) ((p >= q) ? p : q) +#define OSSL_MAX(p, q) ((p >= q) ? p : q) static int _dopr(char **sbuffer, - char **buffer, - size_t *maxlen, - size_t *retlen, int *truncated, const char *format, va_list args) + char **buffer, + size_t *maxlen, + size_t *retlen, int *truncated, const char *format, va_list args) { char ch; int64_t value; @@ -115,9 +115,8 @@ _dopr(char **sbuffer, case DP_S_DEFAULT: if (ch == '%') state = DP_S_FLAGS; - else - if (!doapr_outch(sbuffer, buffer, &currlen, maxlen, ch)) - return 0; + else if (!doapr_outch(sbuffer, buffer, &currlen, maxlen, ch)) + return 0; ch = *format++; break; case DP_S_FLAGS: @@ -232,7 +231,7 @@ _dopr(char **sbuffer, break; } if (!fmtint(sbuffer, buffer, &currlen, maxlen, value, 10, min, - max, flags)) + max, flags)) return 0; break; case 'X': @@ -260,8 +259,8 @@ _dopr(char **sbuffer, break; } if (!fmtint(sbuffer, buffer, &currlen, maxlen, value, - ch == 'o' ? 8 : (ch == 'u' ? 10 : 16), - min, max, flags)) + ch == 'o' ? 8 : (ch == 'u' ? 10 : 16), + min, max, flags)) return 0; break; #ifndef OPENSSL_SYS_UEFI @@ -271,7 +270,7 @@ _dopr(char **sbuffer, else fvalue = va_arg(args, double); if (!fmtfp(sbuffer, buffer, &currlen, maxlen, fvalue, min, max, - flags, F_FORMAT)) + flags, F_FORMAT)) return 0; break; case 'E': @@ -283,7 +282,7 @@ _dopr(char **sbuffer, else fvalue = va_arg(args, double); if (!fmtfp(sbuffer, buffer, &currlen, maxlen, fvalue, min, max, - flags, E_FORMAT)) + flags, E_FORMAT)) return 0; break; case 'G': @@ -295,7 +294,7 @@ _dopr(char **sbuffer, else fvalue = va_arg(args, double); if (!fmtfp(sbuffer, buffer, &currlen, maxlen, fvalue, min, max, - flags, G_FORMAT)) + flags, G_FORMAT)) return 0; break; #else @@ -310,7 +309,7 @@ _dopr(char **sbuffer, #endif case 'c': if (!doapr_outch(sbuffer, buffer, &currlen, maxlen, - va_arg(args, int))) + va_arg(args, int))) return 0; break; case 's': @@ -322,22 +321,20 @@ _dopr(char **sbuffer, max = *maxlen; } if (!fmtstr(sbuffer, buffer, &currlen, maxlen, strvalue, - flags, min, max)) + flags, min, max)) return 0; break; case 'p': value = (size_t)va_arg(args, void *); if (!fmtint(sbuffer, buffer, &currlen, maxlen, - value, 16, min, max, flags | DP_F_NUM)) + value, 16, min, max, flags | DP_F_NUM)) return 0; break; - case 'n': - { - int *num; - num = va_arg(args, int *); - *num = currlen; - } - break; + case 'n': { + int *num; + num = va_arg(args, int *); + *num = currlen; + } break; case '%': if (!doapr_outch(sbuffer, buffer, &currlen, maxlen, ch)) return 0; @@ -378,9 +375,9 @@ _dopr(char **sbuffer, static int fmtstr(char **sbuffer, - char **buffer, - size_t *currlen, - size_t *maxlen, const char *value, int flags, int min, int max) + char **buffer, + size_t *currlen, + size_t *maxlen, const char *value, int flags, int min, int max) { int padlen; size_t strln; @@ -430,9 +427,9 @@ fmtstr(char **sbuffer, static int fmtint(char **sbuffer, - char **buffer, - size_t *currlen, - size_t *maxlen, int64_t value, int base, int min, int max, int flags) + char **buffer, + size_t *currlen, + size_t *maxlen, int64_t value, int base, int min, int max, int flags) { int signvalue = 0; const char *prefix = ""; @@ -473,8 +470,7 @@ fmtint(char **sbuffer, convert[place] = 0; zpadlen = max - place; - spadlen = - min - OSSL_MAX(max, place) - (signvalue ? 1 : 0) - strlen(prefix); + spadlen = min - OSSL_MAX(max, place) - (signvalue ? 1 : 0) - strlen(prefix); if (zpadlen < 0) zpadlen = 0; if (spadlen < 0) @@ -564,9 +560,9 @@ static long roundv(LDOUBLE value) static int fmtfp(char **sbuffer, - char **buffer, - size_t *currlen, - size_t *maxlen, LDOUBLE fvalue, int min, int max, int flags, int style) + char **buffer, + size_t *currlen, + size_t *maxlen, LDOUBLE fvalue, int min, int max, int flags, int style) { int signvalue = 0; LDOUBLE ufvalue; @@ -609,7 +605,7 @@ fmtfp(char **sbuffer, } else if (ufvalue < 0.0001) { realstyle = E_FORMAT; } else if ((max == 0 && ufvalue >= 10) - || (max > 0 && ufvalue >= pow_10(max))) { + || (max > 0 && ufvalue >= pow_10(max))) { realstyle = E_FORMAT; } else { realstyle = F_FORMAT; @@ -792,7 +788,7 @@ fmtfp(char **sbuffer, while (fplace > 0) { if (!doapr_outch(sbuffer, buffer, currlen, maxlen, - fconvert[--fplace])) + fconvert[--fplace])) return 0; } } @@ -809,17 +805,17 @@ fmtfp(char **sbuffer, else ech = 'E'; if (!doapr_outch(sbuffer, buffer, currlen, maxlen, ech)) - return 0; + return 0; if (exp < 0) { if (!doapr_outch(sbuffer, buffer, currlen, maxlen, '-')) - return 0; + return 0; } else { if (!doapr_outch(sbuffer, buffer, currlen, maxlen, '+')) - return 0; + return 0; } while (eplace > 0) { if (!doapr_outch(sbuffer, buffer, currlen, maxlen, - econvert[--eplace])) + econvert[--eplace])) return 0; } } @@ -834,11 +830,11 @@ fmtfp(char **sbuffer, #endif /* OPENSSL_SYS_UEFI */ -#define BUFFER_INC 1024 +#define BUFFER_INC 1024 static int doapr_outch(char **sbuffer, - char **buffer, size_t *currlen, size_t *maxlen, int c) + char **buffer, size_t *currlen, size_t *maxlen, int c) { /* If we haven't at least one buffer, someone has done a big booboo */ if (!ossl_assert(*sbuffer != NULL || buffer != NULL)) @@ -905,9 +901,9 @@ int BIO_vprintf(BIO *bio, const char *format, va_list args) { int ret; size_t retlen; - char hugebuf[1024 * 2]; /* Was previously 10k, which is unreasonable - * in small-stack environments, like threads - * or DOS programs. */ + char hugebuf[1024 * 2]; /* Was previously 10k, which is unreasonable + * in small-stack environments, like threads + * or DOS programs. */ char *hugebufp = hugebuf; size_t hugebufsize = sizeof(hugebuf); char *dynbuf = NULL; @@ -915,7 +911,7 @@ int BIO_vprintf(BIO *bio, const char *format, va_list args) dynbuf = NULL; if (!_dopr(&hugebufp, &dynbuf, &hugebufsize, &retlen, &ignored, format, - args)) { + args)) { OPENSSL_free(dynbuf); return -1; } |
