bn_print.c (109998) | bn_print.c (127128) |
---|---|
1/* crypto/bn/bn_print.c */ 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 3 * All rights reserved. 4 * 5 * This package is an SSL implementation written 6 * by Eric Young (eay@cryptsoft.com). 7 * The implementation was written so as to conform with Netscapes SSL. 8 * --- 105 unchanged lines hidden (view full) --- 114 buf=(char *)OPENSSL_malloc(num+3); 115 if ((buf == NULL) || (bn_data == NULL)) 116 { 117 BNerr(BN_F_BN_BN2DEC,ERR_R_MALLOC_FAILURE); 118 goto err; 119 } 120 if ((t=BN_dup(a)) == NULL) goto err; 121 | 1/* crypto/bn/bn_print.c */ 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 3 * All rights reserved. 4 * 5 * This package is an SSL implementation written 6 * by Eric Young (eay@cryptsoft.com). 7 * The implementation was written so as to conform with Netscapes SSL. 8 * --- 105 unchanged lines hidden (view full) --- 114 buf=(char *)OPENSSL_malloc(num+3); 115 if ((buf == NULL) || (bn_data == NULL)) 116 { 117 BNerr(BN_F_BN_BN2DEC,ERR_R_MALLOC_FAILURE); 118 goto err; 119 } 120 if ((t=BN_dup(a)) == NULL) goto err; 121 |
122#define BUF_REMAIN (num+3 - (size_t)(p - buf)) |
|
122 p=buf; 123 lp=bn_data; 124 if (t->neg) *(p++)='-'; 125 if (t->top == 0) 126 { 127 *(p++)='0'; 128 *(p++)='\0'; 129 } --- 4 unchanged lines hidden (view full) --- 134 { 135 *lp=BN_div_word(t,BN_DEC_CONV); 136 lp++; 137 } 138 lp--; 139 /* We now have a series of blocks, BN_DEC_NUM chars 140 * in length, where the last one needs truncation. 141 * The blocks need to be reversed in order. */ | 123 p=buf; 124 lp=bn_data; 125 if (t->neg) *(p++)='-'; 126 if (t->top == 0) 127 { 128 *(p++)='0'; 129 *(p++)='\0'; 130 } --- 4 unchanged lines hidden (view full) --- 135 { 136 *lp=BN_div_word(t,BN_DEC_CONV); 137 lp++; 138 } 139 lp--; 140 /* We now have a series of blocks, BN_DEC_NUM chars 141 * in length, where the last one needs truncation. 142 * The blocks need to be reversed in order. */ |
142 sprintf(p,BN_DEC_FMT1,*lp); | 143 BIO_snprintf(p,BUF_REMAIN,BN_DEC_FMT1,*lp); |
143 while (*p) p++; 144 while (lp != bn_data) 145 { 146 lp--; | 144 while (*p) p++; 145 while (lp != bn_data) 146 { 147 lp--; |
147 sprintf(p,BN_DEC_FMT2,*lp); | 148 BIO_snprintf(p,BUF_REMAIN,BN_DEC_FMT2,*lp); |
148 while (*p) p++; 149 } 150 } 151err: 152 if (bn_data != NULL) OPENSSL_free(bn_data); 153 if (t != NULL) BN_free(t); 154 return(buf); 155 } --- 177 unchanged lines hidden --- | 149 while (*p) p++; 150 } 151 } 152err: 153 if (bn_data != NULL) OPENSSL_free(bn_data); 154 if (t != NULL) BN_free(t); 155 return(buf); 156 } --- 177 unchanged lines hidden --- |