externs.h revision 1.8 1 1.8 thorpej /* $NetBSD: externs.h,v 1.8 1996/02/28 21:03:58 thorpej Exp $ */
2 1.8 thorpej
3 1.1 cgd /*
4 1.3 cgd * Copyright (c) 1988, 1990, 1993
5 1.3 cgd * The Regents of the University of California. All rights reserved.
6 1.1 cgd *
7 1.1 cgd * Redistribution and use in source and binary forms, with or without
8 1.1 cgd * modification, are permitted provided that the following conditions
9 1.1 cgd * are met:
10 1.1 cgd * 1. Redistributions of source code must retain the above copyright
11 1.1 cgd * notice, this list of conditions and the following disclaimer.
12 1.1 cgd * 2. Redistributions in binary form must reproduce the above copyright
13 1.1 cgd * notice, this list of conditions and the following disclaimer in the
14 1.1 cgd * documentation and/or other materials provided with the distribution.
15 1.1 cgd * 3. All advertising materials mentioning features or use of this software
16 1.1 cgd * must display the following acknowledgement:
17 1.1 cgd * This product includes software developed by the University of
18 1.1 cgd * California, Berkeley and its contributors.
19 1.1 cgd * 4. Neither the name of the University nor the names of its contributors
20 1.1 cgd * may be used to endorse or promote products derived from this software
21 1.1 cgd * without specific prior written permission.
22 1.1 cgd *
23 1.1 cgd * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24 1.1 cgd * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 1.1 cgd * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 1.1 cgd * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27 1.1 cgd * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 1.1 cgd * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 1.1 cgd * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 1.1 cgd * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 1.1 cgd * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 1.1 cgd * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 1.1 cgd * SUCH DAMAGE.
34 1.1 cgd *
35 1.6 jtk * from: @(#)externs.h 8.3 (Berkeley) 5/30/95
36 1.1 cgd */
37 1.1 cgd
38 1.1 cgd #ifndef BSD
39 1.1 cgd # define BSD 43
40 1.1 cgd #endif
41 1.1 cgd
42 1.3 cgd /*
43 1.3 cgd * ucb stdio.h defines BSD as something wierd
44 1.3 cgd */
45 1.3 cgd #if defined(sun) && defined(__svr4__)
46 1.3 cgd #define BSD 43
47 1.3 cgd #endif
48 1.3 cgd
49 1.3 cgd #ifndef USE_TERMIO
50 1.3 cgd # if BSD > 43 || defined(SYSV_TERMIO)
51 1.3 cgd # define USE_TERMIO
52 1.3 cgd # endif
53 1.1 cgd #endif
54 1.1 cgd
55 1.1 cgd #include <stdio.h>
56 1.4 cgd #include <stdlib.h>
57 1.1 cgd #include <setjmp.h>
58 1.3 cgd #if defined(CRAY) && !defined(NO_BSD_SETJMP)
59 1.3 cgd #include <bsdsetjmp.h>
60 1.3 cgd #endif
61 1.1 cgd #ifndef FILIO_H
62 1.1 cgd #include <sys/ioctl.h>
63 1.1 cgd #else
64 1.1 cgd #include <sys/filio.h>
65 1.1 cgd #endif
66 1.3 cgd #ifdef CRAY
67 1.3 cgd # include <errno.h>
68 1.3 cgd #endif /* CRAY */
69 1.1 cgd #ifdef USE_TERMIO
70 1.1 cgd # ifndef VINTR
71 1.1 cgd # ifdef SYSV_TERMIO
72 1.1 cgd # include <sys/termio.h>
73 1.1 cgd # else
74 1.1 cgd # include <sys/termios.h>
75 1.1 cgd # define termio termios
76 1.1 cgd # endif
77 1.1 cgd # endif
78 1.1 cgd #endif
79 1.1 cgd #if defined(NO_CC_T) || !defined(USE_TERMIO)
80 1.1 cgd # if !defined(USE_TERMIO)
81 1.1 cgd typedef char cc_t;
82 1.1 cgd # else
83 1.1 cgd typedef unsigned char cc_t;
84 1.1 cgd # endif
85 1.1 cgd #endif
86 1.1 cgd
87 1.1 cgd #ifndef NO_STRING_H
88 1.1 cgd #include <string.h>
89 1.6 jtk #else
90 1.6 jtk #include <strings.h>
91 1.1 cgd #endif
92 1.1 cgd
93 1.1 cgd #ifndef _POSIX_VDISABLE
94 1.1 cgd # ifdef sun
95 1.1 cgd # include <sys/param.h> /* pick up VDISABLE definition, mayby */
96 1.1 cgd # endif
97 1.1 cgd # ifdef VDISABLE
98 1.1 cgd # define _POSIX_VDISABLE VDISABLE
99 1.1 cgd # else
100 1.1 cgd # define _POSIX_VDISABLE ((cc_t)'\377')
101 1.1 cgd # endif
102 1.1 cgd #endif
103 1.1 cgd
104 1.1 cgd #define SUBBUFSIZE 256
105 1.1 cgd
106 1.3 cgd #ifndef CRAY
107 1.1 cgd extern int errno; /* outside this world */
108 1.3 cgd #endif /* !CRAY */
109 1.1 cgd
110 1.6 jtk #include <sys/cdefs.h>
111 1.6 jtk #define P __P
112 1.1 cgd
113 1.1 cgd extern int
114 1.1 cgd autologin, /* Autologin enabled */
115 1.1 cgd skiprc, /* Don't process the ~/.telnetrc file */
116 1.1 cgd eight, /* use eight bit mode (binary in and/or out */
117 1.1 cgd flushout, /* flush output */
118 1.1 cgd connected, /* Are we connected to the other side? */
119 1.1 cgd globalmode, /* Mode tty should be in */
120 1.6 jtk In3270, /* Are we in 3270 mode? */
121 1.1 cgd telnetport, /* Are we connected to the telnet port? */
122 1.1 cgd localflow, /* Flow control handled locally */
123 1.3 cgd restartany, /* If flow control, restart output on any character */
124 1.1 cgd localchars, /* we recognize interrupt/quit */
125 1.6 jtk donelclchars, /* the user has set "localchars" */
126 1.1 cgd showoptions,
127 1.1 cgd net, /* Network file descriptor */
128 1.1 cgd tin, /* Terminal input file descriptor */
129 1.1 cgd tout, /* Terminal output file descriptor */
130 1.1 cgd crlf, /* Should '\r' be mapped to <CR><LF> (or <CR><NUL>)? */
131 1.1 cgd autoflush, /* flush output when interrupting? */
132 1.1 cgd autosynch, /* send interrupt characters with SYNCH? */
133 1.1 cgd SYNCHing, /* Is the stream in telnet SYNCH mode? */
134 1.1 cgd donebinarytoggle, /* the user has put us in binary */
135 1.1 cgd dontlecho, /* do we suppress local echoing right now? */
136 1.1 cgd crmod,
137 1.1 cgd netdata, /* Print out network data flow */
138 1.1 cgd prettydump, /* Print "netdata" output in user readable format */
139 1.1 cgd #if defined(unix)
140 1.1 cgd #if defined(TN3270)
141 1.1 cgd cursesdata, /* Print out curses data flow */
142 1.1 cgd apitrace, /* Trace API transactions */
143 1.1 cgd #endif /* defined(TN3270) */
144 1.1 cgd termdata, /* Print out terminal data flow */
145 1.1 cgd #endif /* defined(unix) */
146 1.7 jtk debug, /* Debug level */
147 1.7 jtk clienteof; /* Client received EOF */
148 1.1 cgd
149 1.1 cgd extern cc_t escape; /* Escape to command mode */
150 1.1 cgd extern cc_t rlogin; /* Rlogin mode escape character */
151 1.1 cgd #ifdef KLUDGELINEMODE
152 1.1 cgd extern cc_t echoc; /* Toggle local echoing */
153 1.1 cgd #endif
154 1.1 cgd
155 1.1 cgd extern char
156 1.1 cgd *prompt; /* Prompt for command. */
157 1.1 cgd
158 1.1 cgd extern char
159 1.1 cgd doopt[],
160 1.1 cgd dont[],
161 1.1 cgd will[],
162 1.1 cgd wont[],
163 1.1 cgd options[], /* All the little options */
164 1.1 cgd *hostname; /* Who are we connected to? */
165 1.1 cgd
166 1.1 cgd /*
167 1.1 cgd * We keep track of each side of the option negotiation.
168 1.1 cgd */
169 1.1 cgd
170 1.1 cgd #define MY_STATE_WILL 0x01
171 1.1 cgd #define MY_WANT_STATE_WILL 0x02
172 1.1 cgd #define MY_STATE_DO 0x04
173 1.1 cgd #define MY_WANT_STATE_DO 0x08
174 1.1 cgd
175 1.1 cgd /*
176 1.1 cgd * Macros to check the current state of things
177 1.1 cgd */
178 1.1 cgd
179 1.1 cgd #define my_state_is_do(opt) (options[opt]&MY_STATE_DO)
180 1.1 cgd #define my_state_is_will(opt) (options[opt]&MY_STATE_WILL)
181 1.1 cgd #define my_want_state_is_do(opt) (options[opt]&MY_WANT_STATE_DO)
182 1.1 cgd #define my_want_state_is_will(opt) (options[opt]&MY_WANT_STATE_WILL)
183 1.1 cgd
184 1.1 cgd #define my_state_is_dont(opt) (!my_state_is_do(opt))
185 1.1 cgd #define my_state_is_wont(opt) (!my_state_is_will(opt))
186 1.1 cgd #define my_want_state_is_dont(opt) (!my_want_state_is_do(opt))
187 1.1 cgd #define my_want_state_is_wont(opt) (!my_want_state_is_will(opt))
188 1.1 cgd
189 1.1 cgd #define set_my_state_do(opt) {options[opt] |= MY_STATE_DO;}
190 1.1 cgd #define set_my_state_will(opt) {options[opt] |= MY_STATE_WILL;}
191 1.1 cgd #define set_my_want_state_do(opt) {options[opt] |= MY_WANT_STATE_DO;}
192 1.1 cgd #define set_my_want_state_will(opt) {options[opt] |= MY_WANT_STATE_WILL;}
193 1.1 cgd
194 1.1 cgd #define set_my_state_dont(opt) {options[opt] &= ~MY_STATE_DO;}
195 1.1 cgd #define set_my_state_wont(opt) {options[opt] &= ~MY_STATE_WILL;}
196 1.1 cgd #define set_my_want_state_dont(opt) {options[opt] &= ~MY_WANT_STATE_DO;}
197 1.1 cgd #define set_my_want_state_wont(opt) {options[opt] &= ~MY_WANT_STATE_WILL;}
198 1.1 cgd
199 1.1 cgd /*
200 1.1 cgd * Make everything symetrical
201 1.1 cgd */
202 1.1 cgd
203 1.1 cgd #define HIS_STATE_WILL MY_STATE_DO
204 1.1 cgd #define HIS_WANT_STATE_WILL MY_WANT_STATE_DO
205 1.1 cgd #define HIS_STATE_DO MY_STATE_WILL
206 1.1 cgd #define HIS_WANT_STATE_DO MY_WANT_STATE_WILL
207 1.1 cgd
208 1.1 cgd #define his_state_is_do my_state_is_will
209 1.1 cgd #define his_state_is_will my_state_is_do
210 1.1 cgd #define his_want_state_is_do my_want_state_is_will
211 1.1 cgd #define his_want_state_is_will my_want_state_is_do
212 1.1 cgd
213 1.1 cgd #define his_state_is_dont my_state_is_wont
214 1.1 cgd #define his_state_is_wont my_state_is_dont
215 1.1 cgd #define his_want_state_is_dont my_want_state_is_wont
216 1.1 cgd #define his_want_state_is_wont my_want_state_is_dont
217 1.1 cgd
218 1.1 cgd #define set_his_state_do set_my_state_will
219 1.1 cgd #define set_his_state_will set_my_state_do
220 1.1 cgd #define set_his_want_state_do set_my_want_state_will
221 1.1 cgd #define set_his_want_state_will set_my_want_state_do
222 1.1 cgd
223 1.1 cgd #define set_his_state_dont set_my_state_wont
224 1.1 cgd #define set_his_state_wont set_my_state_dont
225 1.1 cgd #define set_his_want_state_dont set_my_want_state_wont
226 1.1 cgd #define set_his_want_state_wont set_my_want_state_dont
227 1.1 cgd
228 1.1 cgd
229 1.1 cgd extern FILE
230 1.1 cgd *NetTrace; /* Where debugging output goes */
231 1.1 cgd extern unsigned char
232 1.1 cgd NetTraceFile[]; /* Name of file where debugging output goes */
233 1.1 cgd extern void
234 1.1 cgd SetNetTrace P((char *)); /* Function to change where debugging goes */
235 1.1 cgd
236 1.1 cgd extern jmp_buf
237 1.1 cgd peerdied,
238 1.1 cgd toplevel; /* For error conditions. */
239 1.1 cgd
240 1.1 cgd extern void
241 1.1 cgd command P((int, char *, int)),
242 1.1 cgd Dump P((int, unsigned char *, int)),
243 1.1 cgd init_3270 P((void)),
244 1.1 cgd printoption P((char *, int, int)),
245 1.1 cgd printsub P((int, unsigned char *, int)),
246 1.1 cgd sendnaws P((void)),
247 1.1 cgd setconnmode P((int)),
248 1.1 cgd setcommandmode P((void)),
249 1.1 cgd setneturg P((void)),
250 1.1 cgd sys_telnet_init P((void)),
251 1.1 cgd telnet P((char *)),
252 1.1 cgd tel_enter_binary P((int)),
253 1.1 cgd TerminalFlushOutput P((void)),
254 1.1 cgd TerminalNewMode P((int)),
255 1.1 cgd TerminalRestoreState P((void)),
256 1.1 cgd TerminalSaveState P((void)),
257 1.1 cgd tninit P((void)),
258 1.1 cgd upcase P((char *)),
259 1.1 cgd willoption P((int)),
260 1.1 cgd wontoption P((int));
261 1.1 cgd
262 1.1 cgd extern void
263 1.3 cgd send_do P((int, int)),
264 1.3 cgd send_dont P((int, int)),
265 1.3 cgd send_will P((int, int)),
266 1.3 cgd send_wont P((int, int));
267 1.3 cgd
268 1.3 cgd extern void
269 1.1 cgd lm_will P((unsigned char *, int)),
270 1.1 cgd lm_wont P((unsigned char *, int)),
271 1.1 cgd lm_do P((unsigned char *, int)),
272 1.1 cgd lm_dont P((unsigned char *, int)),
273 1.1 cgd lm_mode P((unsigned char *, int, int));
274 1.1 cgd
275 1.1 cgd extern void
276 1.1 cgd slc_init P((void)),
277 1.1 cgd slcstate P((void)),
278 1.1 cgd slc_mode_export P((void)),
279 1.1 cgd slc_mode_import P((int)),
280 1.1 cgd slc_import P((int)),
281 1.1 cgd slc_export P((void)),
282 1.1 cgd slc P((unsigned char *, int)),
283 1.1 cgd slc_check P((void)),
284 1.1 cgd slc_start_reply P((void)),
285 1.1 cgd slc_add_reply P((int, int, int)),
286 1.1 cgd slc_end_reply P((void));
287 1.1 cgd extern int
288 1.1 cgd slc_update P((void));
289 1.1 cgd
290 1.1 cgd extern void
291 1.1 cgd env_opt P((unsigned char *, int)),
292 1.1 cgd env_opt_start P((void)),
293 1.1 cgd env_opt_start_info P((void)),
294 1.1 cgd env_opt_add P((unsigned char *)),
295 1.1 cgd env_opt_end P((int));
296 1.1 cgd
297 1.1 cgd extern unsigned char
298 1.3 cgd *env_default P((int, int)),
299 1.1 cgd *env_getvalue P((unsigned char *));
300 1.1 cgd
301 1.1 cgd extern int
302 1.1 cgd get_status P((void)),
303 1.1 cgd dosynch P((void));
304 1.1 cgd
305 1.1 cgd extern cc_t
306 1.1 cgd *tcval P((int));
307 1.1 cgd
308 1.1 cgd #ifndef USE_TERMIO
309 1.1 cgd
310 1.1 cgd extern struct tchars ntc;
311 1.1 cgd extern struct ltchars nltc;
312 1.1 cgd extern struct sgttyb nttyb;
313 1.1 cgd
314 1.1 cgd # define termEofChar ntc.t_eofc
315 1.1 cgd # define termEraseChar nttyb.sg_erase
316 1.1 cgd # define termFlushChar nltc.t_flushc
317 1.1 cgd # define termIntChar ntc.t_intrc
318 1.1 cgd # define termKillChar nttyb.sg_kill
319 1.1 cgd # define termLiteralNextChar nltc.t_lnextc
320 1.1 cgd # define termQuitChar ntc.t_quitc
321 1.1 cgd # define termSuspChar nltc.t_suspc
322 1.1 cgd # define termRprntChar nltc.t_rprntc
323 1.1 cgd # define termWerasChar nltc.t_werasc
324 1.1 cgd # define termStartChar ntc.t_startc
325 1.1 cgd # define termStopChar ntc.t_stopc
326 1.1 cgd # define termForw1Char ntc.t_brkc
327 1.1 cgd extern cc_t termForw2Char;
328 1.1 cgd extern cc_t termAytChar;
329 1.1 cgd
330 1.1 cgd # define termEofCharp (cc_t *)&ntc.t_eofc
331 1.1 cgd # define termEraseCharp (cc_t *)&nttyb.sg_erase
332 1.1 cgd # define termFlushCharp (cc_t *)&nltc.t_flushc
333 1.1 cgd # define termIntCharp (cc_t *)&ntc.t_intrc
334 1.1 cgd # define termKillCharp (cc_t *)&nttyb.sg_kill
335 1.1 cgd # define termLiteralNextCharp (cc_t *)&nltc.t_lnextc
336 1.1 cgd # define termQuitCharp (cc_t *)&ntc.t_quitc
337 1.1 cgd # define termSuspCharp (cc_t *)&nltc.t_suspc
338 1.1 cgd # define termRprntCharp (cc_t *)&nltc.t_rprntc
339 1.1 cgd # define termWerasCharp (cc_t *)&nltc.t_werasc
340 1.1 cgd # define termStartCharp (cc_t *)&ntc.t_startc
341 1.1 cgd # define termStopCharp (cc_t *)&ntc.t_stopc
342 1.1 cgd # define termForw1Charp (cc_t *)&ntc.t_brkc
343 1.1 cgd # define termForw2Charp (cc_t *)&termForw2Char
344 1.1 cgd # define termAytCharp (cc_t *)&termAytChar
345 1.1 cgd
346 1.1 cgd # else
347 1.1 cgd
348 1.1 cgd extern struct termio new_tc;
349 1.1 cgd
350 1.1 cgd # define termEofChar new_tc.c_cc[VEOF]
351 1.1 cgd # define termEraseChar new_tc.c_cc[VERASE]
352 1.1 cgd # define termIntChar new_tc.c_cc[VINTR]
353 1.1 cgd # define termKillChar new_tc.c_cc[VKILL]
354 1.1 cgd # define termQuitChar new_tc.c_cc[VQUIT]
355 1.1 cgd
356 1.1 cgd # ifndef VSUSP
357 1.1 cgd extern cc_t termSuspChar;
358 1.1 cgd # else
359 1.1 cgd # define termSuspChar new_tc.c_cc[VSUSP]
360 1.1 cgd # endif
361 1.1 cgd # if defined(VFLUSHO) && !defined(VDISCARD)
362 1.1 cgd # define VDISCARD VFLUSHO
363 1.1 cgd # endif
364 1.1 cgd # ifndef VDISCARD
365 1.1 cgd extern cc_t termFlushChar;
366 1.1 cgd # else
367 1.1 cgd # define termFlushChar new_tc.c_cc[VDISCARD]
368 1.1 cgd # endif
369 1.1 cgd # ifndef VWERASE
370 1.1 cgd extern cc_t termWerasChar;
371 1.1 cgd # else
372 1.1 cgd # define termWerasChar new_tc.c_cc[VWERASE]
373 1.1 cgd # endif
374 1.1 cgd # ifndef VREPRINT
375 1.1 cgd extern cc_t termRprntChar;
376 1.1 cgd # else
377 1.1 cgd # define termRprntChar new_tc.c_cc[VREPRINT]
378 1.1 cgd # endif
379 1.1 cgd # ifndef VLNEXT
380 1.1 cgd extern cc_t termLiteralNextChar;
381 1.1 cgd # else
382 1.1 cgd # define termLiteralNextChar new_tc.c_cc[VLNEXT]
383 1.1 cgd # endif
384 1.1 cgd # ifndef VSTART
385 1.1 cgd extern cc_t termStartChar;
386 1.1 cgd # else
387 1.1 cgd # define termStartChar new_tc.c_cc[VSTART]
388 1.1 cgd # endif
389 1.1 cgd # ifndef VSTOP
390 1.1 cgd extern cc_t termStopChar;
391 1.1 cgd # else
392 1.1 cgd # define termStopChar new_tc.c_cc[VSTOP]
393 1.1 cgd # endif
394 1.1 cgd # ifndef VEOL
395 1.1 cgd extern cc_t termForw1Char;
396 1.1 cgd # else
397 1.1 cgd # define termForw1Char new_tc.c_cc[VEOL]
398 1.1 cgd # endif
399 1.1 cgd # ifndef VEOL2
400 1.1 cgd extern cc_t termForw2Char;
401 1.1 cgd # else
402 1.1 cgd # define termForw2Char new_tc.c_cc[VEOL]
403 1.1 cgd # endif
404 1.1 cgd # ifndef VSTATUS
405 1.1 cgd extern cc_t termAytChar;
406 1.1 cgd #else
407 1.1 cgd # define termAytChar new_tc.c_cc[VSTATUS]
408 1.1 cgd #endif
409 1.1 cgd
410 1.1 cgd # if !defined(CRAY) || defined(__STDC__)
411 1.1 cgd # define termEofCharp &termEofChar
412 1.1 cgd # define termEraseCharp &termEraseChar
413 1.1 cgd # define termIntCharp &termIntChar
414 1.1 cgd # define termKillCharp &termKillChar
415 1.1 cgd # define termQuitCharp &termQuitChar
416 1.1 cgd # define termSuspCharp &termSuspChar
417 1.1 cgd # define termFlushCharp &termFlushChar
418 1.1 cgd # define termWerasCharp &termWerasChar
419 1.1 cgd # define termRprntCharp &termRprntChar
420 1.1 cgd # define termLiteralNextCharp &termLiteralNextChar
421 1.1 cgd # define termStartCharp &termStartChar
422 1.1 cgd # define termStopCharp &termStopChar
423 1.1 cgd # define termForw1Charp &termForw1Char
424 1.1 cgd # define termForw2Charp &termForw2Char
425 1.1 cgd # define termAytCharp &termAytChar
426 1.1 cgd # else
427 1.1 cgd /* Work around a compiler bug */
428 1.1 cgd # define termEofCharp 0
429 1.1 cgd # define termEraseCharp 0
430 1.1 cgd # define termIntCharp 0
431 1.1 cgd # define termKillCharp 0
432 1.1 cgd # define termQuitCharp 0
433 1.1 cgd # define termSuspCharp 0
434 1.1 cgd # define termFlushCharp 0
435 1.1 cgd # define termWerasCharp 0
436 1.1 cgd # define termRprntCharp 0
437 1.1 cgd # define termLiteralNextCharp 0
438 1.1 cgd # define termStartCharp 0
439 1.1 cgd # define termStopCharp 0
440 1.1 cgd # define termForw1Charp 0
441 1.1 cgd # define termForw2Charp 0
442 1.1 cgd # define termAytCharp 0
443 1.1 cgd # endif
444 1.1 cgd #endif
445 1.1 cgd
446 1.1 cgd
447 1.1 cgd /* Ring buffer structures which are shared */
448 1.1 cgd
449 1.1 cgd extern Ring
450 1.1 cgd netoring,
451 1.1 cgd netiring,
452 1.1 cgd ttyoring,
453 1.1 cgd ttyiring;
454 1.1 cgd
455 1.1 cgd /* Tn3270 section */
456 1.1 cgd #if defined(TN3270)
457 1.1 cgd
458 1.1 cgd extern int
459 1.1 cgd HaveInput, /* Whether an asynchronous I/O indication came in */
460 1.1 cgd noasynchtty, /* Don't do signals on I/O (SIGURG, SIGIO) */
461 1.1 cgd noasynchnet, /* Don't do signals on I/O (SIGURG, SIGIO) */
462 1.1 cgd sigiocount, /* Count of SIGIO receptions */
463 1.1 cgd shell_active; /* Subshell is active */
464 1.1 cgd
465 1.1 cgd extern char
466 1.1 cgd *Ibackp, /* Oldest byte of 3270 data */
467 1.1 cgd Ibuf[], /* 3270 buffer */
468 1.1 cgd *Ifrontp, /* Where next 3270 byte goes */
469 1.1 cgd tline[],
470 1.1 cgd *transcom; /* Transparent command */
471 1.1 cgd
472 1.3 cgd extern int
473 1.1 cgd settranscom P((int, char**));
474 1.1 cgd
475 1.1 cgd extern void
476 1.3 cgd inputAvailable P((int));
477 1.1 cgd #endif /* defined(TN3270) */
478