Mercurial > hg > freeDiameter
diff libfdcore/cnxctx.c @ 1192:48759e3f7611
Reject more quickly invalid messages if possible
author | Sebastien Decugis <sdecugis@freediameter.net> |
---|---|
date | Tue, 11 Jun 2013 10:05:50 +0800 |
parents | 6a1042d8075b |
children | 8c4dd4b693c6 |
line wrap: on
line diff
--- a/libfdcore/cnxctx.c Tue Jun 11 09:18:52 2013 +0800 +++ b/libfdcore/cnxctx.c Tue Jun 11 10:05:50 2013 +0800 @@ -807,6 +807,9 @@ } received += ret; + + if (header[0] != DIAMETER_VERSION) + break; /* No need to wait for 4 bytes in this case */ } while (received < sizeof(header)); rcv_data.length = ((size_t)header[1] << 16) + ((size_t)header[2] << 8) + (size_t)header[3];