[systemd-devel] [PATCH] fix compiler warnings

Ronny Chevalier chevalier.ronny at gmail.com
Fri Nov 1 05:09:08 PDT 2013


Yes, already fixed by David

2013/11/1 Markus Mayer <lotharlutz at gmx.de>:
> On 10/31/2013 07:26 PM, Ronny Chevalier wrote:
>>
>> multiple warnings like
>>
>> src/socket-proxy/socket-proxyd.c: In function ‘transfer_data_cb’:
>> src/socket-proxy/socket-proxyd.c:237:25: warning: format ‘%ld’ expects
>> argument of type ‘long int’, but argument 6 has type ‘size_t’ [-Wformat=]
>>                           log_debug("Buffer now has %ld bytes full.",
>> c->buffer_filled_len);
>> ---
>>   src/socket-proxy/socket-proxyd.c | 12 ++++++------
>>   1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/src/socket-proxy/socket-proxyd.c
>> b/src/socket-proxy/socket-proxyd.c
>> index 054a27a..34b1c15 100644
>> --- a/src/socket-proxy/socket-proxyd.c
>> +++ b/src/socket-proxy/socket-proxyd.c
>> @@ -129,7 +129,7 @@ static int send_buffer(struct connection *sender) {
>>            * it does. */
>>           while (sender->buffer_filled_len > sender->buffer_sent_len) {
>>                   len = send(receiver->fd, sender->buffer +
>> sender->buffer_sent_len, sender->buffer_filled_len -
>> sender->buffer_sent_len, 0);
>> -                log_debug("send(%d, ...)=%ld", receiver->fd, len);
>> +                log_debug("send(%d, ...)=%zd", receiver->fd, len);
>>                   if (len < 0) {
>>                           if (errno != EWOULDBLOCK && errno != EAGAIN) {
>>                                   log_error("Error %d in send to fd=%d:
>> %m", errno, receiver->fd);
>> @@ -147,7 +147,7 @@ static int send_buffer(struct connection *sender) {
>>                   sender->buffer_sent_len += len;
>>           }
>>
>> -        log_debug("send(%d, ...) completed with %lu bytes still
>> buffered.", receiver->fd, sender->buffer_filled_len -
>> sender->buffer_sent_len);
>> +        log_debug("send(%d, ...) completed with %zd bytes still
>> buffered.", receiver->fd, sender->buffer_filled_len -
>> sender->buffer_sent_len);
>>
>>           /* Detect a would-block state or partial send. */
>>           if (sender->buffer_filled_len > sender->buffer_sent_len) {
>> @@ -206,13 +206,13 @@ static int transfer_data_cb(sd_event_source *s, int
>> fd, uint32_t revents, void *
>>           log_debug("Got event revents=%d from fd=%d (conn %p).", revents,
>> fd, c);
>>
>>           if (revents & EPOLLIN) {
>> -                log_debug("About to recv up to %lu bytes from fd=%d
>> (%lu/BUFFER_SIZE).", BUFFER_SIZE - c->buffer_filled_len, fd,
>> c->buffer_filled_len);
>> +                log_debug("About to recv up to %zd bytes from fd=%d
>> (%zd/BUFFER_SIZE).", BUFFER_SIZE - c->buffer_filled_len, fd,
>> c->buffer_filled_len);
>>
>>                   /* Receive until the buffer's full, there's no more
>> data,
>>                    * or the client/server disconnects. */
>>                   while (c->buffer_filled_len < BUFFER_SIZE) {
>>                           len = recv(fd, c->buffer + c->buffer_filled_len,
>> BUFFER_SIZE - c->buffer_filled_len, 0);
>> -                        log_debug("recv(%d, ...)=%ld", fd, len);
>> +                        log_debug("recv(%d, ...)=%zd", fd, len);
>>                           if (len < 0) {
>>                                   if (errno != EWOULDBLOCK && errno !=
>> EAGAIN) {
>>                                           log_error("Error %d in recv from
>> fd=%d: %m", errno, fd);
>> @@ -232,9 +232,9 @@ static int transfer_data_cb(sd_event_source *s, int
>> fd, uint32_t revents, void *
>>                           }
>>
>>                           assert(len > 0);
>> -                        log_debug("Recording that the buffer got %ld more
>> bytes full.", len);
>> +                        log_debug("Recording that the buffer got %zd more
>> bytes full.", len);
>>                           c->buffer_filled_len += len;
>> -                        log_debug("Buffer now has %ld bytes full.",
>> c->buffer_filled_len);
>> +                        log_debug("Buffer now has %zd bytes full.",
>> c->buffer_filled_len);
>>                   }
>>
>>                   /* Try sending the data immediately. */
>>
>
> According to the 'man 3 printf' %zd refers to ssize_t to print out size_t
> you should use %zu.
>
>
> Regards
>
> Markus
>
> _______________________________________________
> systemd-devel mailing list
> systemd-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/systemd-devel


More information about the systemd-devel mailing list