X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=rnet_message.c;h=51d84dc00a6bf1c4433f3546b96988bf3f2d6b16;hb=00fb6934ea3272aea506893bba196a59524a3261;hp=f47d78c8549735f23058a946e047f00d3bbd7c5e;hpb=5f124a78b9b2f7e98cad8d851bb5835001b86846;p=cascardo%2Frnetclient.git diff --git a/rnet_message.c b/rnet_message.c index f47d78c..51d84dc 100644 --- a/rnet_message.c +++ b/rnet_message.c @@ -1,5 +1,6 @@ /* * Copyright (C) 2013 Thadeu Lima de Souza Cascardo + * Copyright (C) 2014 Alexandre Oliva * * 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 @@ -151,11 +152,10 @@ int rnet_message_parse(struct rnet_message *msg, char *skey, int b; char *key; int klen; - char *kcopy; /* skip first byte */ i++; while (i < len) { - j = buffer[i]; + j = (unsigned char)buffer[i]; b = j & 0x80; if (b) ; @@ -164,10 +164,10 @@ int rnet_message_parse(struct rnet_message *msg, char *skey, key = buffer + i; klen = j; i += j; - j = buffer[i]; + j = (unsigned char)buffer[i]; i++; if (b) - j = j << 8 | buffer[i++]; + j = j << 8 | (unsigned char)buffer[i++]; *value = buffer + i; *vlen = j; i += j;