From: Thadeu Lima de Souza Cascardo Date: Tue, 8 Apr 2014 10:13:31 +0000 (-0300) Subject: Fix other warnings. X-Git-Url: http://git.cascardo.info/?p=cascardo%2Flibreceita.git;a=commitdiff_plain;h=cb7e69c68f48505873b6590f457b4fbed4eeaf67 Fix other warnings. When using -Wextra, there were some signedness related warnings, as well as size warnings, like using %li for pointer diff on 32-bit systems. This was build-tested on both a 32-bit ARM and 64-bit x86_64. --- diff --git a/decfile.c b/decfile.c index e027f90..0baf5d2 100644 --- a/decfile.c +++ b/decfile.c @@ -211,7 +211,7 @@ static int parse_header_2014(struct pmhash *hash, char *buffer) parse("hash", 10); if (p - buffer != RNET_HEADER_HEAD_2014) { - fprintf(stderr, "RNET_HEADER_HEAD_2014 in decfile.h needs to be adjusted to %li\n", p - buffer); + fprintf(stderr, "RNET_HEADER_HEAD_2014 in decfile.h needs to be adjusted to %ti\n", p - buffer); goto out_val; } @@ -295,24 +295,24 @@ static int parse_header_2014(struct pmhash *hash, char *buffer) if (*p++ != '\r') { fprintf(stderr, - "missing CR at the %lith header character\n", + "missing CR at the %tith header character\n", p - buffer); goto out_val; } else if (*p++ != '\n') { fprintf(stderr, - "missing LF at the %lith header character\n", + "missing LF at the %tith header character\n", p - buffer); goto out_val; } else if (*p != 0) { fprintf(stderr, - "missing NUL at the %lith header character\n", + "missing NUL at the %tith header character\n", p - buffer); goto out_val; } else if (p - buffer != RNET_HEADER_SIZE_2014) { - fprintf(stderr, "RNET_HEADER_SIZE_2014 in decfile.h needs to be adjusted to %li,\nor parse_header in decfile.c needs updating\n", p - buffer); + fprintf(stderr, "RNET_HEADER_SIZE_2014 in decfile.h needs to be adjusted to %ti,\nor parse_header in decfile.c needs updating\n", p - buffer); goto out_val; } else if (p - tail != RNET_HEADER_TAIL_2014) { - fprintf(stderr, "RNET_HEADER_TAIL_2014 in decfile.h needs to be adjusted to %li\n", p - tail); + fprintf(stderr, "RNET_HEADER_TAIL_2014 in decfile.h needs to be adjusted to %ti\n", p - tail); goto out_val; } @@ -365,7 +365,7 @@ static int parse_header_2013(struct pmhash *hash, char *buffer) parse("hash", 10); if (p - buffer != RNET_HEADER_HEAD_2013) { - fprintf(stderr, "RNET_HEADER_HEAD_2013 in decfile.h needs to be adjusted to %li\n", p - buffer); + fprintf(stderr, "RNET_HEADER_HEAD_2013 in decfile.h needs to be adjusted to %ti\n", p - buffer); goto out_val; } @@ -444,24 +444,24 @@ static int parse_header_2013(struct pmhash *hash, char *buffer) if (*p++ != '\r') { fprintf(stderr, - "missing CR at the %lith header character\n", + "missing CR at the %tith header character\n", p - buffer); goto out_val; } else if (*p++ != '\n') { fprintf(stderr, - "missing LF at the %lith header character\n", + "missing LF at the %tith header character\n", p - buffer); goto out_val; } else if (*p != 0) { fprintf(stderr, - "missing NUL at the %lith header character\n", + "missing NUL at the %tith header character\n", p - buffer); goto out_val; } else if (p - buffer != RNET_HEADER_SIZE_2013) { - fprintf(stderr, "RNET_HEADER_SIZE_2013 in decfile.h needs to be adjusted to %li,\nor parse_header in decfile.c needs updating\n", p - buffer); + fprintf(stderr, "RNET_HEADER_SIZE_2013 in decfile.h needs to be adjusted to %ti,\nor parse_header in decfile.c needs updating\n", p - buffer); goto out_val; } else if (p - tail != RNET_HEADER_TAIL_2013) { - fprintf(stderr, "RNET_HEADER_TAIL_2013 in decfile.h needs to be adjusted to %li\n", p - tail); + fprintf(stderr, "RNET_HEADER_TAIL_2013 in decfile.h needs to be adjusted to %ti\n", p - tail); goto out_val; } diff --git a/pmhash.c b/pmhash.c index d228856..ca9cfca 100644 --- a/pmhash.c +++ b/pmhash.c @@ -44,7 +44,7 @@ struct pmhash * pmhash_new(void) int pmhash_add(struct pmhash **pmhash, char *key, void *val) { - int i; + unsigned int i; struct pmhash *hash = *pmhash; i = 0; repeat: @@ -74,7 +74,7 @@ out: void * pmhash_get(struct pmhash *pmhash, char *key) { - int i; + unsigned int i; for (i = 0; i < pmhash->len; i++) { if (pmhash->items[i].key == NULL) return NULL; @@ -86,7 +86,7 @@ void * pmhash_get(struct pmhash *pmhash, char *key) void pmhash_del(struct pmhash *pmhash) { - int i; + unsigned int i; for (i = 0; i < pmhash->len; i++) { if (pmhash->items[i].key == NULL) break; diff --git a/rnet_message.c b/rnet_message.c index 51d84dc..95d8b41 100644 --- a/rnet_message.c +++ b/rnet_message.c @@ -74,8 +74,8 @@ static int add_field(struct rnet_message **message, char *key, int klen, int n = 0; char *buffer; struct rnet_message *msg = *message; - if ((msg->alen - msg->len) < (klen + vlen + 3)) { - if (rnet_message_expand(message, MAX(msg->len, klen + vlen + 3))) + if ((msg->alen - msg->len) < (size_t) (klen + vlen + 3)) { + if (rnet_message_expand(message, MAX(msg->len, (size_t) (klen + vlen + 3)))) return -ENOMEM; msg = *message; } @@ -147,18 +147,16 @@ int rnet_message_parse(struct rnet_message *msg, char *skey, { char * buffer = msg->buffer; size_t len = msg->len; - int i = 0; + unsigned int i = 0; unsigned int j; int b; char *key; - int klen; + unsigned int klen; /* skip first byte */ i++; while (i < len) { j = (unsigned char)buffer[i]; b = j & 0x80; - if (b) - ; j = j & 0x7f; i++; key = buffer + i; diff --git a/rnet_message.h b/rnet_message.h index 35fe9ed..d19cd9c 100644 --- a/rnet_message.h +++ b/rnet_message.h @@ -23,8 +23,8 @@ #include struct rnet_message { - int len; - int alen; + size_t len; + size_t alen; char buffer[]; }; diff --git a/rnetclient.c b/rnetclient.c index 4ae761f..3273a9c 100644 --- a/rnetclient.c +++ b/rnetclient.c @@ -289,7 +289,7 @@ static int rnet_send(gnutls_session_t session, char *buffer, size_t len, int hea This chunk size worked at the first try, uploading a ~100KiB file, so let's stick with it. */ - const int maxc = 64472; + const unsigned int maxc = 64472; if (header && len > maxc) return -1; @@ -347,7 +347,8 @@ static void save_rec_file(char *cpf, char *buffer, int len, const struct rnetcli int fd; char cwd[PATH_MAX]; char *path, *fname, *tmp; - size_t fname_len, r; + size_t fname_len; + ssize_t r; /* If the user provided the output directory where she wishes to save the receipt, then we use it. Otherwise, we save the file in the current working directory (CWD). */ @@ -403,7 +404,7 @@ static void save_rec_file(char *cpf, char *buffer, int len, const struct rnetcli } do { r = write(fd, buffer, len); - } while (r != len && errno == EAGAIN); + } while (r < 0 && errno == EAGAIN); if (r != len) fprintf(stderr, "Could not write to receipt file: %s", strerror(errno)); else