On Wed, May 04, 2022 at 03:51:02PM +0200, Theo Buehler wrote:
> I had output from rpki-client -f something piped into less. After an
> hour rpki-client couldn't take it any longer and decided to move on to
> a better place. It also left a residue via syslog on its way out. I
> don't think it should do that in file mode or offline mode:
>
> Index: main.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/main.c,v
> retrieving revision 1.201
> diff -u -p -r1.201 main.c
> --- main.c 4 May 2022 13:07:35 -0000 1.201
> +++ main.c 4 May 2022 13:46:13 -0000
> @@ -689,7 +689,7 @@ process_start(const char *title, int *fd
> /* change working directory to the cache directory */
> if (fchdir(cachefd) == -1)
> err(1, "fchdir");
> - if (timeout)
> + if (!noop && timeout > 0)
> alarm(timeout);
> close(pair[1]);
> *fd = pair[0];
> @@ -923,7 +923,7 @@ main(int argc, char *argv[])
> rrdppid = -1;
> }
>
> - if (timeout) {
> + if (!noop && timeout > 0) {
> /*
> * Commit suicide eventually
> * cron will normally start a new one
>
I agree that the alarm should not be armed for -f mode but I would keep it
for -n mode. At least I think the timeout protects also from excessive
work in case the cache was provided through other means.
--
:wq Claudio