Files
mbedtls/library
Manuel Pégourié-Gonnard 0d1db20490 Fix bug in skip_date() (MBEDTLS_X509_CRT_REMOVE_TIME)
Asserting `*p == end` right after setting `end = *p + len` will always fail
unless `len == 0`, which is never the case with properly-formed certificates.

The function x509_skip_dates() is modelled after x509_get_dates() which between
setting `end` and comparing it to `*p` calls mbedtls_x509_get_time() which
advances `*p` to the expected value, which is why this test works in
get_dates().

Since `skip_dates()` has `skip`, not `validate` in its name, and the entire
point of `MBEDTLS_X509_CRT_REMOVE_TIME` is to save code, we don't want to
call the relatively large functions needed to properly parse (and validate)
dates before throwing the parsed dates away, we can just fast-forward to the
end of the sequence.

This makes updating `end` and comparing it to `*p` after the fast-forward
redundant, as the comparison will always be true (unlike the case where we
actually parse the contents of the sequence).

This bug was found by `all.sh test_baremetal` - no need for a new test.
2019-07-30 16:56:25 +02:00
..
2019-02-11 21:13:33 +00:00
2019-04-24 10:51:54 +02:00
2019-04-24 10:51:54 +02:00
2019-04-24 10:51:54 +02:00
2019-04-24 10:51:54 +02:00
2019-04-24 10:51:54 +02:00
2018-11-06 13:12:47 +00:00
2019-06-18 11:05:44 +01:00
2015-09-04 14:21:07 +02:00
2015-09-04 14:21:07 +02:00
2019-04-24 10:51:54 +02:00
2019-04-24 10:51:54 +02:00
2019-07-30 16:56:25 +02:00
2019-06-20 16:33:02 +01:00
2019-07-30 16:33:40 +03:00