From 6f6e51bdfc41492e46d9ac5edaf7b5e580c2b284 Mon Sep 17 00:00:00 2001 From: Gregory Minshall Date: Fri, 11 Sep 1987 22:40:39 -0800 Subject: [PATCH] date and time created 87/09/11 15:40:39 by minshall SCCS-vsn: usr.bin/telnet/main.c 1.1 --- usr/src/usr.bin/telnet/main.c | 97 +++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 usr/src/usr.bin/telnet/main.c diff --git a/usr/src/usr.bin/telnet/main.c b/usr/src/usr.bin/telnet/main.c new file mode 100644 index 0000000000..10bfbbe634 --- /dev/null +++ b/usr/src/usr.bin/telnet/main.c @@ -0,0 +1,97 @@ +#include "externs.h" +#include "defines.h" + +/* + * Initialize variables. + */ + +void +tninit() +{ +#if defined(TN3270) + Sent3270TerminalType = 0; + Ifrontp = Ibackp = Ibuf; +#endif /* defined(TN3270) */ + + init_terminal(); + + init_network(); + + init_telnet(); + +#if defined(TN3270) + init_ctlr(); /* Initialize some things */ + init_keyboard(); + init_screen(); + init_system(); +#endif /* defined(TN3270) */ +} + + +/* + * main. Parse arguments, invoke the protocol or command parser. + */ + + +void +main(argc, argv) + int argc; + char *argv[]; +{ + tninit(); /* Clear out things */ + + TerminalSaveState(); + + prompt = argv[0]; + while ((argc > 1) && (argv[1][0] == '-')) { + if (!strcmp(argv[1], "-d")) { + debug = 1; + } else if (!strcmp(argv[1], "-n")) { + if ((argc > 1) && (argv[2][0] != '-')) { /* get file name */ + NetTrace = fopen(argv[2], "w"); + argv++; + argc--; + if (NetTrace == NULL) { + NetTrace = stdout; + } + } + } else { +#if defined(TN3270) && defined(unix) + if (!strcmp(argv[1], "-t")) { + if ((argc > 1) && (argv[2][0] != '-')) { /* get file name */ + transcom = tline; + (void) strcpy(transcom, argv[1]); + argv++; + argc--; + } + } else if (!strcmp(argv[1], "-noasynch")) { + noasynch = 1; + } else +#endif /* defined(TN3270) && defined(unix) */ + if (argv[1][1] != '\0') { + fprintf(stderr, "Unknown option *%s*.\n", argv[1]); + } + } + argc--; + argv++; + } + if (argc != 1) { + if (setjmp(toplevel) != 0) + Exit(0); + tn(argc, argv); + } + setjmp(toplevel); + for (;;) { +#if !defined(TN3270) + command(1); +#else /* !defined(TN3270) */ + if (!shell_active) { + command(1); + } else { +#if defined(TN3270) + shell_continue(); +#endif /* defined(TN3270) */ + } +#endif /* !defined(TN3270) */ + } +} -- 2.20.1