projects
/
oweals
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix VC warnings about unary minus to an unsigned type.
[oweals/openssl.git]
/
crypto
/
asn1
/
a_object.c
diff --git
a/crypto/asn1/a_object.c
b/crypto/asn1/a_object.c
index 463469d188bc5536809873c021a00105ee1a2d95..79f0ecd2a868405f79d6561fa412e42362023d0c 100644
(file)
--- a/
crypto/asn1/a_object.c
+++ b/
crypto/asn1/a_object.c
@@
-26,7
+26,7
@@
int i2d_ASN1_OBJECT(const ASN1_OBJECT *a, unsigned char **pp)
return (0);
objsize = ASN1_object_size(0, a->length, V_ASN1_OBJECT);
return (0);
objsize = ASN1_object_size(0, a->length, V_ASN1_OBJECT);
- if (pp == NULL)
+ if (pp == NULL
|| objsize == -1
)
return objsize;
p = *pp;
return objsize;
p = *pp;
@@
-127,8
+127,12
@@
int a2d_ASN1_OBJECT(unsigned char *out, int olen, const char *buf, int num)
if (tmp == NULL)
goto err;
}
if (tmp == NULL)
goto err;
}
- while (blsize--)
- tmp[i++] = (unsigned char)BN_div_word(bl, 0x80L);
+ while (blsize--) {
+ BN_ULONG t = BN_div_word(bl, 0x80L);
+ if (t == (BN_ULONG)-1)
+ goto err;
+ tmp[i++] = (unsigned char)t;
+ }
} else {
for (;;) {
} else {
for (;;) {