X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilccore%2Fsilcid.c;h=57524d36af8addbbab813db00bb24c59cea79143;hb=8c94186e5b81937b67ce0862c1f3e2cb1f484719;hp=6e892c087b2a8dedb675bbf4206408873fe48637;hpb=bdb7922732dfb2aca2e2af1ad6224c6b1a8c917c;p=crypto.git diff --git a/lib/silccore/silcid.c b/lib/silccore/silcid.c index 6e892c08..57524d36 100644 --- a/lib/silccore/silcid.c +++ b/lib/silccore/silcid.c @@ -67,7 +67,7 @@ SilcIDPayload silc_id_payload_parse(const unsigned char *payload, silc_buffer_pull(&buffer, 4); - if (newp->len > buffer.len || newp->len > SILC_PACKET_MAX_ID_LEN) + if (newp->len > buffer.len - 4 || newp->len > SILC_PACKET_MAX_ID_LEN) goto err; ret = silc_buffer_unformat(&buffer,