|
Lines 219-224
Link Here
|
| 219 |
/* read from a ASN1 buffer, advancing the buffer pointer */ |
219 |
/* read from a ASN1 buffer, advancing the buffer pointer */ |
| 220 |
BOOL asn1_read(ASN1_DATA *data, void *p, int len) |
220 |
BOOL asn1_read(ASN1_DATA *data, void *p, int len) |
| 221 |
{ |
221 |
{ |
|
|
222 |
if (data->has_error) |
| 223 |
return False; |
| 224 |
|
| 222 |
if (len < 0 || data->ofs + len < data->ofs || data->ofs + len < len) { |
225 |
if (len < 0 || data->ofs + len < data->ofs || data->ofs + len < len) { |
| 223 |
data->has_error = True; |
226 |
data->has_error = True; |
| 224 |
return False; |
227 |
return False; |
|
Lines 309-314
Link Here
|
| 309 |
/* work out how many bytes are left in this nested tag */ |
312 |
/* work out how many bytes are left in this nested tag */ |
| 310 |
int asn1_tag_remaining(ASN1_DATA *data) |
313 |
int asn1_tag_remaining(ASN1_DATA *data) |
| 311 |
{ |
314 |
{ |
|
|
315 |
if (data->has_error) |
| 316 |
return 0; |
| 317 |
|
| 312 |
if (!data->nesting) { |
318 |
if (!data->nesting) { |
| 313 |
data->has_error = True; |
319 |
data->has_error = True; |
| 314 |
return -1; |
320 |
return -1; |