I think you intend for that to be two seperate diffs, not merged into one.

For connect < 15 seconds, I think that is a bit strict.

For IO stalling 15 seconds, I suspect such IO stalls happen more than we
know, and will do harm to RPKI processing results.

I don't see any way this can be tested in less than 24 hours.

Job Snijders <j...@openbsd.org> wrote:

> On Tue, Aug 02, 2022 at 03:59:40PM +0200, Claudio Jeker wrote:
> > What makes you think that 15sec is enough to open connections in all
> > scenarios? I feel this is one of those changes that just shows that
> > maybe the current connect timeout from the system is too conservative.
> 
> Yeah, maybe. How about this instead?
> 
> Seems to work well for me.
> 
> Kind regards,
> 
> Job
> 
> Index: extern.h
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/extern.h,v
> retrieving revision 1.143
> diff -u -p -r1.143 extern.h
> --- extern.h  27 Jun 2022 10:18:27 -0000      1.143
> +++ extern.h  2 Aug 2022 18:10:00 -0000
> @@ -727,6 +727,9 @@ int       mkpathat(int, const char *);
>  #define MAX_HTTP_REQUESTS    64
>  #define MAX_RSYNC_REQUESTS   16
>  
> +/* How many seconds to wait for a connection to succeed. */
> +#define MAX_CONTIMEOUT               15
> +
>  /* Maximum allowd repositories per tal */
>  #define MAX_REPO_PER_TAL     1000
>  
> Index: http.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/http.c,v
> retrieving revision 1.62
> diff -u -p -r1.62 http.c
> --- http.c    24 May 2022 09:22:45 -0000      1.62
> +++ http.c    2 Aug 2022 18:10:01 -0000
> @@ -70,7 +70,7 @@
>  #define HTTP_USER_AGENT              "OpenBSD rpki-client"
>  #define HTTP_BUF_SIZE                (32 * 1024)
>  #define HTTP_IDLE_TIMEOUT    10
> -#define HTTP_IO_TIMEOUT              (3 * 60)
> +#define HTTP_IO_TIMEOUT              15
>  #define MAX_CONTENTLEN               (2 * 1024 * 1024 * 1024LL)
>  #define NPFDS                        (MAX_HTTP_REQUESTS + 1)
>  
> Index: rsync.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/rsync.c,v
> retrieving revision 1.38
> diff -u -p -r1.38 rsync.c
> --- rsync.c   24 May 2022 09:20:49 -0000      1.38
> +++ rsync.c   2 Aug 2022 18:10:01 -0000
> @@ -312,6 +312,7 @@ proc_rsync(char *prog, char *bind_addr, 
>                       args[i++] = "-rt";
>                       args[i++] = "--no-motd";
>                       args[i++] = "--max-size=" STRINGIFY(MAX_FILE_SIZE);
> +                     args[i++] = "--contimeout=" STRINGIFY(MAX_CONTIMEOUT);
>                       args[i++] = "--timeout=180";
>                       args[i++] = "--include=*/";
>                       args[i++] = "--include=*.cer";
> 

Reply via email to