extern char options[256];
extern char do_dont_resp[256];
extern char will_wont_resp[256];
extern int linemode;
#ifdef LINEMODE
extern int uselinemode;
extern int editmode;
extern int useeditmode;
extern int alwayslinemode;
# ifdef KLUDGELINEMODE
extern int lmodetype;
# endif
#endif
extern int flowmode;
extern int restartany;
#ifdef DIAGNOSTICS
extern int diagnostic;
#endif
#ifdef SECURELOGIN
extern int require_secure_login;
#endif
#ifdef AUTHENTICATION
extern int auth_level;
#endif
extern slcfun slctab[NSLC + 1];
extern char terminaltype[41];
extern char ptyobuf[BUFSIZ+NETSLOP], *pfrontp, *pbackp;
extern char netibuf[BUFSIZ], *netip;
extern char netobuf[BUFSIZ+NETSLOP], *nfrontp, *nbackp;
extern char *neturg;
extern int pcc, ncc;
extern int pty, net;
extern char *line;
extern int SYNCHing;
#include <sys/cdefs.h>
extern void
_termstat(void),
add_slc(char, char, cc_t),
check_slc(void),
change_slc(int, int, cc_t),
cleanup(int) __dead,
clientstat(int, int, int),
copy_termbuf(char *, int),
deferslc(void),
defer_terminit(void),
do_opt_slc(unsigned char *, int),
doeof(void),
dooption(int),
dontoption(int),
edithost(const char *, const char *),
fatal(int, const char *) __dead,
fatalperror(int, const char *) __dead,
get_slc_defaults(void),
init_env(void),
init_termbuf(void),
interrupt(void),
localstat(void),
flowstat(void),
netclear(void),
netflush(void),
#ifdef DIAGNOSTICS
printoption(const char *, int),
printdata(const char *, char *, int),
#ifndef ENCRYPTION
printsub(int, unsigned char *, int),
#endif
#endif
ptyflush(void),
putchr(int),
recv_ayt(void),
send_do(int, int),
send_dont(int, int),
send_slc(void),
send_status(void),
send_will(int, int),
send_wont(int, int),
sendbrk(void),
sendsusp(void),
set_termbuf(void),
start_login(char *, int, char *) __dead,
start_slc(int),
startslave(char *, int, char *),
suboption(void),
telrcv(void),
ttloop(void),
tty_binaryin(int),
tty_binaryout(int);
extern char *
putf(const char *, char *);
extern int
end_slc(unsigned char **),
getnpty(void),
getpty(int *),
spcset(int, cc_t *, cc_t **),
stilloob(int),
terminit(void),
termstat(void),
tty_flowmode(void),
tty_restartany(void),
tty_isbinaryin(void),
tty_isbinaryout(void),
tty_iscrnl(void),
tty_isecho(void),
tty_isediting(void),
tty_islitecho(void),
tty_isnewmap(void),
tty_israw(void),
tty_issofttab(void),
tty_istrapsig(void),
tty_linemode(void);
extern void
tty_rspeed(int),
tty_setecho(int),
tty_setedit(int),
tty_setlinemode(int),
tty_setlitecho(int),
tty_setsig(int),
tty_setsofttab(int),
tty_tspeed(int),
willoption(int),
wontoption(int),
writenet(unsigned char *, int);
extern int output_data(const char *, ...)
__attribute__((__format__(__printf__, 1, 2)));
extern int output_datalen(const char *, size_t);
#ifdef ENCRYPTION
extern char *nclearto;
#endif
extern struct clockstate {
int
system,
echotoggle,
modenegotiated,
didnetreceive,
ttypesubopt,
tspeedsubopt,
environsubopt,
oenvironsubopt,
xdisplocsubopt,
baseline,
gotDM;
} clocks;
#ifndef DEFAULT_IM
# define DEFAULT_IM "\r\n\r\n4.4 BSD UNIX (%h) (%t)\r\n\r\r\n\r"
#endif
#ifdef AUTHENTICATION
#include <libtelnet/auth.h>
#endif
#ifdef ENCRYPTION
#include <libtelnet/encrypt.h>
#endif