BIO_puts(bp,"Modulo multiply test failed!\n");
fprintf(stderr,"Modulo multiply test failed!\n");
int test_mod_mul(BIO *bp, BN_CTX *ctx)	{	BIGNUM *a,*b,*c,*d,*e;	int i;	a=BN_new();	b=BN_new();	c=BN_new();	d=BN_new();	e=BN_new();	BN_rand(c,1024,0,0); /**/	for (i=0; i<10; i++)		{		BN_rand(a,475+i*10,0,0); /**/		BN_rand(b,425+i*10,0,0); /**/		a->neg=rand_neg();		b->neg=rand_neg();	/*	if (bp == NULL)			for (j=0; j<100; j++)				BN_mod_mul(d,a,b,c,ctx);*/ /**/		if (!BN_mod_mul(e,a,b,c,ctx))			{			unsigned long l;			while ((l=ERR_get_error()))				fprintf(stderr,"ERROR:%s\n",					ERR_error_string(l,NULL));			exit(1);			}		if (bp != NULL)			{			if (!results)				{				BN_print(bp,a);				BIO_puts(bp," * ");				BN_print(bp,b);				BIO_puts(bp," % ");				BN_print(bp,c);				BIO_puts(bp," - ");				}			BN_print(bp,e);			BIO_puts(bp,"\n");			}		BN_mul(d,a,b,ctx);		BN_sub(d,d,e);		BN_div(a,b,d,c,ctx);		if(!BN_is_zero(b))		    {		    BIO_puts(bp,"Modulo multiply test failed!\n");		    return 0;		    }		}	BN_free(a);	BN_free(b);	BN_free(c);	BN_free(d);	BN_free(e);	return(1);	}