aboutsummaryrefslogtreecommitdiff
path: root/gdb/ser-tcp.c
AgeCommit message (Collapse)AuthorFilesLines
2007-01-09Copyright updates for 2007.Daniel Jacobowitz1-2/+2
2006-02-10 * NEWS: Mention native Windows support.Daniel Jacobowitz1-17/+24
* Makefile.in (gdb_select_h, ser_tcp_h): New. (ALLDEPFILES): Add ser-mingw.c. (event-loop.o, inflow.o, mingw-hdep.o, posix-hdep.o, ser-base.o) (ser-tcp.o, ser-unix.o): Update. (ser-mingw.o): New rule. * configure: Regenerated. * configure.ac: Add ser-mingw.o for mingw32. * ser-mingw.c: New file. * event-loop.c: Include "gdb_select.h". (gdb_select): Remove, moved to mingw-hdep.c and posix-hdep.c. * ser-base.c: Include "gdb_select.h". (ser_base_wait_for): Use gdb_select. * serial.c (serial_for_fd): New function. (serial_fdopen): Try "terminal" before "hardwire". Initialize the allocated struct serial. (serial_wait_handle): New function. * serial.h (serial_for_fd, serial_wait_handle): New prototypes. (struct serial_ops) [USE_WIN32API]: Add wait_handle. * gdb_select.h: New file. * ser-tcp.c: Include "ser-tcp.h". Remove unused "ser-unix.h" include. (net_close, net_read_prim, net_write_prim): Make global. (net_open): Likewise. Pass an exception set to select. Whitespace fix. Document why we can not use gdb_select. (_initialize_ser_tcp) [USE_WIN32API]: Do not register TCP support here. * ser-tcp.h: New file. * inflow.c (gdb_has_a_terminal): Don't initialize stdin_serial here. (handle_sigio): Use gdb_select. (initialize_stdin_serial): New function. * terminal.h (initialize_stdin_serial): New prototype. * top.c (gdb_init): Call initialize_stdin_serial. * mingw-hdep.c (gdb_select): New function, moved from gdb_select in event-loop.c. Add exception condition support. Use serial_for_fd and serial_wait_handle. Fix timeout handling. * posix-hdep.c: Include "gdb_select.h". (gdb_select): New function. * remote-st.c (connect_command): Use gdb_select. * ser-unix.c: Include "gdb_select.h". (hardwire_send_break, wait_for): Use gdb_select.
2005-12-17 * breakpoint.c:Eli Zaretskii1-3/+3
* arm-tdep.c: * ia64-tdep.c: * i386-tdep.c: * hpread.c: * hppa-tdep.c: * hppa-hpux-tdep.c: * gnu-nat.c: * gdbtypes.c: * gdbarch.h: * gdbarch.c: * eval.c: * dwarf2read.c: * dbxread.c: * copying: * symfile.c: * stabsread.c: * sh64-tdep.c: * sh-tdep.c: * s390-tdep.c: * rs6000-tdep.c: * remote.c: * remote-mips.c: * mips-tdep.c: * mdebugread.c: * linux-nat.c: * infrun.c: * xcoffread.c: * win32-nat.c: * valops.c: * utils.c: * tracepoint.c: * target.c: * symtab.c: * c-exp.y: * ada-valprint.c: * ada-typeprint.c: * ada-lex.l: * ada-lang.h: * ada-lang.c: * ada-exp.y: * alphafbsd-tdep.c: * alphabsd-tdep.h: * alphabsd-tdep.c: * alphabsd-nat.c: * alpha-tdep.h: * alpha-tdep.c: * alpha-osf1-tdep.c: * alpha-nat.c: * alpha-mdebug-tdep.c: * alpha-linux-tdep.c: * alpha-linux-nat.c: * aix-thread.c: * abug-rom.c: * arch-utils.c: * annotate.h: * annotate.c: * amd64obsd-tdep.c: * amd64obsd-nat.c: * amd64nbsd-tdep.c: * amd64nbsd-nat.c: * amd64fbsd-tdep.c: * amd64fbsd-nat.c: * amd64bsd-nat.c: * amd64-tdep.h: * amd64-tdep.c: * amd64-sol2-tdep.c: * amd64-nat.h: * amd64-nat.c: * amd64-linux-tdep.c: * amd64-linux-nat.c: * alphanbsd-tdep.c: * block.h: * block.c: * bfd-target.h: * bfd-target.c: * bcache.h: * bcache.c: * ax.h: * ax-general.c: * ax-gdb.h: * ax-gdb.c: * avr-tdep.c: * auxv.h: * auxv.c: * armnbsd-tdep.c: * armnbsd-nat.c: * arm-tdep.h: * arm-linux-nat.c: * arch-utils.h: * charset.c: * call-cmds.h: * c-valprint.c: * c-typeprint.c: * c-lang.h: * c-lang.c: * buildsym.h: * buildsym.c: * bsd-uthread.h: * bsd-uthread.c: * bsd-kvm.h: * bsd-kvm.c: * breakpoint.h: * core-regset.c: * core-aout.c: * completer.h: * completer.c: * complaints.h: * complaints.c: * command.h: * coffread.c: * coff-solib.h: * coff-solib.c: * coff-pe-read.h: * coff-pe-read.c: * cli-out.h: * cli-out.c: * charset.h: * dink32-rom.c: * dictionary.h: * dictionary.c: * demangle.c: * defs.h: * dcache.h: * dcache.c: * d10v-tdep.c: * cpu32bug-rom.c: * cp-valprint.c: * cp-support.h: * cp-support.c: * cp-namespace.c: * cp-abi.h: * cp-abi.c: * corelow.c: * corefile.c: * environ.c: * elfread.c: * dwarfread.c: * dwarf2loc.c: * dwarf2expr.h: * dwarf2expr.c: * dwarf2-frame.h: * dwarf2-frame.c: * dve3900-rom.c: * dummy-frame.h: * dummy-frame.c: * dsrec.c: * doublest.h: * doublest.c: * disasm.h: * disasm.c: * fork-child.c: * findvar.c: * fbsd-nat.h: * fbsd-nat.c: * f-valprint.c: * f-typeprint.c: * f-lang.h: * f-lang.c: * expression.h: * expprint.c: * exec.h: * exec.c: * exceptions.h: * exceptions.c: * event-top.h: * event-top.c: * event-loop.h: * event-loop.c: * gdb.c: * gdb-stabs.h: * gdb-events.h: * gdb-events.c: * gcore.c: * frv-tdep.h: * frv-tdep.c: * frv-linux-tdep.c: * frame.h: * frame.c: * frame-unwind.h: * frame-unwind.c: * frame-base.h: * frame-base.c: * gdb_vfork.h: * gdb_thread_db.h: * gdb_string.h: * gdb_stat.h: * gdb_regex.h: * gdb_ptrace.h: * gdb_proc_service.h: * gdb_obstack.h: * gdb_locale.h: * gdb_dirent.h: * gdb_curses.h: * gdb_assert.h: * gdbarch.sh: * gdb.h: * hpux-thread.c: * hppabsd-nat.c: * hppa-tdep.h: * hpacc-abi.c: * h8300-tdep.c: * gregset.h: * go32-nat.c: * gnu-v3-abi.c: * gnu-v2-abi.h: * gnu-v2-abi.c: * gnu-nat.h: * glibc-tdep.c: * gdbtypes.h: * gdbcore.h: * gdbcmd.h: * i386nbsd-tdep.c: * i386nbsd-nat.c: * i386gnu-tdep.c: * i386gnu-nat.c: * i386fbsd-tdep.c: * i386fbsd-nat.c: * i386bsd-tdep.c: * i386bsd-nat.h: * i386bsd-nat.c: * i386-tdep.h: * i386-sol2-nat.c: * i386-nto-tdep.c: * i386-nat.c: * i386-linux-tdep.h: * i386-linux-tdep.c: * i386-linux-nat.c: * i386-cygwin-tdep.c: * inf-ttrace.c: * inf-ptrace.h: * inf-ptrace.c: * inf-loop.h: * inf-loop.c: * inf-child.h: * inf-child.c: * ia64-tdep.h: * ia64-linux-nat.c: * i387-tdep.h: * i387-tdep.c: * i386v4-nat.c: * i386v-nat.c: * i386obsd-tdep.c: * i386obsd-nat.c: * kod.c: * jv-valprint.c: * jv-typeprint.c: * jv-lang.h: * jv-lang.c: * irix5-nat.c: * iq2000-tdep.c: * interps.h: * interps.c: * inftarg.c: * inflow.h: * inflow.c: * inferior.h: * infcmd.c: * infcall.h: * infcall.c: * inf-ttrace.h: * m32r-tdep.h: * m32r-tdep.c: * m32r-rom.c: * m32r-linux-tdep.c: * m32r-linux-nat.c: * m2-valprint.c: * m2-typeprint.c: * m2-lang.h: * m2-lang.c: * lynx-nat.c: * linux-thread-db.c: * linux-nat.h: * linespec.c: * libunwind-frame.h: * libunwind-frame.c: * language.h: * language.c: * macroexp.c: * macrocmd.c: * m88kbsd-nat.c: * m88k-tdep.h: * m88k-tdep.c: * m68klinux-tdep.c: * m68klinux-nat.c: * m68kbsd-tdep.c: * m68kbsd-nat.c: * m68k-tdep.h: * m68k-tdep.c: * mips-linux-nat.c: * mips-irix-tdep.c: * minsyms.c: * memattr.h: * memattr.c: * mem-break.c: * mdebugread.h: * main.h: * main.c: * macrotab.h: * macrotab.c: * macroscope.h: * macroscope.c: * macroexp.h: * nbsd-tdep.c: * mt-tdep.c: * monitor.h: * monitor.c: * mn10300-tdep.h: * mn10300-tdep.c: * mn10300-linux-tdep.c: * mipsv4-nat.c: * mipsread.c: * mipsnbsd-tdep.h: * mipsnbsd-tdep.c: * mipsnbsd-nat.c: * mips64obsd-tdep.c: * mips64obsd-nat.c: * mips-tdep.h: * mips-mdebug-tdep.c: * mips-linux-tdep.c: * osabi.h: * osabi.c: * ocd.h: * ocd.c: * observer.c: * objfiles.h: * objfiles.c: * objc-lang.h: * objc-lang.c: * objc-exp.y: * nto-tdep.h: * nto-tdep.c: * nto-procfs.c: * nlmread.c: * nbsd-tdep.h: * ppcobsd-tdep.c: * ppcobsd-nat.c: * ppcnbsd-tdep.h: * ppcnbsd-tdep.c: * ppcnbsd-nat.c: * ppcbug-rom.c: * ppc-tdep.h: * ppc-sysv-tdep.c: * ppc-linux-tdep.c: * ppc-linux-nat.c: * ppc-bdm.c: * parser-defs.h: * parse.c: * p-valprint.c: * p-typeprint.c: * p-lang.h: * p-lang.c: * remote-fileio.h: * remote-fileio.c: * remote-est.c: * remote-e7000.c: * regset.h: * regset.c: * reggroups.h: * reggroups.c: * regcache.h: * regcache.c: * proc-why.c: * proc-service.c: * proc-events.c: * printcmd.c: * ppcobsd-tdep.h: * sentinel-frame.h: * sentinel-frame.c: * scm-valprint.c: * scm-tags.h: * scm-lang.h: * scm-lang.c: * scm-exp.c: * s390-tdep.h: * rom68k-rom.c: * remote.h: * remote-utils.c: * remote-st.c: * remote-sim.c: * remote-sds.c: * remote-rdp.c: * remote-rdi.c: * remote-hms.c: * sim-regno.h: * shnbsd-tdep.h: * shnbsd-tdep.c: * shnbsd-nat.c: * sh-tdep.h: * serial.h: * serial.c: * ser-unix.h: * ser-unix.c: * ser-tcp.c: * ser-pipe.c: * ser-go32.c: * ser-e7kpc.c: * ser-base.h: * ser-base.c: * solib.c: * solib-svr4.h: * solib-svr4.c: * solib-sunos.c: * solib-som.h: * solib-som.c: * solib-pa64.h: * solib-pa64.c: * solib-osf.c: * solib-null.c: * solib-legacy.c: * solib-irix.c: * solib-frv.c: * solib-aix5.c: * sol-thread.c: * sparc64-linux-tdep.c: * sparc64-linux-nat.c: * sparc-tdep.h: * sparc-tdep.c: * sparc-sol2-tdep.c: * sparc-sol2-nat.c: * sparc-nat.h: * sparc-nat.c: * sparc-linux-tdep.c: * sparc-linux-nat.c: * source.h: * source.c: * somread.c: * solist.h: * solib.h: * std-regs.c: * stack.h: * stack.c: * stabsread.h: * sparcobsd-tdep.c: * sparcnbsd-tdep.c: * sparcnbsd-nat.c: * sparc64obsd-tdep.c: * sparc64nbsd-tdep.c: * sparc64nbsd-nat.c: * sparc64fbsd-tdep.c: * sparc64fbsd-nat.c: * sparc64-tdep.h: * sparc64-tdep.c: * sparc64-sol2-tdep.c: * sparc64-nat.c: * ui-file.c: * typeprint.h: * typeprint.c: * tramp-frame.h: * tramp-frame.c: * trad-frame.h: * trad-frame.c: * tracepoint.h: * top.c: * tobs.inc: * thread.c: * terminal.h: * target.h: * symfile.h: * stop-gdb.c: * vaxbsd-nat.c: * vax-tdep.h: * vax-tdep.c: * vax-nat.c: * varobj.h: * varobj.c: * value.h: * value.c: * valprint.h: * valprint.c: * v850-tdep.c: * uw-thread.c: * user-regs.c: * ui-out.h: * ui-out.c: * ui-file.h: * xcoffsolib.h: * xcoffsolib.c: * wrapper.c: * wince.c: * wince-stub.h: * wince-stub.c: * vaxobsd-tdep.c: * vaxnbsd-tdep.c: * gdb_gcore.sh: * copying.c: * configure.ac: * aclocal.m4: * acinclude.m4: * reply_mig_hack.awk: * observer.sh: * gdb_mbuild.sh: * arm-linux-tdep.c: * blockframe.c: * dbug-rom.c: * environ.h: * dwarf2loc.h: * gdb-events.sh: * glibc-tdep.h: * gdb_wait.h: * gdbthread.h: * i386-sol2-tdep.c: * hppabsd-tdep.c: * hppa-linux-nat.c: * hppa-hpux-nat.c: * ia64-linux-tdep.c: * infptrace.c: * linespec.h: * maint.c: * mips-mdebug-tdep.h: * remote-m32r-sdi.c: * s390-nat.c: * rs6000-nat.c: * remote-utils.h: * sh3-rom.c: * sh-linux-tdep.c: * top.h: * symtab.h: * symmisc.c: * symfile-mem.c: * srec.h: * user-regs.h: * version.h: * valarith.c: * xstormy16-tdep.c: * wrapper.h: * Makefile.in: * f-exp.y: * cris-tdep.c: * cp-name-parser.y: * procfs.c: * proc-utils.h: * proc-flags.c: * proc-api.c: * p-exp.y: * m68hc11-tdep.c: * m2-exp.y: * kod.h: * kod-cisco.c: * jv-exp.y: * hppa-linux-tdep.c: Add (c) after Copyright. Update the FSF address.
2005-07-24 * ser-tcp.c (close): Define as a function-like macro on MinGW.Mark Mitchell1-1/+1
2005-06-13* ser-tcp.c: Tewak comment.Mark Kettenis1-2/+7
[!HAVE_SOCKLEN_T]: Typedef socklen_t. * configure.ac: Add check for socklen_t. * configure, config.in: Regenerate.
2005-05-262005-05-26 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-1/+2
* command.h (add_setshow_integer_cmd): Make VAR an integer. * cli/cli-decode.c (add_setshow_integer_cmd): Update to match. * valops.c (value_string): Add a cast. * eval.c (evaluate_subexp_standard): Use gdb_byte for byte buffers. * breakpoint.c (re_enable_breakpoints_in_shlibs): Use gdb_byte for byte buffers. * target.h (struct target_ops): For to_insert_hw_breakpoint and to_remove_hw_breakpoint use gdb_byte for byte buffer parameters. * breakpoint.h (struct bp_location): Make shadow_contents a gdb_byte buffer. * cli/cli-setshow.c (do_setshow_command): Fix cast. * cli/cli-dump.c (restore_section_callback) (restore_binary_file): Use gdb_byte for byte buffers. * proc-service.c (ps_ptwrite, ps_ptread, ps_pdwrite): Fix casts. (ps_xfer_memory): Use gdb_byte for byte buffers. * tracepoint.c (mem2hex): Use gdb_byte for byte buffers, and char for string buffers. * ser-tcp.c (net_open): Make len a socklen_t.
2005-04-21 * configure.ac: On MinGW, define USE_WIN32API and link withMark Mitchell1-8/+57
-lws2_32. * ser-tcp.c (<winsock2.h>): Include, for Windows. (ETIMEDOUT): Define, for Windows. (ioctl): Likewise. (closesocket): Define, for POSIX. (net_open): Adjust for differences in socket functions between Windows and UNIX. (net_close): Likweise. (net_read_prim): New function. (net_write_prim): Likewise. (_initialize_ser_tcp): Initialize winsock. Fill in read_prim and write_prim. * ser-unix.h (ser_unix_readcchar): Remove. (ser_unix_read_prim): Declare. (ser_unix_write_prim): Likewise. * ser-unix.c (generic_readchar): Move to ser-base.c. (ser_unix_wait_for): Likewise. (do_unix_readchar): Likewise. (ser_unix_readchar): Likewise. (_initialize_ser_hardwire): Initialize read_prim and write_prim. (ser_unix_read_prim): New function. (ser_unix_write_prim): Likewise. * ser-base.h (generic_readchar): Declare. (ser_base_readchar): Likewise. * ser-base.c (<winsock2.h>): Include, for windows. (fd_event): Use the read primitive specified by the serial interface. (ser_base_wait_for): Moved from ser-unix.c (do_ser_base_read_char): Likewise. (generic_readchar): Likewise. (ser_base_readchar): Likewise. (ser_base_write): Use the write primitive specified by the serial interface. * ser-pipe.c (_initialize_ser_pipe): Use ser_base_readchar, not ser_unix_readchar. Initialize read_prim and write_prim. * serial.c (struct serial_ops): Add read_prim and write_prim. * configure: Regenerate.
2005-03-25 * ser-base.c (ser_unix_write): Rename to ...Mark Mitchell1-13/+13
(ser_base_write): ... this. (ser_unix_nop_flush_output): Rename to ... (ser_base_flush_output): ... this. (ser_unix_flush_input): Rename to ... (ser_base_flush_input): ... this. (ser_unix_nop_send_break): Rename to ... (ser_base_send_break): ... this. (ser_unix_nop_drain_output): Rename to ... (ser_base_drain_output): ... this. (ser_unix_nop_raw): Rename to ... (ser_base_raw): ... this. (ser_unix_nop_get_tty_state): Rename to ... (ser_base_set_tty_state): ... this. (ser_unix_nop_noflush_set_tty_state): Rename to ... (ser_base_noflush_set_tty_state): ... this. (ser_unix_nop_print_tty_state): Rename to ... (ser_base_print_tty_state): ... this. (ser_unix_nop_setbaudrate): Rename to ... (ser_base_setbaudrate): ... this. (ser_unix_nop_setstopbits): Rename to ... (ser_base_setstopbits): ... this. (ser_unix_async): Rename to ... (ser_base_async): ... this. * ser-base.h (ser_unix_write): Rename to ... (ser_base_write): ... this. (ser_unix_nop_flush_output): Rename to ... (ser_base_flush_output): ... this. (ser_unix_flush_input): Rename to ... (ser_base_flush_input): ... this. (ser_unix_nop_send_break): Rename to ... (ser_base_send_break): ... this. (ser_unix_nop_drain_output): Rename to ... (ser_base_drain_output): ... this. (ser_unix_nop_raw): Rename to ... (ser_base_raw): ... this. (ser_unix_nop_get_tty_state): Rename to ... (ser_base_set_tty_state): ... this. (ser_unix_nop_noflush_set_tty_state): Rename to ... (ser_base_noflush_set_tty_state): ... this. (ser_unix_nop_print_tty_state): Rename to ... (ser_base_print_tty_state): ... this. (ser_unix_nop_setbaudrate): Rename to ... (ser_base_setbaudrate): ... this. (ser_unix_nop_setstopbits): Rename to ... (ser_base_setstopbits): ... this. (ser_unix_async): Rename to ... (ser_base_async): ... this. * ser-pipe.c (_initialize_ser_pipe): Update accordingly. * ser-tcp.c (_initialize_ser_tcp): Likewise. * ser-unix.c (hardwire_flush_input): Likewise. (_initializer_ser_hardwire): Likewise.
2005-03-25 * Makefile.in (SFILES): Add ser-base.c.Mark Mitchell1-0/+1
(ser_base_h): New variable. (ser-base.o): New target. (ser-pipe.o): Depend on $(ser_base_h). (ser-tcp.o): Likewise. (ser-unix.o): Likewise. Do not depend on $(event_loop_h). * configure.ac (SER_HARDWIRE): Include ser-base.o where appropriate. * ser-base.c: New file. (push_event): Move from ser-unix.c. (fd_event): Likewise. (reschedule): Likewise. (ser_unix_write): Likewise. (ser_unix_nop_flush_output): Likewise. (ser_unix_flush_input): Likewise. (ser_unix_nop_send_break): Likewise. (ser_unix_nop_drain_output): Likewise. (ser_unix_nop_raw): Likewise. (ser_unix_nop_get_tty_state): Likewise. (ser_unix_nop_set_tty_state): Likewise. (ser_unix_nop_noflush_set_tty_state): Likewise. (ser_unix_nop_print_tty_state): Likewise. (ser_unix_nop_setbaudrate): Likewise. (ser_unix_nop_setstopbits): Likewise. (ser_unix_async): Likewise. * ser-base.h: New file. * ser-pipe.c (ser-base.h): Include it. * ser-tcp.c (ser-base.h): Likewise. * ser-unix.h (ser_unix_nop_flush_output): Remove. (ser_unix_flush_input): Likewise. (ser_unix_nop_send_break): Likewise. (ser_unix_nop_raw): Likewise. (ser_unix_nop_get_tty_state): Likewise. (ser_unix_nop_set_tty_state): Likewise. (ser_unix_nop_print_tty_state): Likewise. (ser_unix_nop_noflush_set_tty_state): Likewise. (ser_unix_nop_setbaudrate): Likewise. (ser_unix_nop_setstopbits): Likewise. (ser_unix_nop_drain_output): Likewise. (ser_unix_wait_for): Likewise. (ser_unix_write): Likewise. (ser_unix_async): Likewise. * ser-unix.c (event-loop.h): Do not include it. (push_event): Move to ser-base.c. (fd_event): Likewise. (reschedule): Likewise. (ser_unix_write): Likewise. (ser_unix_nop_flush_output): Likewise. (ser_unix_flush_input): Likewise. (ser_unix_nop_send_break): Likewise. (ser_unix_nop_drain_output): Likewise. (ser_unix_nop_raw): Likewise. (ser_unix_nop_get_tty_state): Likewise. (ser_unix_nop_set_tty_state): Likewise. (ser_unix_nop_noflush_set_tty_state): Likewise. (ser_unix_nop_print_tty_state): Likewise. (ser_unix_nop_setbaudrate): Likewise. (ser_unix_nop_setstopbits): Likewise. (ser_unix_async): Likewise. (ser_unix_wait_for): Make it static. * configure: Regenerated.
2005-03-16 * event-top.c (async_init_signals): Allow for systems that do notMark Mitchell1-0/+2
define SIGQUIT. * ser-tcp.c (net_open): Allow for systems that do not have SIGPIPE.
2005-02-112005-02-10 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-1/+1
Mark up all error and warning messages. * ada-lang.c, amd64-tdep.c, arch-utils.c, breakpoint.c: Update. * bsd-kvm.c, bsd-uthread.c, coff-solib.h, coffread.c: Update. * core-aout.c, core-regset.c, corefile.c, corelow.c: Update. * cp-abi.c, cp-support.c, cp-valprint.c, cris-tdep.c: Update. * dbxread.c, demangle.c, doublest.c, dsrec.c: Update. * dve3900-rom.c, dwarf2expr.c, dwarf2loc.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, eval.c: Update. * event-top.c, exec.c, expprint.c, f-lang.c: Update. * f-typeprint.c, f-valprint.c, fbsd-nat.c, findvar.c: Update. * frame.c, frv-linux-tdep.c, gcore.c, gdbtypes.c: Update. * gnu-nat.c, gnu-v2-abi.c, gnu-v3-abi.c, go32-nat.c: Update. * hpacc-abi.c, hppa-hpux-nat.c, hppa-hpux-tdep.c: Update. * hppa-linux-nat.c, hppa-linux-tdep.c, hppa-tdep.c: Update. * hpread.c, hpux-thread.c, i386-linux-nat.c: Update. * i386-linux-tdep.c, i386-tdep.c, i386bsd-nat.c: Update. * i386gnu-nat.c, i387-tdep.c, ia64-linux-nat.c: Update. * ia64-tdep.c, inf-child.c, inf-ptrace.c, inf-ttrace.c: Update. * infcall.c, infcmd.c, inflow.c, infptrace.c, infrun.c: Update. * inftarg.c, interps.c, irix5-nat.c, jv-lang.c: Update. * kod-cisco.c, kod.c, language.c, libunwind-frame.c: Update. * linespec.c, linux-nat.c, linux-thread-db.c, m2-lang.c: Update. * m32r-rom.c, m68hc11-tdep.c, m68k-tdep.c: Update. * m68klinux-nat.c, macrocmd.c, macroexp.c, main.c: Update. * maint.c, mdebugread.c, mem-break.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mipsread.c, monitor.c: Update. * nlmread.c, nto-procfs.c, objc-lang.c, objfiles.c: Update. * observer.c, ocd.c, p-lang.c, p-typeprint.c: Update. * p-valprint.c, pa64solib.c, parse.c, ppc-linux-tdep.c: Update. * ppcnbsd-tdep.c, printcmd.c, procfs.c, remote-e7000.c: Update. * remote-fileio.c, remote-m32r-sdi.c, remote-rdi.c: Update. * remote-rdp.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote-utils.h, remote.c: Update. * rom68k-rom.c, rs6000-nat.c, s390-tdep.c, scm-lang.c: Update. * ser-e7kpc.c, ser-tcp.c, ser-unix.c, sh-tdep.c: Update. * sh3-rom.c, shnbsd-tdep.c, sol-thread.c, solib-aix5.c: Update. * solib-frv.c, solib-irix.c, solib-osf.c, solib-pa64.c: Update. * solib-som.c, solib-sunos.c, solib-svr4.c, solib.c: Update. * somread.c, somsolib.c, source.c, stabsread.c: Update. * stack.c, std-regs.c, symfile-mem.c, symfile.c: Update. * symmisc.c, symtab.c, target.c, thread.c, top.c: Update. * tracepoint.c, trad-frame.c, typeprint.c, utils.c: Update. * uw-thread.c, valarith.c, valops.c, valprint.c: Update. * value.c, varobj.c, version.in, win32-nat.c, wince.c: Update. * xcoffread.c, xcoffsolib.c, cli/cli-cmds.c: Update. * cli/cli-decode.c, cli/cli-dump.c, cli/cli-logging.c: Update. * cli/cli-script.c, cli/cli-setshow.c, mi/mi-cmd-break.c: Update. * mi/mi-cmd-disas.c, mi/mi-cmd-env.c, mi/mi-cmd-file.c: Update. * mi/mi-cmd-stack.c, mi/mi-cmd-var.c, mi/mi-getopt.c: Update. * mi/mi-symbol-cmds.c, tui/tui-layout.c, tui/tui-stack.c: Update. * tui/tui-win.c: Update.
2005-01-142005-01-13 Michael Snyder <msnyder@redhat.com>Michael Snyder1-2/+2
* ser-tcp.c: Whitespace tweaks. * ser-unix.c: Whitespace tweaks. * serial.h: Whitespace tweaks.
2004-06-252004-06-25 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-3/+3
* defs.h (deprecated_ui_loop_hook): Deprecated. * wince.c (child_wait): Update. * win32-nat.c (child_wait): Update. * v850ice.c (v850ice_wait): Update. * top.c (deprecated_ui_loop_hook): Update. * serial.h: Update. * ser-unix.c (do_hardwire_readchar, do_hardwire_readchar) (do_unix_readchar): Update. * ser-tcp.c (net_open): Update. * remote-sim.c (gdb_os_poll_quit): Update. * rdi-share/ardi.c (angel_RDI_ExecuteOrStep): Update.
2004-06-242004-06-24 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-1/+0
* defs.h (post_add_symbol_hook, pre_add_symbol_hook) (ui_loop_hook, selected_frame_level_changed_hook): Declare. * wince.c (ui_loop_hook): Delete extern declaration. * win32-nat.c (ui_loop_hook): Delete extern declaration.. * v850ice.c (ui_loop_hook): Delete extern declaration.. * ser-unix.c (ui_loop_hook): Delete extern declaration.. * ser-tcp.c (ui_loop_hook): Delete extern declaration.. * remote-sim.c (ui_loop_hook): Delete extern declaration.. * rdi-share/ardi.c (angel_RDI_ExecuteOrStep): Delete extern. ui_loop_hook declaration.
2003-05-13 * ser-pipe.c (_initialize_ser_pipe): Correct call to memset--swapIan Lance Taylor1-1/+1
second and third arguments. * ser-tcp.c (_initialize_ser_tcp): Likewise. * ser-unix.c (_initialize_ser_hardwire): Likewise.
2002-05-162002-05-16 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-1/+0
Fix PR gdb/546 * ser-tcp.c: Don't include <netinet/udp.h>.
2002-05-142002-05-14 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-18/+36
* ser-tcp.c: Include <netinet/udp.h>. Rename tcp_open and tcp_close to net_open and net_close. (net_open): Accept "udp:" and "tcp:" specifications. Connect using UDP if requested. Don't try to disable Nagle on UDP sockets. * remote.c (remote_serial_open): New function. Warn about UDP. (remote_open_1, remote_async_open_1, remote_cisco_open): Call it. 2002-05-14 Daniel Jacobowitz <drow@mvista.com> * gdb.texinfo (Debug Session): Document new `udp:' and `tcp:' options for `target remote'.
2001-12-182001-12-18 Martin M. Hunt <hunt@redhat.com>Martin Hunt1-0/+5
* ser-tcp.c (tcp_open): Disable Nagle algorithm which improves performance in some cases.
2001-12-072001-12-07 Martin M. Hunt <hunt@redhat.com>Martin Hunt1-1/+8
* configure.in: Check for sys/filio.h * configure: Rebuild. * config.in: Add HAVE_SYS_FILIO_H * ser-tcp.c: Conditionally include sys/filio.h.
2001-12-042001-12-03 Martin M. Hunt <hunt@redhat.com>Martin Hunt1-49/+90
* serial.h: Add a note to serial_open. * ser-tcp.c (tcp_open): Rewrite to use a non-blocking connect. Allow UI and CLI to abort connect. Instead of trying 15 times with very long timeouts, just try one connect with a maximum timeout of 15 seconds.
2001-08-02 * MAINTAINERS: Add myself to the write-after-approval list.Corinna Vinschen1-0/+3
* ser-tcp.c (tcp_open): Use `localhost' as default host if no hostname is given.
2001-07-11s/typedef serial_t/struct serial */Andrew Cagney1-4/+4
2001-06-10* gnu-regex.c: Eliminate obsolete check for _MSC_VER.Christopher Faylor1-2/+0
* utils.c (notice_quit): Remove dummy function only used for _MSC_VER. * values.c (unpack_double): Remove obsolete check for _MSC_VER. * defs.h: Ditto. * m32r-rom.c: Ditto. * p-exp.y: Ditto. * ser-e7kpc.c: Ditto. Define WIN32_LEAN_AND_MEAN under _WIN32, for faster compilation. (get_ds_base): Remove _MSC_VER version of this function. * nindy-share/ttyflush.c: Ditto. X * rdi-share/host.h: Ditto. X * ser-go32.c (dos_readchar): Remove call to obsolete function. * remote-sim.c (gdb_os_poll_quit): Ditto. * remote-e7000.c (expect): Remove obsolete #if 0'ed code. * main.c (captured_main): Eliminate special Cygwin checks. * ser-tcp.c: Remove unneeded __CYGWIN__ guard against system include.
2001-04-05* main.c: Remove windows.h use.Christopher Faylor1-1/+1
(gdbtk_test): Use PATH_MAX for home var calculation. * remote-e7000.c (e7000_parse_device): Accomodate Cygwin as well as Win32 in test. * ser-tcp.c: Use modern __CYGWIN__ conditional. * source.c (mod_path): Add __CYGWIN__ conditional to WIN32 test. (openp): Ditto. * symfile.c (symfile_bfd_open): Ditto. * gdbtk/generic/gdbtk.c: Ditto.
2001-03-06Update/correct copyright notices.Kevin Buettner1-1/+2
2001-02-06* signals.h: Removed.J.T. Conklin1-1/+1
* event-top.c (#include <signal.h>): Changed from signals.h. * inflow.c: Likewise. * mac-xdep.c: Likewise. * ser-pipe.c: Likewise. * ser-tcp.c: Likewise. * standalone.c: Likewise. * top.c: Likewise. * utils.c: Likewise. * Makefile.in: Removed signals.h from dependencies.
1999-10-05import gdb-1999-10-04 snapshotJason Molenda1-1/+1
1999-09-22import gdb-1999-09-21Jason Molenda1-276/+31
1999-09-09import gdb-1999-09-08 snapshotStan Shebs1-1/+1
1999-08-31import gdb-1999-08-30 snapshotJason Molenda1-3/+0
1999-07-07import gdb-1999-07-07 post reformatJason Molenda1-59/+60
1999-07-07import gdb-1999-07-07 pre reformatJason Molenda1-5/+1
1999-07-05import gdb-1999-07-05 snapshotJason Molenda1-1/+5
1999-04-26import gdb-19990422 snapshotStan Shebs1-1/+49
1999-04-16Initial creation of sourceware repositorygdb-4_18-branchpointStan Shebs1-0/+358
1999-04-16Initial creation of sourceware repositoryStan Shebs1-358/+0
1999-01-28This is the merge of the Itcl3.0 gdbtk development branch into theJim Ingham1-1/+1
trunk. To build it, you will have to do update -dP in the itcl directory, and update tcl, tk, tix and libgui as well.
1998-11-13Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com>Geoffrey Noer1-1/+1
Changes to account for name change from cygwin32 to cygwin and clean up Win32-related ifdefs. * configure.tgt: check for cygwin* instead of cygwin32. New cygwin gdb_target variable loses the "32". * configure.host: check for cygwin* instead of cygwin32. New cygwin gdb_host variable loses the "32". * configure.in: test __CYGWIN__ instead of __CYGWIN32__, rename gdb_cv_os_cygwin32 variable to drop the "32". Call AM_EXEEXT instead of AC_EXEEXT since that isn't in a released autoconf yet. * configure: regenerate. * main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h where cygwin path conv protos live, instead of adding a proto here for them here. * {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__ instead of __CYGWIN32__. * source.c: thoughout, check _WIN32 instead of WIN32. * config/i386/cygwin32.mh: delete. * config/i386/cygwin.mh: new file, was cygwin32.mh. * config/i386/cygwin32.mt: delete. * config/i386/cygwin.mt: new file, was cygwin32.mt. * config/i386/tm-cygwin32.h: delete. * config/i386/tm-cygwin.h: new file, was tm-cygwin32.h. * config/i386/xm-cygwin32.h: delete. * config/i386/xm-cygwin.h: new file, was xm-cygwin32.h. * config/i386/xm-windows.h: #include xm-cygwin.h now. * config/powerpc/cygwin32.mh: delete. * config/powerpc/cygwin.mh: new file, was cygwin32.mh. * config/powerpc/cygwin32.mt: delete. * config/powerpc/cygwin.mt: new file, was cygwin32.mt. * config/powerpc/tm-cygwin32.h: delete. * config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h. * config/powerpc/xm-cygwin32.h: delete. * config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h. * rdi-share/aclocal.m4: regenerate with aclocal. * rdi-share/configure: regenerate with autoconf. * rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c, * serpardr.c, unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
1998-10-161998-10-16 Jason Molenda (jsm@bugshack.cygnus.com)Jason Molenda1-15/+21
* command.c copying.c copying.awk core-aout.c core-regset.c corelow.c dcache.c i386-tdep.c i386v4-nat.c i387-tdep.c infcmd.c infptrace.c infrun.c remote.c solib.c symfile.c symmisc.c valarith.c: Add prototypes. * defs.h: Add prototype for utils.c::do_run_cleanups. * gdbtypes.c: Add prototypes. (make_pointer_type): Add braces to remove nested if-else ambiguity. (make_reference_type): Ditto. * printcmd.c (printf_command): Initialize 'f' and 'string' at function startup to suppress possibly-used-before-initialized warning. * remote-utils.c: Add prototypes. (sr_pollchar): Add braces to remove nested if-else ambiguity. * ser-tcp.c: Add prototypes. (wait_for): Add braces to remove nested if-else ambiguity. (tcp_readchar): Ditto. * ser-unix.c: Add prototypes. (get_tty_state): Don't define errno here. (get_tty_state): Don't define errno here. (hardwire_readchar): Only define 't' if we are compiling in a Cygwin environment. * symtab.c: Add prototypes. (find_methods): Add braces to remove nested if-else ambiguity. (search_symbols): Set 'i' to an initial value to suppress a possibly-used-before-initialized warning. * valops.c: Add prototypes. (value_cast): Set 'eltype2' to an initial value to suppress a possibly-used-before-initialized warning. (value_of_variable): Add braces to remove nested if-else ambiguity. (value_of_this): Ditto. * valprint.c: Add prototypes. (print_floating): Add braces to remove nested if-else ambiguity. Looks like a big change, but it is really just a lot of small stuff. In the cases where GCC was flagging a possible use-before-initialized warning on variables, it turned out that these were being used properly but GCC couldn't see that.
1998-03-06PR 15068Fred Fish1-0/+1
* utils.c (quit): Call SERIAL_DRAIN_OUTPUT rather than SERIAL_FLUSH_OUTPUT. * serial.h (struct serial_ops): Add drain_output, pointer to function that waits for output to drain. (SERIAL_DRAIN_OUTPUT): Macro to wait for output to drain. * ser-unix.c (hardwire_drain_output): New function and prototype. * ser-unix.c (hardwire_ops): Add entry for drain_output function. * ser-tcp.c (tcp_ops): Ditto. * ser-ocd.c (ocd_ops): Ditto. * ser-mac.c (mac_ops): Ditto. * ser-go32.c (dos_ops): Ditto. * ser-e7kpc.c (e7000pc_ops): Ditto.
1996-09-06Don't include netinet/tcp.h in ser-tcp.c if __CYGWIN32__ definedGeoffrey Noer1-0/+4
1996-07-26See gdb ChangeLog entry with header:Fred Fish1-0/+4
Thu Jul 25 19:41:31 1996 Fred Fish <fnf@cygnus.com> for a rather huge set of changes. I was going to put them here, but it made cvs dump core. :-(
1996-03-30 * core-aout.c (fetch_core_registers): Cast core_reg_size to intFred Fish1-1/+2
before testing against reg_ptr. * eval.c (evaluate_subexp_standard): Cast type of TYPE_FN_FIELD_VOFFSET to int. * findvar.c (extract_signed_integer, extract_unsigned_integer, extract_long_unsigned_integer): Cast type of sizeof to int. * values.c (unpack_field_as_long, modify_field): Ditto. * valops.c (value_assign, call_function_by_hand): Ditto. * infcmd.c (do_registers_info): Ditto. * ser-tcp.c (tcp_open): Ditto * remote.c (putpkt): Ditto. * dcache.c (dcache_peek): Ditto. * dcache.c (dcache_poke): Ditto. * m2-exp.y (yylex): Ditto. * gnu-regex.c (re_match_2): Ditto. * f-lang.c (ADD_BF_SYMNUM, saved_bf_list_end, tmp_bf_ptr): Ifdef out unused macro definition and variables. * inftarg.c (proc_wait): Move from main.c to here, and make static. * valprint.c (val_print_string): Change bufsize from int to unsigned. * main.c (wait.h): Include * top.c (command_line_input): Remove unused variable "c". * f-typeprint.c (f_type_print_varspec_prefix): Add missing enum value TYPE_CODE_TYPEDEF to switch statement. (f_type_print_varspec_suffix): Add missing enum value TYPE_CODE_TYPEDEF to switch statement. * ch-exp.c (parse_primval): Add remaining enumeration values to switch statement, with no specific action. (ch_lex): Add LOC_UNRESOLVED in switch statement. (pushback_token): Ifdef out, since code using it is ifdef'd out. * stabsread.c (cleanup_undefined_types): Remove unused label "badtype". * objfiles.h (print_symbol_bcache_statistics): Add prototype. * maint.c (objfiles.h): Include. (maintenance_print_statistics): Remove unused variable "temp". * minsyms.c (lookup_minimal_symbol_solib_trampoline): Remove unused variable "found_file_symbol". * m2-exp.y (yylex): Add LOC_UNRESOLVED case to switch. * language.c (lang_bool_type): Use existing function local type variable rather than create block local variables. * solib.c (disable_break): Enclose in ifndef SVR4_SHARED_LIBS. * infptrace.c (wait.h, command.h): Include. * ser-tcp.c (gdb_string.h): Include * i386-tdep.c (codestream_seek): Change "place" to CORE_ADDR. (i386_get_frame_setup): Change "pc" from int to CORE_ADDR. * command.c (complete_on_enum): Make assignment used as truth value explictly check against NULL. (wait.h): Include. * infrun.c (wait_for_inferior): Ifdef out prologue_pc since code that uses it is ifdef'd out. * parser-defs.h: Add prototype for write_dollar_variable. * infrun.c: Add prototype for write_pc_pid. * breakpoint.h: Add prototype for re_enable_breakpoints_in_shlibs. * symmisc.c (bcache.h): Include. * bcache.h: Add prototype for print_bcache_statistics. * symfile.c: Include <time.h>. * printcmd.c (print_scalar_formatted): Change len to unsigned int. * valarith.c (value_equal): Cast result of TYPE_LENGTH to int. * valarith.c (value_binop): Change result_len, promoted_len1, and promoted_len2 to unsigned int. * valarith.c (value_subscripted_rvalue): Change elt_offs and elt_size to unsigned int. * valops.c (value_array): Change typelength to unsigned int. (destructor_name_p): Change len to unsigned int. * scm-lang.h (scm_parse): Add prototype for scm_unpack. * symfile.c (decrement_reading_symtab): Change return type to void. * valarith.c (value_subscript): Remove unused variable "word". (value_subscript): Remove unused variable "tint". * valops.c (auto_abandon): Ifdef out, since code using it is also ifdef'd out. * eval.c (init_array_element): Remove unused variable "val". * Makefile.in (values.o): Depends on scm-lang.h. (command.o): Depends upon wait_h. (ser-tcp.o): Depends upon gdb_string.h. (infptrace.o): Depends upon wait_h and command_h. (maint.o): Depends on objfiles.h and symfile.h. * values.c (allocate_repeat_value): Remove unused variable "element_type". (scm-lang.h): Include. * breakpoint.c (create_longjmp_breakpoint): Enclose in GET_LONGJMP_TARGET define, unused otherwise. * config/i386/nm-linux.h: Add prototypes for i386_insert_watchpoint, i386_remove_watchpoint and i386_stopped_by_watchpoint.
1995-08-02Update FSF address.Fred Fish1-1/+1
1995-06-08typo in tcp_openStu Grossman1-0/+1
1995-06-08 * defs.h maint.c monitor.c remote-mips.c remote.c: Add supportStu Grossman1-17/+27
for `watchdog' variable. This allows the user to put an upper limit on the amount of time that GDB will wait for the target to return from a step or continue operation. This will primarily be used for the testsuite, where it is difficult to come up with a reasonable timeout for things like function calls, which can take as long as three minutes under some circumstances. If the watchdog timer expires, GDB will generate an error that looks like `Watchdog has expired.', and will detach from the target. * remote-mips.c (mips_open): Setup initial frame from target. Print it out so that user is told where the program is stopped when they attach. * remote-nrom.c: Loads of cleanups. Use serial code to open network connections. Use expect() to wait for response to download command. * ser-tcp.c (tcp_open): Retry connection if we get ECONNREFUSED. * serial.c serial.h (serial_open serial_fdopen serial_close): Allow users to open the same device multiple times. They all get to share the same serial_t. This is about the only way to have multiple active targets use the same device (for download and debug). * sparcl-tdep.c: Keep #include <unistd.h> away from GO32. * target.c: Add `targetdebug' variable. If this is non-zero, then a special target is put at the top of the target stack which will cause all calls through the target vector to have their args and results printed out.
1995-03-07 * serial.h ser-go32.c ser-go32-para.c ser-mac.c ser-tcp.cStu Grossman1-0/+10
ser-unix.c: Add SERIAL_SETSTOPBITS to set the number of stopbits (needed for IDP board?!?!?).
1994-12-23 * ser-tcp.c (tcp_open): Cast to struct sockaddr when passing toJim Kingdon1-1/+1
function which expects that.
1994-06-02 * configure.in: Add nlm subdir to configdirs for alpha-*-netwareStu Grossman1-1/+6
target. * defs.h (enum language): Add language_asm. * findvar.c (read_register_bytes read_register_gen write_register_bytes read_register read_register_pid write_register write_register_pid supply_register): Move multi- thread handling down into these routines. Create XXX_pid routines that allow register references to specify the pid. * findvar.c infcmd.c (read_pc read_pc_pid write_pc write_pc_pid read_sp write_sp read_fp write_fp): Move these routines from infcmd to findvar to centralize the whole mess. * i386-nlmstub.c: Portability fixes. * infptrace.c (child_resume): Conditionalize to allow other natives to override it. Remove PIDGET gubbish, it's no longer necessary. * infrun.c (wait_for_inferior): Put registers_changed() before target_wait() to speed up remote debugging. * Replace code that reads registers from other threads with much nicer looking new function calls (see changes to findvar.c). * Don't skip prologues if debugging assembly source. * lynx-nat.c (child_resume): Lynx now needs it's own version of child_resume to handle multi-thread debugging properly. * remote.c: Add O response to get console output from target. * (readchar): Add timeout parameter. Handle SERIAL_EOF and SERIAL_ERROR here to simplify callers. * Change static var timeout to remote_timeout. * (fromhex): Remove unnecessary return -1 at end of routine. * (remote_wait): Turn this into a big switch statement. Add support for O response. * (putpkt): Remove unnecessary handling of SERIAL_EOF/ERROR. * (getpkt): Split getpkt into two parts. read_frame deals with all formatting issues, run-length encoding, and framing. getpkt now handles error recovery, and frame detection. * ser-tcp.c (tcp_readchar): Handle EINTR from read(). * ser-unix.c (hardwire_raw): Set CLOCAL so that we ignore modem control. (hardwire_readchar): Handle EINTR from read(). * symfile.c (deduce_language_from_filename): Add support for .s files. * config/nm-lynx.h: Define CHILD_WAIT so that lynx-nat.c can override infptrace's child_wait. * config/rs6000/rs6000lynx.mh: Use xm-rs6000ly.h & nm-rs6000ly.h instead of XXXlynx.h. * config/rs6000/rs6000lynx.mt: Use tm-rs6000ly.h instead of tm-rs6000lynx.h. * nlm/gdbserve.c: Portability fixes.
1993-11-01Change the stream argument to _filtered to GDB_FILE *.Thomas Lord1-1/+1
Change all references to stdout/stderr to gdb_stdout/gdb_stderr. Replace all calls to stdio output functions with calls to corresponding _unfiltered functions (`fprintf_unfiltered') Replaced calls to fopen for output to gdb_fopen. Added sufficient goo to utils.c and defs.h to make the above work. The net effect is that stdio output functions are only directly used in utils.c. Elsewhere, the _unfiltered and _filtered functions and GDB_FILE type are used. In the near future, GDB_FILE will stop being equivalant to FILE. The semantics of some commands has changed in a very subtle way: called in the right context, they may cause new occurences of prompt_for_continue() behavior. The testsuite doesn't notice anything like this, though. Please respect this change by not reintroducing stdio output dependencies in the main body of gdb code. All output from commands should go to a GDB_FILE. Target-specific code can still use stdio directly to communicate with targets.