138905Sborman /* 238905Sborman * Copyright (c) 1989 The Regents of the University of California. 338905Sborman * All rights reserved. 438905Sborman * 538905Sborman * Redistribution and use in source and binary forms are permitted 638905Sborman * provided that the above copyright notice and this paragraph are 738905Sborman * duplicated in all such forms and that any documentation, 838905Sborman * advertising materials, and other materials related to such 938905Sborman * distribution and use acknowledge that the software was developed 1038905Sborman * by the University of California, Berkeley. The name of the 1138905Sborman * University may not be used to endorse or promote products derived 1238905Sborman * from this software without specific prior written permission. 1338905Sborman * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 1438905Sborman * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 1538905Sborman * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 1638905Sborman * 17*40242Sborman * @(#)ext.h 5.4 (Berkeley) 02/28/90 1838905Sborman */ 1938905Sborman 2038905Sborman /* 2138905Sborman * Telnet server variable declarations 2238905Sborman */ 2338905Sborman extern char hisopts[256]; 2438905Sborman extern char myopts[256]; 2538905Sborman extern char hiswants[256]; 2638905Sborman extern char mywants[256]; 2739503Sborman extern char do_dont_resp[256]; 2839503Sborman extern char will_wont_resp[256]; 2938905Sborman extern int linemode; /* linemode on/off */ 3038905Sborman #ifdef LINEMODE 3138905Sborman extern int uselinemode; /* what linemode to use (on/off) */ 3238905Sborman extern int editmode; /* edit modes in use */ 3338905Sborman extern int useeditmode; /* edit modes to use */ 3438905Sborman extern int alwayslinemode; /* command line option */ 3538905Sborman # ifdef KLUDGELINEMODE 3638905Sborman extern int lmodetype; /* Client support for linemode */ 3738905Sborman # endif /* KLUDGELINEMODE */ 3838905Sborman #endif /* LINEMODE */ 3938905Sborman extern int flowmode; /* current flow control state */ 4038905Sborman 4138905Sborman extern slcfun slctab[NSLC + 1]; /* slc mapping table */ 4238905Sborman 4338905Sborman char *terminaltype; 4438905Sborman 4538905Sborman /* 4638905Sborman * I/O data buffers, pointers, and counters. 4738905Sborman */ 4838905Sborman extern char ptyobuf[BUFSIZ+NETSLOP], *pfrontp, *pbackp; 4938905Sborman 5038905Sborman extern char netibuf[BUFSIZ], *netip; 5138905Sborman 5238905Sborman extern char netobuf[BUFSIZ+NETSLOP], *nfrontp, *nbackp; 5338905Sborman extern char *neturg; /* one past last bye of urgent data */ 5438905Sborman 5538905Sborman extern int pcc, ncc; 5638905Sborman 57*40242Sborman #if defined(CRAY2) && defined(UNICOS5) 5839531Sborman extern int unpcc; /* characters left unprocessed by CRAY-2 terminal routine */ 5939531Sborman extern char *unptyip; /* pointer to remaining characters in buffer */ 6039531Sborman #endif 6139531Sborman 6238905Sborman extern int pty, net; 6338905Sborman extern char *line; 6438905Sborman extern int SYNCHing; /* we are in TELNET SYNCH mode */ 6538905Sborman 6638905Sborman /* 6738905Sborman * The following are some clocks used to decide how to interpret 6838905Sborman * the relationship between various variables. 6938905Sborman */ 7038905Sborman 7138905Sborman extern struct { 7238905Sborman int 7338905Sborman system, /* what the current time is */ 7438905Sborman echotoggle, /* last time user entered echo character */ 7538905Sborman modenegotiated, /* last time operating mode negotiated */ 7638905Sborman didnetreceive, /* last time we read data from network */ 7738905Sborman ttypesubopt, /* ttype subopt is received */ 7838905Sborman tspeedsubopt, /* tspeed subopt is received */ 7938905Sborman baseline, /* time started to do timed action */ 8038905Sborman gotDM; /* when did we last see a data mark */ 8138905Sborman } clocks; 8238905Sborman 8338905Sborman 84*40242Sborman #if defined(CRAY2) && defined(UNICOS5) 8538905Sborman extern int needtermstat; 8638905Sborman #endif 8738905Sborman 8838905Sborman #ifndef CRAY 8938905Sborman #define DEFAULT_IM "\r\n\r\n4.3 BSD UNIX (%h) (%t)\r\n\r\r\n\r" 9038905Sborman #else 9138905Sborman #define DEFAULT_IM "\r\n\r\nCray UNICOS (%h) (%t)\r\n\r\r\n\r" 9238905Sborman #endif 93