summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Ovsienko <infrastation@yandex.ru>2014-06-21 10:20:43 +0400
committerDenis Ovsienko <infrastation@yandex.ru>2014-06-21 10:20:43 +0400
commitf58b1c21204c3fe61daff89c8e3bdec9bb44b6f0 (patch)
treefa85752a1d528e40a8122dd0f427158d88c09df0
parenta694646f7c9cdf6d7756280604f689f3bccddbf2 (diff)
parent8bdce111090f6f880b1829e34d2268f7240b6c19 (diff)
downloadtcpdump-f58b1c21204c3fe61daff89c8e3bdec9bb44b6f0.tar.gz
Merge pull request #396 from zorun/master
Babel: parse sub-TLVs even when they are larger than expected.
-rw-r--r--print-babel.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/print-babel.c b/print-babel.c
index 51de3114..bb3401be 100644
--- a/print-babel.c
+++ b/print-babel.c
@@ -309,12 +309,12 @@ subtlvs_print(netdissect_options *ndo,
case MESSAGE_SUB_TIMESTAMP:
ND_PRINT((ndo, " sub-timestamp"));
if(tlv_type == MESSAGE_HELLO) {
- if(sublen != 4)
+ if(sublen < 4)
goto corrupt;
t1 = EXTRACT_32BITS(cp);
ND_PRINT((ndo, " %s", format_timestamp(t1)));
} else if(tlv_type == MESSAGE_IHU) {
- if(sublen != 8)
+ if(sublen < 8)
goto corrupt;
t1 = EXTRACT_32BITS(cp);
ND_PRINT((ndo, " %s", format_timestamp(t1)));