Um pequeno programa de teste para obter alguns campos de uma declaração.
[cascardo/libreceita.git] / rnet_message.c
index 83a762b..95d8b41 100644 (file)
@@ -1,5 +1,6 @@
 /*
  *  Copyright (C) 2013  Thadeu Lima de Souza Cascardo <cascardo@minaslivre.org>
+ *  Copyright (C) 2014  Alexandre Oliva <lxoliva@fsfla.org>
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
@@ -73,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;
        }
@@ -146,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;