xref: /csrg-svn/usr.bin/telnet/externs.h (revision 36241)
133685Sbostic /*
233685Sbostic  * Copyright (c) 1988 Regents of the University of California.
333685Sbostic  * All rights reserved.
433685Sbostic  *
533685Sbostic  * Redistribution and use in source and binary forms are permitted
634898Sbostic  * provided that the above copyright notice and this paragraph are
734898Sbostic  * duplicated in all such forms and that any documentation,
834898Sbostic  * advertising materials, and other materials related to such
934898Sbostic  * distribution and use acknowledge that the software was developed
1034898Sbostic  * by the University of California, Berkeley.  The name of the
1134898Sbostic  * University may not be used to endorse or promote products derived
1234898Sbostic  * from this software without specific prior written permission.
1334898Sbostic  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1434898Sbostic  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1534898Sbostic  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1633685Sbostic  *
17*36241Sminshall  *	@(#)externs.h	1.12 (Berkeley) 11/18/88
1833685Sbostic  */
1933685Sbostic 
2032141Sminshall #include <stdio.h>
2132141Sminshall #include <setjmp.h>
2232141Sminshall 
2332141Sminshall #define	SUBBUFSIZE	100
2432141Sminshall 
2532141Sminshall extern int errno;		/* outside this world */
2632141Sminshall 
2733802Sminshall extern char
2833802Sminshall     *strcat(),
2933802Sminshall     *strcpy();			/* outside this world */
3033802Sminshall 
3132141Sminshall extern int
3233802Sminshall     flushout,		/* flush output */
3333802Sminshall     connected,		/* Are we connected to the other side? */
3433802Sminshall     globalmode,		/* Mode tty should be in */
3533802Sminshall     In3270,			/* Are we in 3270 mode? */
3633802Sminshall     telnetport,		/* Are we connected to the telnet port? */
3733802Sminshall     localchars,		/* we recognize interrupt/quit */
3833802Sminshall     donelclchars,		/* the user has set "localchars" */
3933802Sminshall     showoptions,
4033802Sminshall     net,
4133802Sminshall     tout,		/* Terminal output file descriptor */
4233802Sminshall     crlf,		/* Should '\r' be mapped to <CR><LF> (or <CR><NUL>)? */
4333802Sminshall     autoflush,		/* flush output when interrupting? */
4433802Sminshall     autosynch,		/* send interrupt characters with SYNCH? */
4533802Sminshall     SYNCHing,		/* Is the stream in telnet SYNCH mode? */
4633802Sminshall     donebinarytoggle,	/* the user has put us in binary */
4733802Sminshall     dontlecho,		/* do we suppress local echoing right now? */
4833802Sminshall     crmod,
4933802Sminshall     netdata,		/* Print out network data flow */
5033802Sminshall     debug;			/* Debug level */
5132141Sminshall 
5232141Sminshall extern char
5333802Sminshall     echoc,			/* Toggle local echoing */
5433802Sminshall     escape,			/* Escape to command mode */
5533802Sminshall     doopt[],
5633802Sminshall     dont[],
5733802Sminshall     will[],
5833802Sminshall     wont[],
5933802Sminshall     hisopts[],
6033802Sminshall     myopts[],
6133802Sminshall     *hostname,		/* Who are we connected to? */
6233802Sminshall     *prompt;		/* Prompt for command. */
6332141Sminshall 
6432141Sminshall extern FILE
6533802Sminshall     *NetTrace;		/* Where debugging output goes */
6632141Sminshall 
6732141Sminshall extern jmp_buf
6833802Sminshall     peerdied,
6933802Sminshall     toplevel;		/* For error conditions. */
7032141Sminshall 
7132141Sminshall extern void
7234848Sminshall     command(),
7334313Sminshall #if	!defined(NOT43)
7433802Sminshall     dosynch(),
7534313Sminshall #endif	/* !defined(NOT43) */
7634848Sminshall     Dump(),
7734848Sminshall     init_3270(),
7834848Sminshall     printoption(),
7934848Sminshall     printsub(),
8033802Sminshall     setconnmode(),
8134848Sminshall     setcommandmode(),
8234848Sminshall     setneturg(),
8334848Sminshall     sys_telnet_init(),
8434848Sminshall     telnet(),
8534848Sminshall     TerminalFlushOutput(),
8634848Sminshall     TerminalNewMode(),
8734848Sminshall     TerminalRestoreState(),
8834848Sminshall     TerminalSaveState(),
8934848Sminshall     tninit(),
9034848Sminshall     upcase(),
9134848Sminshall     willoption(),
9234848Sminshall     wontoption();
9332141Sminshall 
9434313Sminshall #if	defined(NOT43)
9534313Sminshall extern int
9634313Sminshall     dosynch();
9734313Sminshall #endif	/* defined(NOT43) */
9834313Sminshall 
9932141Sminshall extern char
10032141Sminshall     termEofChar,
10132141Sminshall     termEraseChar,
10232141Sminshall     termFlushChar,
10332141Sminshall     termIntChar,
10432141Sminshall     termKillChar,
10532141Sminshall     termLiteralNextChar,
10632141Sminshall     termQuitChar;
10732381Sminshall 
10832381Sminshall /* Ring buffer structures which are shared */
10932381Sminshall 
11032381Sminshall extern Ring
11133802Sminshall     netoring,
11233802Sminshall     netiring,
11333802Sminshall     ttyoring,
11433802Sminshall     ttyiring;
11533802Sminshall 
11633802Sminshall /* Tn3270 section */
11733802Sminshall #if	defined(TN3270)
11833802Sminshall 
11933802Sminshall extern int
12033802Sminshall     HaveInput,		/* Whether an asynchronous I/O indication came in */
121*36241Sminshall     noasynchtty,	/* Don't do signals on I/O (SIGURG, SIGIO) */
122*36241Sminshall     noasynchnet,	/* Don't do signals on I/O (SIGURG, SIGIO) */
123*36241Sminshall     sigiocount,		/* Count of SIGIO receptions */
12433802Sminshall     shell_active;	/* Subshell is active */
12533802Sminshall 
12633802Sminshall extern char
12733802Sminshall     *Ibackp,		/* Oldest byte of 3270 data */
12833802Sminshall     Ibuf[],		/* 3270 buffer */
12933802Sminshall     *Ifrontp,		/* Where next 3270 byte goes */
13033802Sminshall     tline[],
13133802Sminshall     *transcom;		/* Transparent command */
13233802Sminshall 
13333802Sminshall extern int
13433802Sminshall     settranscom();
13533802Sminshall 
13633802Sminshall extern void
13733802Sminshall     inputAvailable();
13833802Sminshall #endif	/* defined(TN3270) */
139