tree 6d9632ce866840b478f0ad0713695f991fd3d9e0
parent 62daad3b9a7beb61e030932d305e287cb60e46de
author Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com> 1564488685 +0200
committer Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com> 1564498585 +0200

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.
