RT783: Minor optimization to ASN1_INTEGER_set
Remove local variable and avoid extra assignment. Reviewed-by: Emilia Kasper <emilia@silkandcyanide.net>
This commit is contained in:
parent
cf8bac4456
commit
c753e71e0a
@ -337,9 +337,7 @@ int ASN1_INTEGER_set(ASN1_INTEGER *a, long v)
|
|||||||
int j,k;
|
int j,k;
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
unsigned char buf[sizeof(long)+1];
|
unsigned char buf[sizeof(long)+1];
|
||||||
long d;
|
|
||||||
|
|
||||||
a->type=V_ASN1_INTEGER;
|
|
||||||
if (a->length < (int)(sizeof(long)+1))
|
if (a->length < (int)(sizeof(long)+1))
|
||||||
{
|
{
|
||||||
if (a->data != NULL)
|
if (a->data != NULL)
|
||||||
@ -352,18 +350,19 @@ int ASN1_INTEGER_set(ASN1_INTEGER *a, long v)
|
|||||||
ASN1err(ASN1_F_ASN1_INTEGER_SET,ERR_R_MALLOC_FAILURE);
|
ASN1err(ASN1_F_ASN1_INTEGER_SET,ERR_R_MALLOC_FAILURE);
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
d=v;
|
if (v < 0)
|
||||||
if (d < 0)
|
|
||||||
{
|
{
|
||||||
d= -d;
|
v= -v;
|
||||||
a->type=V_ASN1_NEG_INTEGER;
|
a->type=V_ASN1_NEG_INTEGER;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
a->type=V_ASN1_INTEGER;
|
||||||
|
|
||||||
for (i=0; i<sizeof(long); i++)
|
for (i=0; i<sizeof(long); i++)
|
||||||
{
|
{
|
||||||
if (d == 0) break;
|
if (v == 0) break;
|
||||||
buf[i]=(int)d&0xff;
|
buf[i]=(int)v&0xff;
|
||||||
d>>=8;
|
v>>=8;
|
||||||
}
|
}
|
||||||
j=0;
|
j=0;
|
||||||
for (k=i-1; k >=0; k--)
|
for (k=i-1; k >=0; k--)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user