diff --git a/crypto/bio/b_print.c b/crypto/bio/b_print.c index 80dc162ccf34bd7f37073cabccab16045c3d558a..57fa09ee35c643eb71382ccf6c5bb5bb7906204c 100644 --- a/crypto/bio/b_print.c +++ b/crypto/bio/b_print.c @@ -82,14 +82,15 @@ int BIO_printf (BIO *bio, ...) va_list args; char *format; int ret; + size_t retlen; MS_STATIC char hugebuf[1024*2]; /* 10k in one chunk is the limit */ va_start(args, bio); format=va_arg(args, char *); hugebuf[0]='\0'; - dopr(hugebuf, sizeof(hugebuf), &ret, format, args); - ret=BIO_write(bio, hugebuf, ret); + dopr(hugebuf, sizeof(hugebuf), &retlen, format, args); + ret=BIO_write(bio, hugebuf, (int)retlen); va_end(args); return(ret);