4
--- tcpdump-3.8.2/print-ldp.c.t4 2003-11-16 10:36:27.000000000 +0100
5
+++ tcpdump-3.8.2/print-ldp.c 2005-04-28 14:17:15.000000000 +0200
7
LDP_MASK_U_BIT(EXTRACT_16BITS(&ldp_msg_header->type)) ? "continue processing" : "ignore");
9
msg_tptr=tptr+sizeof(struct ldp_msg_header);
10
- msg_tlen=msg_len-sizeof(struct ldp_msg_header)+4; /* Type & Length fields not included */
11
+ /* Type & Length fields not included */
12
+ msg_tlen = (msg_len >= (sizeof(struct ldp_msg_header) + 4)) ? (msg_len - sizeof(struct ldp_msg_header) + 4) : 0;
14
/* did we capture enough for fully decoding the message ? */
15
if (!TTEST2(*tptr, msg_len))
17
print_unknown_data(tptr+sizeof(sizeof(struct ldp_msg_header)),"\n\t ",
31
--- tcpdump-3.8.2/print-ascii.c.t4 2003-12-29 12:05:10.000000000 +0100
32
+++ tcpdump-3.8.2/print-ascii.c 2005-04-28 14:05:42.000000000 +0200
36
nshorts = (u_int) length / sizeof(u_short);
41
while (--nshorts >= 0) {