]> git.ipfire.org Git - thirdparty/FORT-validator.git/commit
Stop rejecting RPPs if unrecognizable absent files are fileListed
authorAlberto Leiva Popper <ydahhrk@gmail.com>
Wed, 22 Jan 2025 22:38:37 +0000 (16:38 -0600)
committerAlberto Leiva Popper <ydahhrk@gmail.com>
Wed, 22 Jan 2025 23:26:24 +0000 (17:26 -0600)
commit7f3094d8d50c32df208ed81e54a1da78e33167d9
treebe4f5c497c46d780b9de8b0fde945459bc874561
parent8bf1e0b19d393af3d6fbd7e74516b4514a1594b4
Stop rejecting RPPs if unrecognizable absent files are fileListed

RFC 9286:

> The RP MUST acquire all of the files enumerated in the manifest
> (fileList) from the publication point. If there are files listed in
> the manifest that cannot be retrieved from the publication point,
> the RP MUST treat this as a failed fetch.

This was clashing with Fort's default rsync filters because they were
preventing unknown extensions from being downloaded:

> rsync (...) --include=*.cer --include=*.crl --include=*.gbr \
> --include=*.mft --include=*.roa --exclude=* (...)

Which will be a problem whenever the IETF defines new legal repository
extensions, such as .asa.

Therefore, ignore unknown manifest fileList extensions. This technically
violates RFC 9286, but it's necessary evil given that we can't trust
repositories to always only serve proper RPKI content.

Fixes #155.
src/crypto/hash.c
src/object/manifest.c
src/rpp.c
src/rpp.h