On Thu, Mar 18, 2021 at 11:25:25AM +0100, Claudio Jeker wrote:
> This diff aims at removing some warnings seen in -portable.
> 
> - gcc has a hard time to realize when a variable like noop ensures that
> an other variable is not used.
> 
> - Similar the switch () statements in http.c include all possible enums but
> gcc warns about control reaches end of non-void function.
> 
> - Assigning the return value of asprintf() to a size_t is problematic. Do it
> in two steps.
> 
> - Also remove the no longer used repo index from struct entity.

ok tb

> 
> -- 
> :wq Claudio
> 
> Index: extern.h
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/extern.h,v
> retrieving revision 1.53
> diff -u -p -r1.53 extern.h
> --- extern.h  5 Mar 2021 17:15:19 -0000       1.53
> +++ extern.h  18 Mar 2021 09:11:43 -0000
> @@ -271,7 +271,6 @@ enum rtype {
>  struct       entity {
>       enum rtype       type; /* type of entity (not RTYPE_EOF) */
>       char            *file; /* local path to file */
> -     ssize_t          repo; /* repo index or <0 if w/o repo */
>       int              has_pkey; /* whether pkey/sz is specified */
>       unsigned char   *pkey; /* public key (optional) */
>       size_t           pkeysz; /* public key length (optional) */
> Index: http.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/http.c,v
> retrieving revision 1.5
> diff -u -p -r1.5 http.c
> --- http.c    4 Mar 2021 15:44:13 -0000       1.5
> +++ http.c    18 Mar 2021 07:33:20 -0000
> @@ -596,7 +596,7 @@ static int
>  http_request(struct http_connection *conn)
>  {
>       char *host, *epath, *modified_since;
> -     int with_port = 0;
> +     int r, with_port = 0;
>  
>       /* TODO adjust request for HTTP proxy setups */
>  
> @@ -634,7 +634,7 @@ http_request(struct http_connection *con
>  
>       free(conn->buf);
>       conn->bufpos = 0;
> -     if ((conn->bufsz = asprintf(&conn->buf,
> +     if ((r = asprintf(&conn->buf,
>           "GET /%s HTTP/1.1\r\n"
>           "Connection: close\r\n"
>           "User-Agent: " HTTP_USER_AGENT "\r\n"
> @@ -642,6 +642,7 @@ http_request(struct http_connection *con
>           epath, host,
>           modified_since ? modified_since : "")) == -1)
>               err(1, NULL);
> +     conn->bufsz = r;
>  
>       free(epath);
>       free(host);
> @@ -1032,6 +1033,7 @@ http_handle(struct http_connection *conn
>       case STATE_FREE:
>               errx(1, "bad http state");
>       }
> +     errx(1, "unknown http state");
>  }
>  
>  static int
> @@ -1084,6 +1086,7 @@ http_nextstep(struct http_connection *co
>       case STATE_FREE:
>               errx(1, "bad http state");
>       }
> +     errx(1, "unknown http state");
>  }
>  
>  static int
> Index: main.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/main.c,v
> retrieving revision 1.119
> diff -u -p -r1.119 main.c
> --- main.c    15 Mar 2021 08:56:31 -0000      1.119
> +++ main.c    18 Mar 2021 09:12:55 -0000
> @@ -1018,8 +1018,10 @@ main(int argc, char *argv[])
>  
>               close(fd[0]);
>               rsync = fd[1];
> -     } else
> +     } else {
>               rsync = -1;
> +             rsyncpid = -1;
> +     }
>  
>       /*
>        * Create a process that will fetch data via https.
> @@ -1051,8 +1053,10 @@ main(int argc, char *argv[])
>  
>               close(fd[0]);
>               http = fd[1];
> -     } else
> +     } else {
>               http = -1;
> +             httppid = -1;
> +     }
>  
>       if (pledge("stdio rpath wpath cpath fattr sendfd", NULL) == -1)
>               err(1, "pledge");
> 

Reply via email to