while (n-- > 0)
while (n--)
BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret)	{	unsigned int i,m;	unsigned int n;	BN_ULONG l;	if (ret == NULL) ret=BN_new();	if (ret == NULL) return(NULL);	bn_check_top(ret);	l=0;	n=len;	if (n == 0)		{		ret->top=0;		return(ret);		}	if (bn_expand(ret,(int)(n+2)*8) == NULL)		return(NULL);	i=((n-1)/BN_BYTES)+1;	m=((n-1)%(BN_BYTES));	ret->top=i;	ret->neg=0;	while (n-- > 0)		{		l=(l<<8L)| *(s++);		if (m-- == 0)			{			ret->d[--i]=l;			l=0;			m=BN_BYTES-1;			}		}	/* need to call this due to clear byte at top if avoiding	 * having the top bit set (-ve number) */	bn_correct_top(ret);	return(ret);	}