622 |
s_ptr = &s; |
s_ptr = &s; |
623 |
s_ptr->p = data; |
s_ptr->p = data; |
624 |
/* Skip first two bytes */ |
/* Skip first two bytes */ |
625 |
in_uint16(s_ptr, len); |
in_uint16_le(s_ptr, len); |
626 |
|
|
627 |
/* Skip three strings */ |
/* Skip three strings */ |
628 |
for (i = 0; i < 3; i++) |
for (i = 0; i < 3; i++) |
629 |
{ |
{ |
630 |
in_uint32(s_ptr, len); |
in_uint32_le(s_ptr, len); |
631 |
s_ptr->p += len; |
s_ptr->p += len; |
632 |
/* Make sure that we won't be past the end of data after |
/* Make sure that we won't be past the end of data after |
633 |
* reading the next length value |
* reading the next length value |
640 |
return; |
return; |
641 |
} |
} |
642 |
} |
} |
643 |
in_uint32(s_ptr, len); |
in_uint32_le(s_ptr, len); |
644 |
if (s_ptr->p + len > data + length) |
if (s_ptr->p + len > data + length) |
645 |
{ |
{ |
646 |
printf("Error in parsing licence key.\n"); |
printf("Error in parsing licence key.\n"); |