From: Andrew Cagney Date: Thu, 15 Nov 2001 02:56:29 +0000 (+0000) Subject: * remote.c: Include "gdb_assert.h". X-Git-Url: http://git.efficios.com/?a=commitdiff_plain;h=1ff9c3d6f7f11b7f95019062eade17e9f4bcd065;p=deliverable%2Fbinutils-gdb.git * remote.c: Include "gdb_assert.h". (tty_input): Wire buffer to 400 bytes. (readsocket): Check tty_input doesn't overflow. (build_remote_gdbarch_data, _initialize_remote): Don't multi-arch tty_input. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index fc02819e8b..009d9487d8 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2001-11-14 Andrew Cagney + + * remote.c: Include "gdb_assert.h". + (tty_input): Wire buffer to 400 bytes. + (readsocket): Check tty_input doesn't overflow. + (build_remote_gdbarch_data, _initialize_remote): Don't multi-arch + tty_input. + 2001-11-14 Michael Snyder * d10v-tdep.c (d10v_pointer_to_address): Use new type flag diff --git a/gdb/remote.c b/gdb/remote.c index e7b7169a2a..b588f3332b 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -37,6 +37,7 @@ #include "remote.h" #include "regcache.h" #include "value.h" +#include "gdb_assert.h" #include #include @@ -5404,8 +5405,9 @@ enum } minitelnet_return; -/* shared between readsocket() and readtty() */ -static char *tty_input; +/* Shared between readsocket() and readtty(). The size is arbitrary, + however all targets are known to support a 400 character packet. */ +static char tty_input[400]; static int escape_count; static int echo_check; @@ -5451,6 +5453,7 @@ readsocket (void) { if (tty_input[echo_check] == data) { + gdb_assert (echo_check <= sizeof (tty_input)); echo_check++; /* Character matched user input: */ continue; /* Continue without echoing it. */ } @@ -5787,9 +5790,6 @@ static void build_remote_gdbarch_data (void) { build_remote_packet_sizes (); - - /* Cisco stuff */ - tty_input = xmalloc (PBUFSIZ); remote_address_size = TARGET_ADDR_BIT; } @@ -5819,7 +5819,6 @@ _initialize_remote (void) /* architecture specific data */ build_remote_gdbarch_data (); - register_gdbarch_swap (&tty_input, sizeof (&tty_input), NULL); register_remote_packet_sizes (); register_gdbarch_swap (&remote_address_size, sizeof (&remote_address_size), NULL);