--- neoXcute.c 2000-04-20 09:16:00.000000000 -0400 +++ neoXcute.c 2010-01-18 01:13:14.000000000 -0500 @@ -45,5 +45,7 @@ #endif +#include #include +#include #include #include @@ -55,8 +57,4 @@ #include "neoXcute.h" -extern char *strerror(); - -extern int errno; - static char cute_expectbuf[2048]; @@ -86,9 +84,15 @@ int cute_bufindex = 0; -void -ppanic(s, fileName, lineNumber) -char *s; -char *fileName; -int lineNumber; +static Tcl_CmdProc Cute_Cmd, Cute_BreakLineCmd, + Cute_CaptureCmd, Cute_CloseLineCmd, + Cute_ConnectCmd, Cute_DisconnectCmd, + Cute_ExpectCmd, Cute_FlushLineCmd, + Cute_GetLineCmd, Cute_HangupCmd, + Cute_OpenLineCmd, Cute_ParityCmd, + Cute_SendCmd, Cute_SlowSendCmd, + Cute_SelectSpeedCmd; + +static void +ppanic(const char *s, const char *fileName, int lineNumber) { fflush (stdout); @@ -97,9 +101,9 @@ perror (s); fflush (stderr); - panic (); + abort (); } /* dump a buffer of a specified length, printing preamble and exit text */ -void +static void cute_dumpbuf(char *preamble, char *buf, int len, char *exitText) { @@ -122,6 +126,6 @@ * way we can timeout input, get stuff without a newline, etc, etc. */ -void -cute_term_setup() +static void +cute_term_setup(void) { if (ioctl (0, TCGETA, &cute_orig_term_settings) < 0) { @@ -157,6 +161,6 @@ /* Put the user's terminal in a mode where we read as many characters as * are there but it returns in a tenth of a second. */ -void -cute_timeout_single_char_mode() +static void +cute_timeout_single_char_mode(void) { if (cute_noControllingTerminal) panic("no controlling terminal"); @@ -168,6 +172,6 @@ } -void -cute_orig_line_mode() +static void +cute_orig_line_mode(void) { if (ioctl (cute_linefd, TCSETA, &cute_orig_line_settings) < 0) { @@ -176,6 +180,6 @@ } -void -cute_async_line_mode() +static void +cute_async_line_mode(void) { cute_async_line_settings.c_cc[VTIME] = 0; @@ -187,6 +191,6 @@ /* Restore the user's terminal to its original settings */ -void -cute_orig_term_mode() +static void +cute_orig_term_mode(void) { if (cute_noControllingTerminal) return; @@ -198,6 +202,6 @@ /* Put the user's terminal in a mode where we can read one character at a time. */ -void -cute_single_char_mode() +static void +cute_single_char_mode(void) { if (cute_noControllingTerminal) panic ("no controlling terminal"); @@ -212,6 +216,6 @@ * interval. */ -int -cute_getachar() /* return a char or -1 after timeout */ +static int +cute_getachar(void) /* return a char or -1 after timeout */ { char c; @@ -226,6 +230,6 @@ /* goodbye - clean up and dump out */ -void -cute_comm_goodbye() +static void +cute_comm_goodbye(void) { cute_orig_term_mode(); @@ -241,5 +245,5 @@ /* Cute_Nap - nap for the specified number of milliseconds */ -void +static void Cute_Nap (int ms) { @@ -269,10 +273,10 @@ *---------------------------------------------------------------------- */ -int +static int Cute_OpenLineCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { if (argc != 2) { @@ -338,8 +342,8 @@ int Cute_CloseLineCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { if (argc != 1) { @@ -365,8 +369,8 @@ int Cute_ParityCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int cflag; @@ -432,11 +436,11 @@ int Cute_SelectSpeedCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int bps_bits; - static unsigned bits_per_second = 0; + static int bits_per_second = 0; if (argc == 1) { @@ -472,5 +476,5 @@ #endif - if (!TclX_StrToUnsigned (argv[1], 0, &bits_per_second)) { + if (Tcl_GetInt(interp, argv[1], &bits_per_second) != TCL_OK) { Tcl_AppendResult (interp, argv[0], ": unrecognizable baud rate ", argv[1], @@ -591,8 +595,6 @@ } -int -cute_isline_up(interp, cmd) -Tcl_Interp *interp; -char *cmd; +static int +cute_isline_up(Tcl_Interp *interp, const char *cmd) { if (cute_line_up) return TCL_OK; @@ -614,8 +616,8 @@ int Cute_SendCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int nocr = 0; @@ -648,6 +650,6 @@ } -void -cute_disconnect() +static void +cute_disconnect(void) { cute_interactive_connect = 0; @@ -660,10 +662,8 @@ */ -void -cute_capture(buf, len) -char *buf; -int len; +static void +cute_capture(char *buf, int len) { - static previous_was_cr = 0; + static int previous_was_cr = 0; char c; static char cr = '\r'; @@ -706,8 +706,8 @@ int Cute_CaptureCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { if (argc != 2) { @@ -721,5 +721,5 @@ } - if (Tcl_GetOpenFile (interp, argv[1], 1, 1, &cute_captureFileP) != TCL_OK) { + if (Tcl_GetOpenFile (interp, argv[1], 1, 1, (ClientData *)&cute_captureFileP) != TCL_OK) { cute_captureFileP = NULL; return TCL_ERROR; @@ -741,8 +741,8 @@ int Cute_ConnectCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int c; @@ -840,8 +840,8 @@ int Cute_DisconnectCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { cute_disconnect (); @@ -861,8 +861,8 @@ int Cute_HangupCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { cute_comm_goodbye (); @@ -882,8 +882,8 @@ int Cute_SlowSendCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int j, len; @@ -944,8 +944,8 @@ int Cute_GetLineCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int newlineIndex; @@ -962,5 +962,5 @@ if (argc == 3) { - if (!TclX_StrToInt (argv[2], 10, &timeout_seconds)) { + if (Tcl_GetInt(interp, argv[2], &timeout_seconds) != TCL_OK) { Tcl_AppendResult(interp, "bad timeout arg: ", argv[0], " varName ", argv[2], (char *)NULL); @@ -1068,8 +1068,8 @@ int Cute_ExpectCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int timeout_seconds; @@ -1101,5 +1101,5 @@ } - if (!TclX_StrToInt (argv[1], 10, &timeout_seconds)) { + if (Tcl_GetInt(interp, argv[1], &timeout_seconds) != TCL_OK) { Tcl_AppendResult (interp, "bad timeout value: ", argv[0], ": ", argv[1], (char *)NULL); @@ -1218,8 +1218,8 @@ int Cute_FlushLineCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { int flusharg; @@ -1243,5 +1243,5 @@ if (cute_isline_up(interp, argv[0]) == TCL_ERROR) return TCL_ERROR; - if (ioctl(cute_linefd, TCFLSH, (struct termio *) flusharg) < 0) { + if (ioctl(cute_linefd, TCFLSH, flusharg) < 0) { perror("flushing remote line"); } @@ -1260,8 +1260,8 @@ int Cute_BreakLineCmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { if (cute_isline_up(interp, argv[0]) == TCL_ERROR) return TCL_ERROR; @@ -1274,6 +1274,6 @@ struct cuteCommandStruct { - const char *name; - int (*function)(); + const char *name; + Tcl_CmdProc *function; }; @@ -1298,8 +1298,8 @@ int Cute_Cmd(clientData, interp, argc, argv) - char *clientData; + void *clientData; Tcl_Interp *interp; int argc; - char **argv; + const char *argv[]; { struct cuteCommandStruct *cmdptr = cuteCommands;