On Thu, Nov 17, 2022 at 05:53:40PM +0000, Job Snijders wrote:
> Dear all,
>
> I introduced a 'shortlist' feature in rpki-client(8). If the operator
> specifies one or more '-q' options followed by FQDNs, the utility will
> *only* connect to those hosts and skip all others.
>
> $ doas rpki-client -q rpki.ripe.net -q chloe.sobornost.net
> Processing time 84 seconds (75 seconds user, 10 seconds system)
> Skiplist entries: 0
> Route Origin Authorizations: 32459 (0 failed parse, 0 invalid)
> AS Provider Attestations: 0 (0 failed parse, 0 invalid)
> BGPsec Router Certificates: 2
> Certificates: 18750 (0 invalid)
> Trust Anchor Locators: 5 (0 invalid)
> Manifests: 18586 (0 failed parse, 0 stale)
> Certificate revocation lists: 18586
> Ghostbuster records: 1
> Trust Anchor Keys: 0
> Repositories: 8
> Cleanup: removed 1 files, 1270 directories, 67 superfluous
> VRP Entries: 179160 (179160 unique)
> VAP Entries: 0 (0 unique)
>
> $ ls -lahtr /var/cache/rpki-client/
> total 28
> drwxr-xr-x 4 root wheel 512B Nov 10 21:07 ..
> drwxr-xr-x 2 _rpki-client wheel 512B Nov 17 17:35 .rsync
> drwxr-xr-x 7 _rpki-client wheel 512B Nov 17 17:45 ta
> drwxr-xr-x 3 _rpki-client wheel 512B Nov 17 17:47 rpki.ripe.net
> drwxr-xr-x 3 _rpki-client wheel 512B Nov 17 17:47 chloe.sobornost.net
> drwxr-xr-x 7 _rpki-client wheel 1.0K Nov 17 17:47 .
> drwxr-xr-x 5 _rpki-client wheel 512B Nov 17 17:48 .rrdp
>
> This functionality is handy if you want to inspect only specific
> repositories and ignore the rest of the world. Useful for monitoring
> too.
>
> OK? Feedback?
>
> Kind regards,
>
> Job
>
> Index: extern.h
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/extern.h,v
> retrieving revision 1.159
> diff -u -p -r1.159 extern.h
> --- extern.h 4 Nov 2022 12:05:36 -0000 1.159
> +++ extern.h 17 Nov 2022 17:47:34 -0000
> @@ -34,6 +34,15 @@ struct skiplistentry {
> LIST_HEAD(skiplist, skiplistentry);
>
> /*
> + * Shortlist of hosts to connect to (loaded via -q arguments).
> + */
> +struct shortlistentry {
> + LIST_ENTRY(shortlistentry) entry;
> + char *value; /* FQDN */
> +};
> +LIST_HEAD(shortlist, shortlistentry);
> +
Please define these in main.c. The shortlist is not used outside of main.c
Appart from that I agree with tb@ (both about the argument -q and the fact
that rpki-client ends up with a heck of a lot of options and modes).
--
:wq Claudio