From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15738 invoked by alias); 6 Feb 2014 19:29:39 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 15622 invoked by uid 89); 6 Feb 2014 19:29:38 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-3.2 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 06 Feb 2014 19:29:35 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s16JTY0L004738 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 6 Feb 2014 14:29:34 -0500 Received: from barimba.redhat.com (ovpn-113-148.phx2.redhat.com [10.3.113.148]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s16JTUbY029516; Thu, 6 Feb 2014 14:29:33 -0500 From: Tom Tromey To: gdb-patches@sourceware.org Cc: Tom Tromey Subject: [RFC v2 4/9] don't let hexify call strlen Date: Thu, 06 Feb 2014 19:29:00 -0000 Message-Id: <1391714966-12125-5-git-send-email-tromey@redhat.com> In-Reply-To: <1391714966-12125-1-git-send-email-tromey@redhat.com> References: <1391714966-12125-1-git-send-email-tromey@redhat.com> X-SW-Source: 2014-02/txt/msg00128.txt.bz2 hexify had the same issue as bin2hex; and the fix is the same. 2014-02-06 Tom Tromey * common/rsp-low.c (hexify): Never take strlen of argument. 2014-02-06 Tom Tromey * remote-utils.c (monitor_output): Pass explicit length to hexify. --- gdb/ChangeLog | 4 ++++ gdb/common/rsp-low.c | 4 ---- gdb/gdbserver/ChangeLog | 5 +++++ gdb/gdbserver/remote-utils.c | 5 +++-- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/gdb/common/rsp-low.c b/gdb/common/rsp-low.c index 7f0445c..fd6f563 100644 --- a/gdb/common/rsp-low.c +++ b/gdb/common/rsp-low.c @@ -177,10 +177,6 @@ hexify (char *hex, const char *bin, int count) { int i; - /* May use a length, or a nul-terminated string as input. */ - if (count == 0) - count = strlen (bin); - for (i = 0; i < count; i++) { *hex++ = tohex ((*bin >> 4) & 0xf); diff --git a/gdb/gdbserver/remote-utils.c b/gdb/gdbserver/remote-utils.c index b835175..8fd7c4a 100644 --- a/gdb/gdbserver/remote-utils.c +++ b/gdb/gdbserver/remote-utils.c @@ -1558,10 +1558,11 @@ relocate_instruction (CORE_ADDR *to, CORE_ADDR oldloc) void monitor_output (const char *msg) { - char *buf = xmalloc (strlen (msg) * 2 + 2); + int len = strlen (msg); + char *buf = xmalloc (len * 2 + 2); buf[0] = 'O'; - hexify (buf + 1, msg, 0); + hexify (buf + 1, msg, len); putpkt (buf); free (buf); -- 1.8.1.4