1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-02-22 14:10:34 +00:00

#5732: Change length argument type to uint32_t for LTEP messages

This commit is contained in:
Mike Gelfand 2015-10-05 23:10:52 +00:00
parent fcbc2915eb
commit 1e6a3c2039

View file

@ -983,7 +983,7 @@ sendLtepHandshake (tr_peerMsgs * msgs)
}
static void
parseLtepHandshake (tr_peerMsgs * msgs, int len, struct evbuffer * inbuf)
parseLtepHandshake (tr_peerMsgs * msgs, uint32_t len, struct evbuffer * inbuf)
{
int64_t i;
tr_variant val, * sub;
@ -1005,7 +1005,11 @@ parseLtepHandshake (tr_peerMsgs * msgs, int len, struct evbuffer * inbuf)
return;
}
dbgmsg (msgs, "here is the handshake: [%*.*s]", len, len, tmp);
/* arbitrary limit, should be more than enough */
if (len <= 4096)
dbgmsg (msgs, "here is the handshake: [%*.*s]", (int) len, (int) len, tmp);
else
dbgmsg (msgs, "handshake length is too big (%" PRIu32 "), printing skipped", len);
/* does the peer prefer encrypted connections? */
if (tr_variantDictFindInt (&val, TR_KEY_e, &i)) {
@ -1083,7 +1087,7 @@ parseLtepHandshake (tr_peerMsgs * msgs, int len, struct evbuffer * inbuf)
}
static void
parseUtMetadata (tr_peerMsgs * msgs, int msglen, struct evbuffer * inbuf)
parseUtMetadata (tr_peerMsgs * msgs, uint32_t msglen, struct evbuffer * inbuf)
{
tr_variant dict;
char * msg_end;
@ -1160,7 +1164,7 @@ parseUtMetadata (tr_peerMsgs * msgs, int msglen, struct evbuffer * inbuf)
}
static void
parseUtPex (tr_peerMsgs * msgs, int msglen, struct evbuffer * inbuf)
parseUtPex (tr_peerMsgs * msgs, uint32_t msglen, struct evbuffer * inbuf)
{
int loaded = 0;
uint8_t * tmp = tr_new (uint8_t, msglen);
@ -1225,10 +1229,12 @@ parseUtPex (tr_peerMsgs * msgs, int msglen, struct evbuffer * inbuf)
static void sendPex (tr_peerMsgs * msgs);
static void
parseLtep (tr_peerMsgs * msgs, int msglen, struct evbuffer * inbuf)
parseLtep (tr_peerMsgs * msgs, uint32_t msglen, struct evbuffer * inbuf)
{
uint8_t ltep_msgid;
assert (msglen > 0);
tr_peerIoReadUint8 (msgs->io, inbuf, &ltep_msgid);
msglen--;