mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
r2122: merge from trunk (-r 2120):
Fix bug found by Love H?\195?\182rnquist ?\195?\133strand: asn1_write_Integer needs to push
stuff little endian.
(This used to be commit 79bee828fb
)
This commit is contained in:
parent
eed08c84e2
commit
776d90d801
@ -107,15 +107,23 @@ BOOL asn1_pop_tag(ASN1_DATA *data)
|
||||
return True;
|
||||
}
|
||||
|
||||
static void push_int_littleendian(ASN1_DATA *data, int i)
|
||||
{
|
||||
uint8_t lowest = i & 0xFF;
|
||||
|
||||
i = i >> 8;
|
||||
if (i != 0)
|
||||
push_int_littleendian(data, i);
|
||||
|
||||
asn1_write_uint8(data, lowest);
|
||||
}
|
||||
|
||||
|
||||
/* write an integer */
|
||||
BOOL asn1_write_Integer(ASN1_DATA *data, int i)
|
||||
{
|
||||
if (!asn1_push_tag(data, ASN1_INTEGER)) return False;
|
||||
do {
|
||||
asn1_write_uint8(data, i);
|
||||
i = i >> 8;
|
||||
} while (i);
|
||||
push_int_littleendian(data, i);
|
||||
return asn1_pop_tag(data);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user