NetBSD Problem Report #45841
From www@NetBSD.org Mon Jan 16 08:25:39 2012
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id 2A7A463B931
for <gnats-bugs@gnats.NetBSD.org>; Mon, 16 Jan 2012 08:25:39 +0000 (UTC)
Message-Id: <20120116082538.03E5263B84C@www.NetBSD.org>
Date: Mon, 16 Jan 2012 08:25:37 +0000 (UTC)
From: henning.petersen@t-online.de
Reply-To: henning.petersen@t-online.de
To: gnats-bugs@NetBSD.org
Subject: Incorrect use of sizeof in tcpdump.
X-Send-Pr-Version: www-1.0
>Number: 45841
>Category: bin
>Synopsis: Incorrect use of sizeof in tcpdump.
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: bin-bug-people
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jan 16 08:30:00 +0000 2012
>Closed-Date: Sun Jan 22 15:17:40 +0000 2012
>Last-Modified: Sun Jan 22 15:17:40 +0000 2012
>Originator: Henning Petersen
>Release: NetBSD-current
>Organization:
>Environment:
>Description:
Incorrect use of sizeof in print-eigrip, print-ldp.c, print-lmp.c, print-lspping.c, print-rsvp.c and print-slow.c .
Found by cppcheck.
>How-To-Repeat:
>Fix:
diff -u -p -r1.2 print-eigrp.c
--- external/bsd/tcpdump/dist/print-eigrp.c 5 Dec 2010 05:11:30 -0000 1.2
+++ external/bsd/tcpdump/dist/print-eigrp.c 28 Dec 2011 07:36:44 -0000
@@ -285,7 +285,7 @@ eigrp_print(register const u_char *pptr,
if (eigrp_tlv_len < sizeof(struct eigrp_tlv_header) ||
eigrp_tlv_len > tlen) {
- print_unknown_data(tptr+sizeof(sizeof(struct eigrp_tlv_header)),"\n\t ",tlen);
+ print_unknown_data(tptr+sizeof(struct eigrp_tlv_header),"\n\t ",tlen);
return;
}
@@ -473,7 +473,7 @@ eigrp_print(register const u_char *pptr,
}
/* do we want to see an additionally hexdump ? */
if (vflag > 1)
- print_unknown_data(tptr+sizeof(sizeof(struct eigrp_tlv_header)),"\n\t ",
+ print_unknown_data(tptr+sizeof(struct eigrp_tlv_header),"\n\t ",
eigrp_tlv_len-sizeof(struct eigrp_tlv_header));
tptr+=eigrp_tlv_len;
===================================================================
diff -u -p -r1.2 print-ldp.c
--- external/bsd/tcpdump/dist/print-ldp.c 5 Dec 2010 05:11:30 -0000 1.2
+++ external/bsd/tcpdump/dist/print-ldp.c 28 Dec 2011 07:36:44 -0000
@@ -614,7 +614,7 @@ ldp_msg_print(register const u_char *ppt
}
/* do we want to see an additionally hexdump ? */
if (vflag > 1 || hexdump==TRUE)
- print_unknown_data(tptr+sizeof(sizeof(struct ldp_msg_header)),"\n\t ",
+ print_unknown_data(tptr+sizeof(struct ldp_msg_header),"\n\t ",
msg_len);
tptr += msg_len+4;
===================================================================
diff -u -p -r1.2 print-lmp.c
--- external/bsd/tcpdump/dist/print-lmp.c 5 Dec 2010 05:11:30 -0000 1.2
+++ external/bsd/tcpdump/dist/print-lmp.c 28 Dec 2011 07:36:45 -0000
@@ -876,7 +876,7 @@ lmp_print(register const u_char *pptr, r
}
/* do we want to see an additionally hexdump ? */
if (vflag > 1 || hexdump==TRUE)
- print_unknown_data(tptr+sizeof(sizeof(struct lmp_object_header)),"\n\t ",
+ print_unknown_data(tptr+sizeof(struct lmp_object_header),"\n\t ",
lmp_obj_len-sizeof(struct lmp_object_header));
tptr+=lmp_obj_len;
===================================================================
diff -u -p -r1.2 print-lspping.c
--- external/bsd/tcpdump/dist/print-lspping.c 5 Dec 2010 05:11:30 -0000 1.2
+++ external/bsd/tcpdump/dist/print-lspping.c 28 Dec 2011 07:36:46 -0000
@@ -883,7 +883,7 @@ lspping_print(register const u_char *ppt
}
/* do we want to see an additionally tlv hexdump ? */
if (vflag > 1 || tlv_hexdump==TRUE)
- print_unknown_data(tptr+sizeof(sizeof(struct lspping_tlv_header)),"\n\t ",
+ print_unknown_data(tptr+sizeof(struct lspping_tlv_header),"\n\t ",
lspping_tlv_len);
===================================================================
diff -u -p -r1.2 print-rsvp.c
--- external/bsd/tcpdump/dist/print-rsvp.c 5 Dec 2010 05:11:30 -0000 1.2
+++ external/bsd/tcpdump/dist/print-rsvp.c 28 Dec 2011 07:36:48 -0000
@@ -1795,7 +1795,7 @@ _U_
}
/* do we also want to see a hex dump ? */
if (vflag > 1 || hexdump==TRUE)
- print_unknown_data(tptr+sizeof(sizeof(struct rsvp_object_header)),"\n\t ", /* FIXME indentation */
+ print_unknown_data(tptr+sizeof(struct rsvp_object_header),"\n\t ", /* FIXME indentation */
rsvp_obj_len-sizeof(struct rsvp_object_header));
tptr+=rsvp_obj_len;
===================================================================
diff -u -p -r1.2 print-slow.c
--- external/bsd/tcpdump/dist/print-slow.c 5 Dec 2010 05:11:30 -0000 1.2
+++ external/bsd/tcpdump/dist/print-slow.c 28 Dec 2011 07:36:48 -0000
@@ -373,7 +373,7 @@ void slow_marker_lacp_print(register con
tlv_header->type != LACP_TLV_TERMINATOR &&
tlv_header->type != MARKER_TLV_TERMINATOR) {
printf("\n\t-----trailing data-----");
- print_unknown_data(tptr+sizeof(sizeof(struct tlv_header_t)),"\n\t ",tlen);
+ print_unknown_data(tptr+sizeof(struct tlv_header_t),"\n\t ",tlen);
return;
}
@@ -446,7 +446,7 @@ void slow_marker_lacp_print(register con
}
/* do we want to see an additional hexdump ? */
if (vflag > 1) {
- print_unknown_data(tptr+sizeof(sizeof(struct tlv_header_t)),"\n\t ",
+ print_unknown_data(tptr+sizeof(struct tlv_header_t),"\n\t ",
tlv_len-sizeof(struct tlv_header_t));
}
>Release-Note:
>Audit-Trail:
From: "Christos Zoulas" <christos@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/45841 CVS commit: src/external/bsd/tcpdump/dist
Date: Mon, 16 Jan 2012 12:34:19 -0500
Module Name: src
Committed By: christos
Date: Mon Jan 16 17:34:19 UTC 2012
Modified Files:
src/external/bsd/tcpdump/dist: print-eigrp.c print-ldp.c print-lmp.c
print-lspping.c print-rsvp.c print-slow.c
Log Message:
PR/45841: Henning Petersen: One sizeof is enough.
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/external/bsd/tcpdump/dist/print-eigrp.c \
src/external/bsd/tcpdump/dist/print-ldp.c \
src/external/bsd/tcpdump/dist/print-lmp.c \
src/external/bsd/tcpdump/dist/print-lspping.c \
src/external/bsd/tcpdump/dist/print-rsvp.c \
src/external/bsd/tcpdump/dist/print-slow.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: open->closed
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Sun, 22 Jan 2012 15:17:40 +0000
State-Changed-Why:
Christos fixed it
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.