Not sure on what I was tripping when writing filepathcmp() but it makes no sense to use strcasecmp() there. It compares paths in the filesystem and these are case-sensitive.
-- :wq Claudio Index: main.c =================================================================== RCS file: /cvs/src/usr.sbin/rpki-client/main.c,v retrieving revision 1.124 diff -u -p -r1.124 main.c --- main.c 26 Mar 2021 10:01:51 -0000 1.124 +++ main.c 26 Mar 2021 13:45:17 -0000 @@ -86,7 +86,7 @@ struct filepath { static inline int filepathcmp(struct filepath *a, struct filepath *b) { - return strcasecmp(a->file, b->file); + return strcmp(a->file, b->file); } RB_HEAD(filepath_tree, filepath);