[comp.sources.misc] v16i040: ECU async comm package rev 3.0, Part16/35

wht@n4hgf.uucp (Warren Tucker) (01/06/91)

Submitted-by: wht@n4hgf.uucp (Warren Tucker)
Posting-number: Volume 16, Issue 40
Archive-name: ecu3/part16

---- Cut Here and feed the following to sh ----
#!/bin/sh
# This is part 16 of ecu3
if touch 2>&1 | fgrep 'amc' > /dev/null
 then TOUCH=touch
 else TOUCH=true
fi
# ============= ecufork.h ==============
echo 'x - extracting ecufork.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecufork.h' &&
X/*+-------------------------------------------------------------------------
X	ecufork.h 
X	wht@n4hgf.Mt-Park.GA.US
X
Xfor now just vehicle for deciding whether or not to debug fork/waits
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X/* #define FORK_DEBUG */
X/* vi: set tabstop=4 shiftwidth=4: */
SHAR_EOF
$TOUCH -am 1224222990 'ecufork.h' &&
chmod 0644 ecufork.h ||
echo 'restore of ecufork.h failed'
Wc_c="`wc -c < 'ecufork.h'`"
test 402 -eq "$Wc_c" ||
	echo 'ecufork.h: original size 402, current size' "$Wc_c"
# ============= ecuhangup.h ==============
echo 'x - extracting ecuhangup.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecuhangup.h' &&
X/*+-------------------------------------------------------------------------
X	ecuhangup.h -- hangup (exit()) codes
X	wht@n4hgf.Mt-Park.GA.US
X
X  1 - 64    reserved for signals
X  193 - 223 reserved for procedure 'exit' codes
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#define HANGUP_OK					0
X#define HANGUP_SIG1					1
X#define HANGUP_SIGN					64
X#define HANGUP_LINE_READ_ERROR		129
X#define HANGUP_XMTR_WRITE_ERROR		130
X#define HANGUP_XMTR_LOGIC_ERROR		131
X#define HANGUP_BSD4_IOCTL			132
X#define HANGUP_SHM_ABL				133
X#define HANGUP_SHM_RTL				134
X#define HANGUP_NO_FORK_FOR_RCVR		135
X#define HANGUP_TTYIN_READ_ERROR		136
X#define HANGUP_LINE_OPEN_ERROR		137
X#define HANGUP_PWENT_ERROR			138
X#define HANGUP_USAGE				139
X#define HANGUP_CONFIG_ERROR			140
X#define HANGUP_RCVR_LOGIC_ERROR		142
X
X#define HANGUP_INIT_PROC_ERROR		192
X
X#define HANGUP_USER1				193
X#define HANGUP_USERN				223
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of ecuhangup.h */
SHAR_EOF
$TOUCH -am 1224222990 'ecuhangup.h' &&
chmod 0644 ecuhangup.h ||
echo 'restore of ecuhangup.h failed'
Wc_c="`wc -c < 'ecuhangup.h'`"
test 1056 -eq "$Wc_c" ||
	echo 'ecuhangup.h: original size 1056, current size' "$Wc_c"
# ============= ecukey.h ==============
echo 'x - extracting ecukey.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecukey.h' &&
X/*+-------------------------------------------------------------------------
X	ecukey.h -- single key (ASCII) defines
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#define CTL_B		0x02
X#define CTL_C		0x03
X#define CTL_D		0x04
X#define ENQ			0x05
X#define ACK			0x06
X#define BS			0x08
X#define NL			0x0A
X#define TAB			0x09
X#define CTL_L		0x0C
X#define CR			0x0D
X#define XON			0x11
X#define CTL_R		0x12
X#define XOFF		0x13
X#define CTL_U		0x15
X#define ESC			0x1B
X#define CTL_BSLASH	0x1C
X#define CTL_Z		0x1A
X#define SPACE		0x20
X#define DEL			0x7F
X/* vi: set tabstop=4 shiftwidth=4: */
SHAR_EOF
$TOUCH -am 1224223090 'ecukey.h' &&
chmod 0644 ecukey.h ||
echo 'restore of ecukey.h failed'
Wc_c="`wc -c < 'ecukey.h'`"
test 706 -eq "$Wc_c" ||
	echo 'ecukey.h: original size 706, current size' "$Wc_c"
# ============= ecupde.h ==============
echo 'x - extracting ecupde.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecupde.h' &&
X/*+-----------------------------------------------------------------------
X	ecupde.h
X	wht@n4hgf.Mt-Park.GA.US
X------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
Xtypedef struct phone_directory_entry
X{
X	struct phone_directory_entry *next;
X	struct phone_directory_entry *prev;
X	char descr[64];		/* description of remote */
X	char logical[64];	/* logical name of remote */
X	char telno[20];		/* telephone number for remote or null */
X	char tty[4];			/* ttyname for access */
X	int parity;			/* 0,'e','o', maybe 'm','s' */
X	uint baud;				
X	ushort redial;		/* if non-zero, marked for redial */
X}	PDE;
X
X/* vi: set tabstop=4 shiftwidth=4: */
SHAR_EOF
$TOUCH -am 1224223090 'ecupde.h' &&
chmod 0644 ecupde.h ||
echo 'restore of ecupde.h failed'
Wc_c="`wc -c < 'ecupde.h'`"
test 733 -eq "$Wc_c" ||
	echo 'ecupde.h: original size 733, current size' "$Wc_c"
# ============= ecushm.h ==============
echo 'x - extracting ecushm.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecushm.h' &&
X#define SHM_REV	0x0CDEF0007L	/* high 16-bits unique, low=revision */
X/*+-------------------------------------------------------------------------
X	ecushm.h -- ecu XENIX shared data segment
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:12-19-1990-17:09-wht@n4hgf-make cursor variables unsigned */
X/*:11-30-1990-19:01-wht@n4hgf-add ttyinit_param */
X/*:11-28-1990-17:43-wht@n4hgf-move cursor_y, cursor_x to right after revision */
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#if defined(M_I386)
X#define FAR
X#else
X#define FAR far
X#endif
X
X/* for header users which do not include ecu.h */
X#if !defined(ushort)
X#define ushort unsigned short
X#endif
X#if !defined(uchar)
X#define uchar unsigned char
X#endif
X#if !defined(uint)
X#define uint unsigned int
X#endif
X#if !defined(ulong)
X#define ulong unsigned long
X#endif
X
X/* ttyinit() parameters */
X#define TTYINIT_NORMAL			0	/* must be zero */
X#define TTYINIT_FORCE_ANSI		1	/* must be non-zero */
X#define TTYINIT_FORCE_NONANSI	2	/* must be non-zero */
X
X#define SHM_STRLEN	256
Xtypedef struct ecu_sds
X{
X	uchar screen[43][80];
X	ulong shm_revision;
X	uint cursor_y;			/* program-maintained receive cursor */
X	uint cursor_x;			/* program-maintained receive cursor */
X	/* xmtr to rcvr communication area */
X	int xcmd;				/* signal from xmtr to rcvr SIGUSR2 */
X	int xi1;
X	int xi2;
X	int xi3;
X	char xs1[SHM_STRLEN];
X	/* rcvr to xmtr communication area */
X	int rcmd;				/* signal from rcvr to xmtr SIGUSR2 */
X	int ri1;
X	int ri2;
X	char rs1[SHM_STRLEN];
X	ulong rcvd_chars;		/* rcvr char count */
X	ulong rcvd_chars_this_connect;	/* count since last connect */
X	ulong xmit_chars;		/* xmit char count */
X	ulong xmit_chars_this_connect;	/* count since last connect */
X	int Ladd_nl_incoming;	/* when in ksr mode, add nl to cr on receive */
X	int Ladd_nl_outgoing;	/* when in ksr mode, add nl to cr on xmit */
X	int Lfull_duplex;		/* if non-zero, full duplex else half */
X	int Liofd;				/* file descriptor for line */
X	int Lmodem_already_init;/* true if modem already initialized */
X	int Lmodem_off_hook;	/* we try to keep accurate */
X	int Lparity;			/* 0==NONE, 'e' == even, 'o' == odd */
X	uint Lbaud;				/* baud rate */
X	char Ldescr[64];		/* description of remote */
X	char Lline[64];			/* /dev/ttyname for outgoing line */
X	char Llogical[64];		/* logical name of remote (from dial dir) */
X	char Lrname[64];		/* logical name of remote (settable) */
X	long Loff_hook_time;	/* time() at connect */
X	char Ltelno[20];		/* telephone number for remote or null */
X	ushort Lxonxoff;		/* status of line IXON and IXOFF */
X	int xmtr_pid;			/* transmitter process pid */
X	int xmtr_ppid;			/* transmitter process' parent's pid */
X	int xmtr_pgrp;			/* transmitter process group */
X	char tty_name[63];
X	uchar ttyinit_param;	/* see TTYINIT_... above and ttyinit() */
X	ulong friend_space[128];/* space for friend programs */
X} ECU_SDS;
X
Xextern ECU_SDS FAR *shm;		/* shared segment pointer */
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of ecushm.h */
SHAR_EOF
$TOUCH -am 1224223390 'ecushm.h' &&
chmod 0644 ecushm.h ||
echo 'restore of ecushm.h failed'
Wc_c="`wc -c < 'ecushm.h'`"
test 3042 -eq "$Wc_c" ||
	echo 'ecushm.h: original size 3042, current size' "$Wc_c"
# ============= ecutty.h ==============
echo 'x - extracting ecutty.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecutty.h' &&
X/*+-------------------------------------------------------------------------
X	ecutty.h
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
Xtypedef struct color_type
X{
X	char *name;
X	int num;
X} COLOR;
X
X#ifdef DEFINE_TTY_DATA
XCOLOR colors[] =
X{
X	{ "black",		0 },
X	{ "blue",		1 },
X	{ "brown",		6 },
X	{ "cyan",		3 },
X	{ "gray",		8 },
X	{ "green",		2 },
X	{ "hi_white",	15 },
X	{ "lt_blue",	9 },
X	{ "lt_cyan",	11 },
X	{ "lt_green",	10 },
X	{ "lt_magenta",	13 },
X	{ "lt_red",		12 },
X	{ "magenta",	5 },
X	{ "red",		4 },
X	{ "white",		7 },
X	{ "yellow",		14 },
X	{(char *)0, -1}
X};
X#else
Xextern COLOR colors[];
X#endif
X
X/* color words are ulong:
X   MSB:  reverse video foreground
X         reverse video background
X         normal  video foreground
X   LSB:  normal  video background
X*/
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of ecutty.h */
SHAR_EOF
$TOUCH -am 1224223590 'ecutty.h' &&
chmod 0644 ecutty.h ||
echo 'restore of ecutty.h failed'
Wc_c="`wc -c < 'ecutty.h'`"
test 955 -eq "$Wc_c" ||
	echo 'ecutty.h: original size 955, current size' "$Wc_c"
# ============= ecuungetty.h ==============
echo 'x - extracting ecuungetty.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecuungetty.h' &&
X/*+-------------------------------------------------------------------------
X	ecuungetty.h
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X/* ungetty definitions */
X#define	UG_NOTENAB		0	/* on no-switch exec, line not enabled */
X#define	UG_ENAB			1	/* on no-switch exec, -r needed */
X#define	UG_RESTART		1	/* on -t exec, restart needed */
X#define	UG_FAIL			2	/* on no switch exec, line in use */
X
X/* extended ecuungetty codes */
X#define UGE_BADSWITCH	240	/* usage: bad switch */
X#define UGE_BADARGC		241	/* usage: bad arg count */
X#define UGE_NOTROOT		242	/* ecuungetty found it had no root privileges */
X#define UGE_CALLER		243	/* caller is not ecu or root */
X#define UGE_T_LOGIN		230 /* -t found utmp status US_LOGIN */
X#define UGE_T_LOGGEDIN	231 /* -t found utmp status US_LOGGGEDIN */
X#define UGE_T_NOTFOUND	232 /* -t found utmp status US_NOTFOUND */
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of ecuungetty.h */
SHAR_EOF
$TOUCH -am 1224223590 'ecuungetty.h' &&
chmod 0644 ecuungetty.h ||
echo 'restore of ecuungetty.h failed'
Wc_c="`wc -c < 'ecuungetty.h'`"
test 1052 -eq "$Wc_c" ||
	echo 'ecuungetty.h: original size 1052, current size' "$Wc_c"
# ============= ecuvmin.h ==============
echo 'x - extracting ecuvmin.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecuvmin.h' &&
X/*+-------------------------------------------------------------------------
X	xenixvmin.h  --  set line default VMIN
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#if defined(M_XENIX) || defined(M_UNIX)
X#if defined(BUILDING_LINT_ARGS	/* if building lint_args.h ... */)
X#define XENIX_VMIN		2	/* ... include vmin handling routines */
X#else
X#define XENIX_VMIN		1	/* this is the real value for vmin */
X#endif
X#endif
X/* vi: set tabstop=4 shiftwidth=4: */
SHAR_EOF
$TOUCH -am 1224223590 'ecuvmin.h' &&
chmod 0644 ecuvmin.h ||
echo 'restore of ecuvmin.h failed'
Wc_c="`wc -c < 'ecuvmin.h'`"
test 584 -eq "$Wc_c" ||
	echo 'ecuvmin.h: original size 584, current size' "$Wc_c"
# ============= ecuxkey.h ==============
echo 'x - extracting ecuxkey.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'ecuxkey.h' &&
X/*+-------------------------------------------------------------------------
X	ecuxkey.h -- XENIX function key single char value mapping
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X/*
X * these are not changeable: they map to the last character in
X * an AT/"ANSI" function key sequence
X */
X
X#define XFcurup	(0x80 | 'A')	/* 0xC1 */
X#define XFcurdn	(0x80 | 'B')	/* 0xC2 */
X#define XFcurrt	(0x80 | 'C')	/* 0xC3 */
X#define XFcurlf	(0x80 | 'D')	/* 0xC4 */
X#define XFcur5	(0x80 | 'E')	/* 0xC5 */
X#define XFend	(0x80 | 'F')	/* 0xC6 */
X#define XFpgdn	(0x80 | 'G')	/* 0xC7 */
X#define XFhome	(0x80 | 'H')	/* 0xC8 */
X#define XFpgup	(0x80 | 'I')	/* 0xC9 */
X#define XFins	(0x80 | 'L')	/* 0xCA */
X#define XF1		(0x80 | 'M')	/* 0xCB */
X#define XF2		(0x80 | 'N')	/* 0xCC */
X#define XF3		(0x80 | 'O')	/* 0xCD */
X#define XF4		(0x80 | 'P')	/* 0xCE */
X#define XF5		(0x80 | 'Q')	/* 0xCF */
X#define XF6		(0x80 | 'R')	/* 0xD0 */
X#define XF7		(0x80 | 'S')	/* 0xD1 */
X#define XF8		(0x80 | 'T')	/* 0xD2 */
X#define XF9		(0x80 | 'U')	/* 0xD3 */
X#define XF10	(0x80 | 'V')	/* 0xD4 */
X#define XF11	(0x80 | 'W')	/* 0xD5 */
X#define XF12	(0x80 | 'X')	/* 0xD6 */
X#define XFbktab	(0x80 | 'Z')	/* 0xD7 */
X
X/*
X * extended ALT+[a-z] codes
X */
X#define XF_ALTA	0x80			/* depends on /usr/lib/keyboard keys ... */
X#define XF_ALTZ	(0x80+'z'-'a')	/* ... mapping ALT-a to 0x80, etc */
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of ecuxkey.h */
SHAR_EOF
$TOUCH -am 1224223790 'ecuxkey.h' &&
chmod 0644 ecuxkey.h ||
echo 'restore of ecuxkey.h failed'
Wc_c="`wc -c < 'ecuxkey.h'`"
test 1534 -eq "$Wc_c" ||
	echo 'ecuxkey.h: original size 1534, current size' "$Wc_c"
# ============= esd.h ==============
echo 'x - extracting esd.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'esd.h' &&
X/*+-----------------------------------------------------------------------
X	esd.h -- support header for users of esdutil.c
X	...!gatech!emory!tridom!wht
X------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
Xtypedef struct esd
X{
X	char	*pb;		/* full pointer to esd strings */
X	short	cb;			/* count of bytes */
X	short	maxcb;		/* maximum bytes allowed */
X	short	index;		/* next character of significance */
X	short	old_index;	/* last token (backup or error reporting) */
X}	ESD;
X
Xtypedef struct keyword_table_type	/* table terminated with null key_word */
X{
X    char    *key_word;          /* 12 char max key word */
X    int     key_token;          /* token returned on match */
X} KEYTAB;
X
XESD *make_esd();
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of esd.h */
SHAR_EOF
$TOUCH -am 1224223790 'esd.h' &&
chmod 0644 esd.h ||
echo 'restore of esd.h failed'
Wc_c="`wc -c < 'esd.h'`"
test 857 -eq "$Wc_c" ||
	echo 'esd.h: original size 857, current size' "$Wc_c"
# ============= feval.h ==============
echo 'x - extracting feval.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'feval.h' &&
X/*+-------------------------------------------------------------------------
X	feval.h
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#define FIinstr		1
X#define FIlen		2
X#define FIstoi		3
X#define FIctoi		4
X#define FIbaud		5
X#define FIconn		6
X#define FIcsec		7
X#define FIpid		8
X#define FIrchr		9
X#define FIrchrc		10
X#define FIxchr		11
X#define FIxchrc		12
X#define FIlgetc		13
X#define FIargc		14
X#define FIftell		15
X#define FIfmode		16
X#define FIisdir		17
X#define FIisreg		18
X#define FIischr		19
X#define FIfatime	20
X#define FIfmtime	21
X#define FIfsize		22
X#define FIcolors	23
X
X
XKEYTAB feval_int_tbl[] =
X{
X	{"argc",FIargc},
X	{"baud",FIbaud},
X	{"colors",FIcolors},
X	{"conn",FIconn},
X	{"csec",FIcsec},
X	{"ctoi",FIctoi},
X	{"fatime",FIfatime},
X	{"fmode",FIfmode},
X	{"fmtime",FIfmtime},
X	{"fsize",FIfsize},
X	{"ftell",FIftell},
X	{"instr",FIinstr},
X	{"ischr",FIischr},
X	{"isdir",FIisdir},
X	{"isreg",FIisreg},
X	{"len",FIlen},
X	{"lgetc",FIlgetc},
X	{"pid",FIpid},
X	{"rchr",FIrchr},
X	{"rchrc",FIrchrc},
X	{"stoi",FIstoi},
X	{"xchr",FIxchr},
X	{"xchrc",FIxchrc},
X	{(char *)0,0}
X};
X
X#define FSleft		2
X#define FSright		3
X#define FSmid		4
X#define FSdate		5
X#define FSmonth		6
X#define FSday		7
X#define FScgets		9
X#define FScgetc		10
X#define FSitos		11
X#define FSchr		12
X#define FSdir		13
X#define FStty		14
X#define FSrdesc		15
X#define FSrname		16
X#define FSline		17
X#define FSrtel		18
X#define FSargv		19
X#define FStime		20
X#define FStimes		21
X#define FSedate		22
X#define FSetime		23
X#define FSgetenv	24
X#define FSgetlogin	25
X
X
XKEYTAB feval_str_tbl[] =
X{
X	{"argv",FSargv},
X	{"cgetc",FScgetc},
X	{"cgets",FScgets},
X	{"chr",FSchr},
X	{"date",FSdate},
X	{"day",FSday},
X	{"dir",FSdir},
X	{"edate",FSedate},
X	{"etime",FSetime},
X	{"getenv",FSgetenv},
X	{"getlogin",FSgetlogin},
X	{"itos",FSitos},
X	{"left",FSleft},
X	{"line",FSline},
X	{"mid",FSmid},
X	{"month",FSmonth},
X	{"rdesc",FSrdesc},
X	{"right",FSright},
X	{"rname",FSrname},
X	{"rtelno",FSrtel},
X	{"time",FStime},
X	{"times",FStimes},
X	{"tty",FStty},
X	{(char *)0,0}
X};
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of feval.h */
SHAR_EOF
$TOUCH -am 1224223890 'feval.h' &&
chmod 0644 feval.h ||
echo 'restore of feval.h failed'
Wc_c="`wc -c < 'feval.h'`"
test 2176 -eq "$Wc_c" ||
	echo 'feval.h: original size 2176, current size' "$Wc_c"
# ============= lint_args.h ==============
echo 'x - extracting lint_args.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'lint_args.h' &&
X/*+-----------------------------------------------------------------------
X	lint_args.h
X------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:12-04-1990-05:10-afterlint-creation */
X
X#ifndef BUILDING_LINT_ARGS
X#ifdef LINT_ARGS
X
X/* bamboozle.c */
Xchar *bamboozle(int );
X/* cmdtbl.c */
X/* ecu.c */
Xint main(int ,char * *,char * *);
Xint xmtr(void);
X/* ecuDCE.c */
Xchar *DCE_get_result(long );
Xint DCE_dial(void);
Xint DCE_dial_pde(struct phone_directory_entry *);
Xint DCE_get_sreg_value(int );
Xint DCE_modem_init(void);
Xint DCE_redial(char * *,int );
Xint DCE_send_cmd(char *);
Xint DCE_set_sreg(int ,int );
Xint ck_for_interrupt(void);
Xvoid DCE_autoanswer(void);
Xvoid DCE_hangup(void);
Xvoid DCE_now_on_hook(void);
Xvoid DCE_read_modem_init(void);
Xvoid DCE_report_iv_set(int );
Xvoid process_modem_init(char *);
Xvoid show_modem_init_error(int ,struct esd *);
X/* ecuLCK.c */
Xint is_active_lock(char *);
Xint line_locked(char *);
Xint make_lock_name(char *,char *);
X/* ecuchdir.c */
Xint cd_array_delete(char * *,int );
Xint change_directory(char *,int );
Xint expand_dirname(char *,int );
Xvoid cd_array_delete_usage(void);
Xvoid cd_array_init(void);
Xvoid cd_array_read(char * *,int );
Xvoid cd_array_save(char * *,int );
X/* ecudump.c */
Xvoid dump_putc(char );
Xvoid dump_puts(char *);
Xvoid hex_dump(char *,int ,char *,int );
Xvoid hex_dump16(unsigned short );
Xvoid hex_dump32(unsigned long );
Xvoid hex_dump4(unsigned char );
Xvoid hex_dump8(unsigned char );
Xvoid hex_dump_fp(FILE *,char *,int ,char *,int );
X/* ecufinsert.c */
Xint expand_filename(char *,int );
Xint file_insert_to_line(int ,char * *);
Xvoid file_insert_clear_xoff(void);
X/* ecufkey.c */
Xchar *keyset_idstr(int );
Xint kde_fgets(char *,int ,FILE *);
Xint keyset_define_key(char *);
Xint keyset_idnum(char *);
Xint keyset_read(char *);
Xint xf_to_KDEt(unsigned char );
Xvoid ffso(char *);
Xvoid keyset_display(void);
Xvoid keyset_init(void);
X/* ecufork.c */
Xchar *find_executable(char *);
Xint exec_cmd(char *);
Xint expand_cmd_with_wildlist(char *,char * *);
Xint is_executable(char *);
Xint smart_fork(void);
Xvoid shell(char *);
X/* ecuicmaux.c */
Xchar *icmd_escape_str(void);
Xint icmd_log(int ,int ,char * *);
Xvoid display_ascii_names(void);
Xvoid icmd_conversion(int ,int ,char * *);
Xvoid nlin_nlout_control(int ,int ,char * *);
X/* ecuicmd.c */
Xint icmd(char *);
Xint icmd_do_proc(int ,char * *);
Xint search_cmd_list(struct p_cmd *,char *);
X/* ecuicmhelp.c */
Xchar *help_get_cmd(void);
Xint display_help_screen(void);
Xstruct p_cmd *search_cmd_list_pcmd(char *);
Xvoid calculate_help_right_column(void);
Xvoid display_help_stderr(char *);
Xvoid help_cmd_line_setup(char *);
Xvoid icmd_help(int ,char * *);
Xvoid show_cmds(void);
X/* ecuicmhist.c */
Xint icmd_history_manager(unsigned char ,unsigned char *,int );
Xvoid icmd_history_add(char *);
X/* eculine.c */
Xchar *lgets_timeout(struct lrwt *);
Xchar *lopen_err_text(int );
Xchar *xon_status(void);
Xint lgetc_timeout(long );
Xint llookfor(char *,unsigned long ,int );
Xint lnew_baud_rate(unsigned int );
Xint lopen(void);
Xint lrdchk_xmtr(void);
Xint lset_baud_rate(int );
Xint set_xon_xoff_by_arg(char *);
Xint valid_baud_rate(unsigned int );
Xunsigned char lgetc_xmtr(void);
Xvoid lRTSCTS_control(int );
Xvoid lbreak(void);
Xvoid lclear_xmtr_xoff(void);
Xvoid lclose(void);
Xvoid ldraino(int );
Xvoid lflush(int );
Xvoid lget_xon_xoff(int *,int *);
Xvoid lputc(char );
Xvoid lputc_paced(int ,char );
Xvoid lputs(char *);
Xvoid lputs_paced(int ,char *);
Xvoid lquiet(unsigned long ,int );
Xvoid lreset_ksr(void);
Xvoid lset_parity(int );
Xvoid ltoggle_dtr(void);
Xvoid lxon_xoff(int );
Xvoid process_xmtr_rcvd_char(unsigned int ,int );
X/* eculock.c */
Xint check_utmp(void);
Xint create_lock_file(char *);
Xint lock_tty(void);
Xvoid unlock_tty(void);
X/* ecunumrev.c */
X/* ecuphone.c */
Xint check_curr_pde(void);
Xint dirw_display_config(void);
Xint lookup_logical_telno(void);
Xint pde_add_or_edit(struct phone_directory_entry *,int );
Xint pde_add_or_edit_read(char *,int ,int ,char *,int ,char *);
Xint pde_cmd_change_dir(void);
Xint pde_cmd_set_wait(void);
Xint pde_dial(struct phone_directory_entry *);
Xint pde_dial_cycle(void);
Xint pde_display(int ,struct phone_directory_entry *,int );
Xint pde_list_read(void);
Xint want_pd_create(char *);
Xstruct phone_directory_entry *pde_list_search(char *,int );
Xunsigned char dirw_get_cmd(char *);
Xvoid choose_line(unsigned int );
Xvoid copy_pde_to_lvar(struct phone_directory_entry *);
Xvoid dirw_bot_msg(char *);
Xvoid dirw_cmd_line_setup(char *,char *);
Xvoid dirw_display(void);
Xvoid dirw_display_phonedir_name(void);
Xvoid pde_cmd_add(struct phone_directory_entry *);
Xvoid pde_cmd_down(void);
Xvoid pde_cmd_find(void);
Xvoid pde_cmd_mark(struct phone_directory_entry *);
Xvoid pde_cmd_remove(void);
Xvoid pde_cmd_remove_oops(void);
Xvoid pde_cmd_save(void);
Xvoid pde_cmd_unmark(struct phone_directory_entry *);
Xvoid pde_cmd_unmark_all(void);
Xvoid pde_cmd_up(void);
Xvoid pde_display_logical(int ,struct phone_directory_entry *,int );
Xvoid pde_list_add(struct phone_directory_entry *);
Xvoid pde_list_erase(void);
Xvoid pde_list_manager(void);
Xvoid pde_list_remove(struct phone_directory_entry *);
Xvoid pde_list_save_if_dirty(void);
Xvoid pde_list_set_dirty(int );
Xvoid scrw_fill(struct phone_directory_entry *,int *);
Xvoid scrw_fill_at(int ,struct phone_directory_entry *,int *);
X/* ecuphrase.c */
Xint phrases(int ,char * *);
Xvoid phrase_help(void);
Xvoid read_phrases(void);
X/* ecurcvr.c */
Xint is_ansi_terminator(unsigned int );
Xint lgetc_rcvr(void);
Xint process_rcvd_char(unsigned int );
Xvoid accumulate_ansi_sequence(unsigned int );
Xvoid ansi_CNL(void);
Xvoid ansi_CPL(void);
Xvoid ansi_CUB(void);
Xvoid ansi_CUD(void);
Xvoid ansi_CUF(void);
Xvoid ansi_CUP(void);
Xvoid ansi_CUU(void);
Xvoid ansi_DCH(void);
Xvoid ansi_DL(void);
Xvoid ansi_DSR(void);
Xvoid ansi_ECH(void);
Xvoid ansi_ED(void);
Xvoid ansi_EL(void);
Xvoid ansi_HPA(void);
Xvoid ansi_ICH(void);
Xvoid ansi_IL(void);
Xvoid ansi_SD(void);
Xvoid ansi_SGR(void);
Xvoid ansi_SU(void);
Xvoid ansi_VPA(void);
Xvoid process_ansi_sequence(void);
Xvoid rcvd_ESC(void);
Xvoid rcvr(void);
Xvoid rcvr_log_open(void);
Xvoid redisplay_rcvr_screen(void);
Xvoid saved_cursor_restore_cursor(void);
Xvoid saved_cursor_save_cursor(void);
Xvoid spaces(unsigned char *,unsigned int );
X/* ecuscrdump.c */
Xvoid screen_dump(char *);
X/* ecusetup.c */
Xint setup_line_open(void);
Xint setw_get_single(char *);
Xvoid setup_display_baud(void);
Xvoid setup_display_name(void);
Xvoid setup_display_screen(int );
Xvoid setup_display_single_char(void);
Xvoid setup_display_tty(void);
Xvoid setup_open_status(void);
Xvoid setup_screen(char *);
Xvoid setw_bot_msg(char *);
Xvoid setw_err_msg(char *);
Xvoid setw_msg(char *,int ,char ,int *);
X/* ecushm.c */
Xint shm_init(void);
Xint shmx_rc_report(long *,long *);
Xvoid shm_done(void);
Xvoid shmr_process_rcvr_SIGUSR2(void);
Xvoid shmr_set_xmtr_bn_1(void);
Xvoid shmx_connect(void);
Xvoid shmx_make_rcvr_sleep(int );
Xvoid shmx_process_xmtr_SIGUSR2(void);
Xvoid shmx_set_rcvr_bn(int );
Xvoid shmx_set_rcvr_log(char *,int ,int ,int );
X/* ecusighdl.c */
Xchar *hangup_code_text(int );
Xint start_rcvr_process(int );
Xvoid child_signals(void);
Xvoid hangup(int );
Xvoid kill_rcvr_process(int );
Xvoid rcvr_SIGHUP_handler(void);
Xvoid rcvr_SIGINT_handler(void);
Xvoid rcvr_SIGTERM_handler(void);
Xvoid rcvr_SIGUSR1_handler(void);
Xvoid rcvr_SIGUSR2_handler(void);
Xvoid rcvr_common_signal_handler(void);
Xvoid rcvr_signals(void);
Xvoid xmtr_SIGCLD_handler(void);
Xvoid xmtr_SIGHUP_handler(int );
Xvoid xmtr_SIGINT_handler(void);
Xvoid xmtr_SIGTERM_handler(int );
Xvoid xmtr_SIGUSR2_handler(void);
Xvoid xmtr_signals(void);
X/* ecutcap.c */
Xint tcap_gets(char *,int ,unsigned char *,int );
Xvoid tcap_blink_off(void);
Xvoid tcap_blink_on(void);
Xvoid tcap_bold_off(void);
Xvoid tcap_bold_on(void);
Xvoid tcap_clear_area_char(int ,int );
Xvoid tcap_clear_screen(void);
Xvoid tcap_curbotleft(void);
Xvoid tcap_curleft(int );
Xvoid tcap_curright(int );
Xvoid tcap_cursor(unsigned int ,unsigned int );
Xvoid tcap_delete_chars(int );
Xvoid tcap_delete_lines(int );
Xvoid tcap_draw_box(int ,int ,int ,int ,char *,int );
Xvoid tcap_draw_box_primitive(int ,int ,int ,int );
Xvoid tcap_eeod(void);
Xvoid tcap_eeol(void);
Xvoid tcap_horiz_rule(int );
Xvoid tcap_init(void);
Xvoid tcap_insert_chars(int );
Xvoid tcap_insert_lines(int );
Xvoid tcap_putc_stderr(int );
Xvoid tcap_stand_end(void);
Xvoid tcap_stand_out(void);
Xvoid tcap_underscore_off(void);
Xvoid tcap_underscore_on(void);
Xvoid tcap_vbell(void);
Xvoid tcap_vertical_rule(int ,int ,int );
X/* ecutime.c */
Xchar *epoch_secs_to_str(long ,int ,char *);
Xchar *get_elapsed_time(long );
Xchar *get_tod(int ,char *);
Xint get_day(int );
Xint get_month(int );
X/* ecutty.c */
Xchar *get_ttyname(void);
Xint color_name_to_num(char *);
Xint get_ttymode(void);
Xint setcolor_internal(int ,char * *);
Xint ttygets_esd(struct esd *,int ,int );
Xunsigned int ttygetc(int );
Xvoid _setcolor(unsigned long );
Xvoid read_colors_file(void);
Xvoid ring_bell(void);
Xvoid setcolor(unsigned long );
Xvoid ttyflush(int );
Xvoid ttygets(char *,int ,int );
Xvoid ttyinit(unsigned char );
Xvoid ttymode(int );
X/* ecuuclc.c */
Xchar to_lower(char );
Xchar to_upper(char );
Xint minunique(char *,char *,int );
Xint ulcmpb(unsigned char *,unsigned char *);
Xint ulindex(char *,char *);
Xint ulrindex(char *,char *);
X/* ecuusage.c */
Xvoid general_usage(char * *);
Xvoid log_cmd_usage(void);
Xvoid usage(void);
X/* ecuutil.c */
Xchar *arg_token(char *,char *);
Xchar *errno_text(int );
Xchar *hex_to_ascii_name(char );
Xchar *make_char_graphic(char ,int );
Xchar *mode_map(unsigned short ,char *);
Xchar *skip_ld_break(char *);
Xchar *str_token(char *,char *);
Xint ascii_name_to_hex(char *);
Xint ascii_to_hex(char *);
Xint find_shell_chars(char *);
Xint get_curr_dir(char *,int );
Xint get_home_dir(char *);
Xint make_dirs(char *);
Xint mkdir(char *,int );
Xint yes_or_no(char *);
Xvoid build_arg_array(char *,char * *,int ,int *);
Xvoid build_str_array(char *,char * *,int ,int *);
Xvoid disp_line_termio(int ,char *);
Xvoid disp_termio(struct termio *,char *);
Xvoid dummy_call(void);
Xvoid make_ecu_subdir(void);
Xvoid mem_cpy(char *,char *,int );
Xvoid pad_zstr_to_len(char *,int );
Xvoid perror_errmsg(char *);
Xvoid print_cwd(char *,int );
Xvoid strip_trail_break(char *);
X/* ecuwinutil.c */
Xint winget_single(struct _win_st *,char *,char *);
Xint wingets(struct _win_st *,int ,int ,char *,int ,unsigned char *,int );
Xstruct _win_st *window_create(char *,int ,int ,int ,int ,int );
Xvoid clear_area(struct _win_st *,int ,int ,int );
Xvoid clear_area_char(struct _win_st *,int ,int ,int ,char );
Xvoid winbox(struct _win_st *);
Xvoid window_setup(struct _win_st *,char *,int );
Xvoid windows_end(struct _win_st *);
Xvoid windows_end2(void);
Xvoid windows_end_signal(void);
Xvoid windows_start(void);
X/* ecuxenix.c */
Xchar *signal_name_text(int );
Xint bell_alarm(int );
Xint kbd_escape(unsigned char );
Xint show_escape_prompt(void);
Xvoid bell_notify(int );
Xvoid send_bell_fd(int ,int ,int );
Xvoid send_get_response(int ,int ,char * *);
Xvoid set_bell_fd(int ,int ,int );
Xvoid set_default_escape_prompt(void);
Xvoid xbell(int ,int );
Xvoid xbell_fd(int ,int ,int );
X/* ecuxfer.c */
Xchar *xfer_title_fragment(void);
Xint report_send_status(void);
Xint xfrw_get_single(char *);
Xvoid file_xfer_done_bell(void);
Xvoid file_xfer_start(void);
Xvoid receive_files_from_remote(int ,char * *);
Xvoid send_files_to_remote(int ,char * *);
Xvoid xfrw_bot_msg(char *);
Xvoid xfrw_display_cmd_line(void);
Xvoid xfrws_display_allvars(void);
Xvoid xfrws_display_binary(void);
Xvoid xfrws_display_literals(void);
Xvoid xfrws_display_name(void);
Xvoid xfrws_display_xfernew(void);
X/* esdutil.c */
Xint append_zstr_to_esd(struct esd *,char *);
Xint end_of_cmd(struct esd *);
Xint esdstrindex(struct esd *,struct esd *,int ,int );
Xint fgetesd(struct esd *,FILE *);
Xint fputesd(struct esd *,FILE *,int ,int );
Xint get_alpha_zstr(struct esd *,char *,int );
Xint get_alphanum_zstr(struct esd *,char *,int );
Xint get_cmd_char(struct esd *,char *);
Xint get_numeric_value(struct esd *,long *);
Xint get_numeric_zstr(struct esd *,char *,int );
Xint get_switches(struct esd *,char *,int );
Xint get_word_zstr(struct esd *,char *,int );
Xint keyword_lookup(struct keyword_table_type *,char *);
Xint realloc_esd(struct esd *,int );
Xint skip_cmd_break(struct esd *);
Xint skip_cmd_char(struct esd *,char );
Xint skip_colon(struct esd *);
Xint skip_comma(struct esd *);
Xint skip_paren(struct esd *,int );
Xint strindex(char *,char *);
Xstruct esd *make_esd(int );
Xvoid free_esd(struct esd *);
Xvoid init_esd(struct esd *,char *,int );
Xvoid null_terminate_esd(struct esd *);
Xvoid show_esd(struct esd *,char *);
Xvoid strip_trailing_spaces_esd(struct esd *);
Xvoid zero_esd(struct esd *);
X/* expresp.c */
Xint pcmd_expresp(struct esd *);
Xint execute_expresp(char *);
Xint expect(char *);
Xvoid respond(char *);
X/* feval.c */
Xint feval_int(struct esd *,long *);
Xint feval_str(struct esd *,struct esd *);
Xint strfunc_left(struct esd *,struct esd *,struct esd *);
Xint strfunc_right(struct esd *,struct esd *,struct esd *);
X/* gint.c */
Xint gcol_range(struct esd *,unsigned long *,unsigned long *);
Xint gint(struct esd *,long *);
Xint gint_base(struct esd *,long *);
Xint gint_constant(struct esd *,long *);
Xint gintop(struct esd *,int *);
X/* gstr.c */
Xint gstr(struct esd *,struct esd *,int );
X/* hdbintf.c */
Xchar *hdb_dial_error_text(int );
Xint hdb_dial(char * *);
Xint ungetty_get_line(void);
Xstruct dlent *getdlent(void);
Xstruct dlent *getdlentname(char *);
Xstruct dvent *getdvbaud(unsigned int );
Xstruct dvent *getdvent(void);
Xstruct dvent *getdvline(char *);
Xvoid dialstr_translate(char *,char *);
Xvoid enddlent(void);
Xvoid enddvent(void);
Xvoid hdb_init(void);
Xvoid ungetty_return_line(void);
X/* logevent.c */
Xvoid ecu_log_event(int ,char *);
X/* nonansikey.c */
Xint define_nonansi_key(char *);
Xunsigned char map_nonansi_key(unsigned char *,int );
Xvoid nonansi_key_init(void);
Xvoid nonansi_key_read(char *);
X/* pcmd.c */
Xint pcmd_baud(struct esd *);
Xint pcmd_cd(struct esd *);
Xint pcmd_clrx(struct esd *);
Xint pcmd_dial(struct esd *);
Xint pcmd_duplex(struct esd *);
Xint pcmd_echo(struct esd *);
Xint pcmd_exit(struct esd *);
Xint pcmd_flush(struct esd *);
Xint pcmd_getf(struct esd *);
Xint pcmd_hangup(struct esd *);
Xint pcmd_hexdump(struct esd *);
Xint pcmd_lbreak(struct esd *);
Xint pcmd_lgets(struct esd *);
Xint pcmd_logevent(struct esd *);
Xint pcmd_lookfor(struct esd *);
Xint pcmd_nap(struct esd *);
Xint pcmd_parity(struct esd *);
Xint pcmd_prompt(struct esd *);
Xint pcmd_ptrace(struct esd *);
Xint pcmd_putf(struct esd *);
Xint pcmd_rname(struct esd *);
Xint pcmd_send(struct esd *);
Xint pcmd_set(struct esd *);
Xint pcmd_system(struct esd *);
Xint pcmd_xon(struct esd *);
Xunsigned long get_big_endian_32(unsigned char *);
Xunsigned short get_big_endian_16(unsigned char *);
X/* pcmdfile.c */
Xint _file_not_open(int );
Xint _gfilenum(struct esd *,int *);
Xint _param_to_stat(struct esd *,struct stat * *);
Xint pcmd_fchmod(struct esd *);
Xint pcmd_fclose(struct esd *);
Xint pcmd_fdel(struct esd *);
Xint pcmd_fgetc(struct esd *);
Xint pcmd_fgets(struct esd *);
Xint pcmd_fopen(struct esd *);
Xint pcmd_fputc(struct esd *);
Xint pcmd_fputs(struct esd *);
Xint pcmd_fread(struct esd *);
Xint pcmd_fseek(struct esd *);
Xint pcmd_fwrite(struct esd *);
Xint pcmd_mkdir(struct esd *);
Xint pcmd_pclose(struct esd *);
Xint pcmd_popen(struct esd *);
Xint ifunc_fatime(struct esd *,long *);
Xint ifunc_fmode(struct esd *,long *);
Xint ifunc_fmtime(struct esd *,long *);
Xint ifunc_fsize(struct esd *,long *);
Xint ifunc_ftell(struct esd *,long *);
Xint ifunc_ischr(struct esd *,long *);
Xint ifunc_isdir(struct esd *,long *);
Xint ifunc_isreg(struct esd *,long *);
Xint str_to_filemode(char *,long *);
Xvoid proc_file_reset(void);
X/* pcmdif.c */
Xint _cmd_ifrel_common(struct esd *,int );
Xint _if_common(struct esd *,int );
Xint pcmd_else(struct esd *);
Xint pcmd_ifge(struct esd *);
Xint pcmd_ifgt(struct esd *);
Xint pcmd_ifi(struct esd *);
Xint pcmd_ifle(struct esd *);
Xint pcmd_iflt(struct esd *);
Xint pcmd_ifnz(struct esd *);
Xint pcmd_ifs(struct esd *);
Xint pcmd_ifz(struct esd *);
Xint get_logicop(struct esd *,int *);
Xint get_relop(struct esd *,int *);
Xint get_truth_int(struct esd *,int *);
Xint get_truth_str(struct esd *,int *);
Xint test_truth_int(long ,int ,long );
X/* pcmdtty.c */
Xint pcmd_cls(struct esd *);
Xint pcmd_color(struct esd *);
Xint pcmd_cursor(struct esd *);
Xint pcmd_delline(struct esd *);
Xint pcmd_eeol(struct esd *);
Xint pcmd_fkey(struct esd *);
Xint pcmd_home(struct esd *);
Xint pcmd_icolor(struct esd *);
Xint pcmd_insline(struct esd *);
Xint pcmd_scrdump(struct esd *);
Xint pcmd_vidcolor(struct esd *);
Xint pcmd_vidnorm(struct esd *);
Xint pcmd_vidrev(struct esd *);
Xint ifunc_colors(unsigned long *);
X/* pcmdwhile.c */
Xint pcmd_whilei(struct esd *);
Xint pcmd_whiles(struct esd *);
X/* pcmdxfer.c */
Xint _make_bottom_label(struct esd *,int ,int );
Xint _send_common(char *);
Xint pcmd_rk(struct esd *);
Xint pcmd_rs(struct esd *);
Xint pcmd_rx(struct esd *);
Xint pcmd_ry(struct esd *);
Xint pcmd_rz(struct esd *);
Xint pcmd_sk(struct esd *);
Xint pcmd_ss(struct esd *);
Xint pcmd_sx(struct esd *);
Xint pcmd_sy(struct esd *);
Xint pcmd_sz(struct esd *);
Xvoid _rx_error(void);
X/* poutput.c */
Xint pcmd_plog(struct esd *);
Xint plog_control(char *);
Xvoid pflush(void);
Xvoid plogc(char );
Xvoid plogs(char *);
Xvoid poutput_init(void);
Xvoid pperror(char *);
Xvoid pputc(char );
Xvoid pputs(char *);
X/* pprintf.c */
X/* proc.c */
Xchar *find_procedure(char *);
Xint _cmd_gosub_common(struct esd *,int );
Xint _get_goto_label(struct esd *);
Xint pcmd_do(struct esd *);
Xint pcmd_gosub(struct esd *);
Xint pcmd_gosubb(struct esd *);
Xint pcmd_goto(struct esd *);
Xint pcmd_gotob(struct esd *);
Xint pcmd_return(struct esd *);
Xint do_proc(int ,char * *);
Xint execute_esd(struct esd *);
Xint execute_goto(struct pcb_type *,int );
Xint execute_labelled_esd(struct esd *);
Xint execute_proc(struct pcb_type *,int );
Xstruct lcb_type *find_labelled_lcb(char *,struct lcb_type *,struct lcb_type *);
Xstruct p_cmd *find_proc_cmd(struct p_cmd *,char *);
Xvoid dump_proc(struct pcb_type *);
Xvoid free_lcb_chain(struct lcb_type *);
Xvoid show_error_position(struct pcb_type *);
Xvoid trace_proc_cmd(struct pcb_type *);
X/* proc_error.c */
Xvoid proc_error(int );
X/* procframe.c */
Xint pcmd_break(struct esd *);
Xint pcmd_continue(struct esd *);
Xint execute_frame(int );
X/* regexp.c */
Xint advance(char *,char *);
Xint ecmp(char *,char *,int );
Xint regexp_compile(char *,char *,int ,char * *);
Xint regexp_operation(char *,char *,long *);
Xint regexp_scan(char *,char *,char * *,int *);
Xint step(char *,char *);
Xvoid compile(char *,char *,char *,int );
Xvoid getrnge(char *);
X/* utmpstat.c */
Xint strcmpi(char *,char *);
Xint utmp_status(char *);
X/* var.c */
Xint build_mkvi(struct esd *);
Xint build_mkvi_primitive(char *);
Xint build_mkvs(struct esd *);
Xint build_mkvs_primitive(char *,int );
Xint pcmd_mkvar(struct esd *);
Xint find_mkvi(char *,long * *,int );
Xint find_mkvs(char *,struct esd * *,int );
Xint get_ivptr(struct esd *,long * *,int );
Xint get_subscript(struct esd *,unsigned long *);
Xint get_svptr(struct esd *,struct esd * *,int );
Xstruct mkv_type *alloc_MKV(char *);
Xvoid free_mkvi(struct mkv_type *);
Xvoid free_mkvs(struct mkv_type *);
Xvoid mkv_proc_starting(struct pcb_type *);
Xvoid mkv_proc_terminating(struct pcb_type *);
Xvoid var_init(void);
X
X#else		/* compiler doesn't know about prototyping */
X
X/* bamboozle.c */
Xchar *bamboozle();
X/* cmdtbl.c */
X/* ecu.c */
X/* ecuDCE.c */
Xchar *DCE_get_result();
Xvoid DCE_autoanswer();
Xvoid DCE_hangup();
Xvoid DCE_now_on_hook();
Xvoid DCE_read_modem_init();
Xvoid DCE_report_iv_set();
Xvoid process_modem_init();
Xvoid show_modem_init_error();
X/* ecuLCK.c */
X/* ecuchdir.c */
Xvoid cd_array_delete_usage();
Xvoid cd_array_init();
Xvoid cd_array_read();
Xvoid cd_array_save();
X/* ecudump.c */
Xvoid dump_putc();
Xvoid dump_puts();
Xvoid hex_dump();
Xvoid hex_dump16();
Xvoid hex_dump32();
Xvoid hex_dump4();
Xvoid hex_dump8();
Xvoid hex_dump_fp();
X/* ecufinsert.c */
Xvoid file_insert_clear_xoff();
X/* ecufkey.c */
Xchar *keyset_idstr();
Xvoid ffso();
Xvoid keyset_display();
Xvoid keyset_init();
X/* ecufork.c */
Xchar *find_executable();
Xvoid shell();
X/* ecuicmaux.c */
Xchar *icmd_escape_str();
Xvoid display_ascii_names();
Xvoid icmd_conversion();
Xvoid nlin_nlout_control();
X/* ecuicmd.c */
X/* ecuicmhelp.c */
Xchar *help_get_cmd();
Xstruct p_cmd *search_cmd_list_pcmd();
Xvoid calculate_help_right_column();
Xvoid display_help_stderr();
Xvoid help_cmd_line_setup();
Xvoid icmd_help();
Xvoid show_cmds();
X/* ecuicmhist.c */
Xvoid icmd_history_add();
X/* eculine.c */
Xchar *lgets_timeout();
Xchar *lopen_err_text();
Xchar *xon_status();
Xunsigned char lgetc_xmtr();
Xvoid lRTSCTS_control();
Xvoid lbreak();
Xvoid lclear_xmtr_xoff();
Xvoid lclose();
Xvoid ldraino();
Xvoid lflush();
Xvoid lget_xon_xoff();
Xvoid lputc();
Xvoid lputc_paced();
Xvoid lputs();
Xvoid lputs_paced();
Xvoid lquiet();
Xvoid lreset_ksr();
Xvoid lset_parity();
Xvoid ltoggle_dtr();
Xvoid lxon_xoff();
Xvoid process_xmtr_rcvd_char();
X/* eculock.c */
Xvoid unlock_tty();
X/* ecunumrev.c */
X/* ecuphone.c */
Xstruct phone_directory_entry *pde_list_search();
Xunsigned char dirw_get_cmd();
Xvoid choose_line();
Xvoid copy_pde_to_lvar();
Xvoid dirw_bot_msg();
Xvoid dirw_cmd_line_setup();
Xvoid dirw_display();
Xvoid dirw_display_phonedir_name();
Xvoid pde_cmd_add();
Xvoid pde_cmd_down();
Xvoid pde_cmd_find();
Xvoid pde_cmd_mark();
Xvoid pde_cmd_remove();
Xvoid pde_cmd_remove_oops();
Xvoid pde_cmd_save();
Xvoid pde_cmd_unmark();
Xvoid pde_cmd_unmark_all();
Xvoid pde_cmd_up();
Xvoid pde_display_logical();
Xvoid pde_list_add();
Xvoid pde_list_erase();
Xvoid pde_list_manager();
Xvoid pde_list_remove();
Xvoid pde_list_save_if_dirty();
Xvoid pde_list_set_dirty();
Xvoid scrw_fill();
Xvoid scrw_fill_at();
X/* ecuphrase.c */
Xvoid phrase_help();
Xvoid read_phrases();
X/* ecurcvr.c */
Xvoid accumulate_ansi_sequence();
Xvoid ansi_CNL();
Xvoid ansi_CPL();
Xvoid ansi_CUB();
Xvoid ansi_CUD();
Xvoid ansi_CUF();
Xvoid ansi_CUP();
Xvoid ansi_CUU();
Xvoid ansi_DCH();
Xvoid ansi_DL();
Xvoid ansi_DSR();
Xvoid ansi_ECH();
Xvoid ansi_ED();
Xvoid ansi_EL();
Xvoid ansi_HPA();
Xvoid ansi_ICH();
Xvoid ansi_IL();
Xvoid ansi_SD();
Xvoid ansi_SGR();
Xvoid ansi_SU();
Xvoid ansi_VPA();
Xvoid process_ansi_sequence();
Xvoid rcvd_ESC();
Xvoid rcvr();
Xvoid rcvr_log_open();
Xvoid redisplay_rcvr_screen();
Xvoid saved_cursor_restore_cursor();
Xvoid saved_cursor_save_cursor();
Xvoid spaces();
X/* ecuscrdump.c */
Xvoid screen_dump();
X/* ecusetup.c */
Xvoid setup_display_baud();
Xvoid setup_display_name();
Xvoid setup_display_screen();
Xvoid setup_display_single_char();
Xvoid setup_display_tty();
Xvoid setup_open_status();
Xvoid setup_screen();
Xvoid setw_bot_msg();
Xvoid setw_err_msg();
Xvoid setw_msg();
X/* ecushm.c */
Xvoid shm_done();
Xvoid shmr_process_rcvr_SIGUSR2();
Xvoid shmr_set_xmtr_bn_1();
Xvoid shmx_connect();
Xvoid shmx_make_rcvr_sleep();
Xvoid shmx_process_xmtr_SIGUSR2();
Xvoid shmx_set_rcvr_bn();
Xvoid shmx_set_rcvr_log();
X/* ecusighdl.c */
Xchar *hangup_code_text();
Xvoid child_signals();
Xvoid hangup();
Xvoid kill_rcvr_process();
Xvoid rcvr_SIGHUP_handler();
Xvoid rcvr_SIGINT_handler();
Xvoid rcvr_SIGTERM_handler();
Xvoid rcvr_SIGUSR1_handler();
Xvoid rcvr_SIGUSR2_handler();
Xvoid rcvr_common_signal_handler();
Xvoid rcvr_signals();
Xvoid xmtr_SIGCLD_handler();
Xvoid xmtr_SIGHUP_handler();
Xvoid xmtr_SIGINT_handler();
Xvoid xmtr_SIGTERM_handler();
Xvoid xmtr_SIGUSR2_handler();
Xvoid xmtr_signals();
X/* ecutcap.c */
Xvoid tcap_blink_off();
Xvoid tcap_blink_on();
Xvoid tcap_bold_off();
Xvoid tcap_bold_on();
Xvoid tcap_clear_area_char();
Xvoid tcap_clear_screen();
Xvoid tcap_curbotleft();
Xvoid tcap_curleft();
Xvoid tcap_curright();
Xvoid tcap_cursor();
Xvoid tcap_delete_chars();
Xvoid tcap_delete_lines();
Xvoid tcap_draw_box();
Xvoid tcap_draw_box_primitive();
Xvoid tcap_eeod();
Xvoid tcap_eeol();
Xvoid tcap_horiz_rule();
Xvoid tcap_init();
Xvoid tcap_insert_chars();
Xvoid tcap_insert_lines();
Xvoid tcap_putc_stderr();
Xvoid tcap_stand_end();
Xvoid tcap_stand_out();
Xvoid tcap_underscore_off();
Xvoid tcap_underscore_on();
Xvoid tcap_vbell();
Xvoid tcap_vertical_rule();
X/* ecutime.c */
Xchar *epoch_secs_to_str();
Xchar *get_elapsed_time();
Xchar *get_tod();
X/* ecutty.c */
Xchar *get_ttyname();
Xunsigned int ttygetc();
Xvoid _setcolor();
Xvoid read_colors_file();
Xvoid ring_bell();
Xvoid setcolor();
Xvoid ttyflush();
Xvoid ttygets();
Xvoid ttyinit();
Xvoid ttymode();
X/* ecuuclc.c */
Xchar to_lower();
Xchar to_upper();
X/* ecuusage.c */
Xvoid general_usage();
Xvoid log_cmd_usage();
Xvoid usage();
X/* ecuutil.c */
Xchar *arg_token();
Xchar *errno_text();
Xchar *hex_to_ascii_name();
Xchar *make_char_graphic();
Xchar *mode_map();
Xchar *skip_ld_break();
Xchar *str_token();
Xvoid build_arg_array();
Xvoid build_str_array();
Xvoid disp_line_termio();
Xvoid disp_termio();
Xvoid dummy_call();
Xvoid make_ecu_subdir();
Xvoid mem_cpy();
Xvoid pad_zstr_to_len();
Xvoid perror_errmsg();
Xvoid print_cwd();
Xvoid strip_trail_break();
X/* ecuwinutil.c */
Xstruct _win_st *window_create();
Xvoid clear_area();
Xvoid clear_area_char();
Xvoid winbox();
Xvoid window_setup();
Xvoid windows_end();
Xvoid windows_end2();
Xvoid windows_end_signal();
Xvoid windows_start();
X/* ecuxenix.c */
Xchar *signal_name_text();
Xvoid bell_notify();
Xvoid send_bell_fd();
Xvoid send_get_response();
Xvoid set_bell_fd();
Xvoid set_default_escape_prompt();
Xvoid xbell();
Xvoid xbell_fd();
X/* ecuxfer.c */
Xchar *xfer_title_fragment();
Xvoid file_xfer_done_bell();
Xvoid file_xfer_start();
Xvoid receive_files_from_remote();
Xvoid send_files_to_remote();
Xvoid xfrw_bot_msg();
Xvoid xfrw_display_cmd_line();
Xvoid xfrws_display_allvars();
Xvoid xfrws_display_binary();
Xvoid xfrws_display_literals();
Xvoid xfrws_display_name();
Xvoid xfrws_display_xfernew();
X/* esdutil.c */
Xstruct esd *make_esd();
Xvoid free_esd();
Xvoid init_esd();
Xvoid null_terminate_esd();
Xvoid show_esd();
Xvoid strip_trailing_spaces_esd();
Xvoid zero_esd();
X/* expresp.c */
Xvoid respond();
X/* feval.c */
X/* gint.c */
X/* gstr.c */
X/* hdbintf.c */
Xchar *hdb_dial_error_text();
Xstruct dlent *getdlent();
Xstruct dlent *getdlentname();
Xstruct dvent *getdvbaud();
Xstruct dvent *getdvent();
Xstruct dvent *getdvline();
Xvoid dialstr_translate();
Xvoid enddlent();
Xvoid enddvent();
Xvoid hdb_init();
Xvoid ungetty_return_line();
X/* logevent.c */
Xvoid ecu_log_event();
X/* nonansikey.c */
Xunsigned char map_nonansi_key();
Xvoid nonansi_key_init();
Xvoid nonansi_key_read();
X/* pcmd.c */
Xunsigned long get_big_endian_32();
Xunsigned short get_big_endian_16();
X/* pcmdfile.c */
Xvoid proc_file_reset();
X/* pcmdif.c */
X/* pcmdtty.c */
X/* pcmdwhile.c */
X/* pcmdxfer.c */
Xvoid _rx_error();
X/* poutput.c */
Xvoid pflush();
Xvoid plogc();
Xvoid plogs();
Xvoid poutput_init();
Xvoid pperror();
Xvoid pputc();
Xvoid pputs();
X/* pprintf.c */
X/* proc.c */
Xchar *find_procedure();
Xstruct lcb_type *find_labelled_lcb();
Xstruct p_cmd *find_proc_cmd();
Xvoid dump_proc();
Xvoid free_lcb_chain();
Xvoid show_error_position();
Xvoid trace_proc_cmd();
X/* proc_error.c */
Xvoid proc_error();
X/* procframe.c */
X/* regexp.c */
Xvoid compile();
Xvoid getrnge();
X/* utmpstat.c */
X/* var.c */
Xstruct mkv_type *alloc_MKV();
Xvoid free_mkvi();
Xvoid free_mkvs();
Xvoid mkv_proc_starting();
Xvoid mkv_proc_terminating();
Xvoid var_init();
X
X#endif /* LINT_ARGS */
X#endif /* BUILDING_LINT_ARGS */
X
X/* end of lint_args.h */
SHAR_EOF
$TOUCH -am 1224224790 'lint_args.h' &&
chmod 0644 lint_args.h ||
echo 'restore of lint_args.h failed'
Wc_c="`wc -c < 'lint_args.h'`"
test 27009 -eq "$Wc_c" ||
	echo 'lint_args.h: original size 27009, current size' "$Wc_c"
# ============= patchlevel.h ==============
echo 'x - extracting patchlevel.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'patchlevel.h' &&
X#define PATCHLEVEL 0
SHAR_EOF
$TOUCH -am 1224224090 'patchlevel.h' &&
chmod 0644 patchlevel.h ||
echo 'restore of patchlevel.h failed'
Wc_c="`wc -c < 'patchlevel.h'`"
test 21 -eq "$Wc_c" ||
	echo 'patchlevel.h: original size 21, current size' "$Wc_c"
# ============= pc_scr.h ==============
echo 'x - extracting pc_scr.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'pc_scr.h' &&
X/*+-------------------------------------------------------------------------
X	pc_scr.h - PC/AT screen definitions
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:12-04-1990-02:48-wht@n4hgf-for nonansi terminals provide either ruling set */
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X/*
X * AT ROM ruling characters
X */
X#define at_TL		0xDA	/* top left single rule */
X#define at_TR		0xBF	/* top right single rule */
X#define at_BL		0xC0	/* bottom left single rule */
X#define at_BR		0xD9	/* bottom right single rule */
X#define at_LT		0xC3	/* left hand T */
X#define at_RT		0xB4	/* right hand T */
X#define at_VR		0xB3	/* vertical rule */
X#define at_HR		0xC4	/* horizontal rule */
X
X/*
X * non-ANSI equivalents
X */
X#define vanilla_TL		'.'
X#define vanilla_TR		'.'
X#define vanilla_BL		'`'
X#define vanilla_BR		'\''
X#define vanilla_LT		'+'
X#define vanilla_RT		'+'
X#define vanilla_VR		'|'
X#define vanilla_HR		'-'
X
Xextern unsigned char sTL;
Xextern unsigned char sTR;
Xextern unsigned char sBL;
Xextern unsigned char sBR;
Xextern unsigned char sLT;
Xextern unsigned char sRT;
Xextern unsigned char sVR;
Xextern unsigned char sHR;
SHAR_EOF
$TOUCH -am 1224224090 'pc_scr.h' &&
chmod 0644 pc_scr.h ||
echo 'restore of pc_scr.h failed'
Wc_c="`wc -c < 'pc_scr.h'`"
test 1199 -eq "$Wc_c" ||
	echo 'pc_scr.h: original size 1199, current size' "$Wc_c"
# ============= proc.h ==============
echo 'x - extracting proc.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'proc.h' &&
X/*+-------------------------------------------------------------------------
X	proc.h
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X
Xtypedef struct lcb_type
X{
X	ESD *text;				/* line's text buffer */
X	struct lcb_type *next;	/* next lcb in chain; if==NULL, no more in chain */
X	struct lcb_type *prev;	/* previous lcb in chain; if==NULL, top of chain */
X	ushort lineno;			/* line number */
X} LCB;
X
Xtypedef struct pcb_type
X{
X	int argc;
X	char **argv;
X	LCB *first;			/* first in procedure */
X	LCB *last;			/* last in procedure */
X	LCB *current;		/* currently executing or last executed line */
X	char *mkvs_last;	/* actually MKV *, but ... */
X	char *mkvi_last;	/* ... see var.c for details */
X} PCB;
X
X#define MAX_PARGV 20	/* max args to procedure, including name */
X#define PROC_STACK_MAX	10	/* max proc nest */
SHAR_EOF
$TOUCH -am 1224224390 'proc.h' &&
chmod 0644 proc.h ||
echo 'restore of proc.h failed'
Wc_c="`wc -c < 'proc.h'`"
test 938 -eq "$Wc_c" ||
	echo 'proc.h: original size 938, current size' "$Wc_c"
# ============= relop.h ==============
echo 'x - extracting relop.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'relop.h' &&
X/*+-------------------------------------------------------------------------
X	relop.h - operator definitions (relative and logical)
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#define OP_EQ   1
X#define OP_NE   2
X#define OP_LT   3
X#define OP_LE   4
X#define OP_GT   5
X#define OP_GE   6
X
X#define OP_AND	20
X#define OP_OR	21
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of relop.h */
SHAR_EOF
$TOUCH -am 1224224490 'relop.h' &&
chmod 0644 relop.h ||
echo 'restore of relop.h failed'
Wc_c="`wc -c < 'relop.h'`"
test 516 -eq "$Wc_c" ||
	echo 'relop.h: original size 516, current size' "$Wc_c"
# ============= smap.h ==============
echo 'x - extracting smap.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'smap.h' &&
X/*
X *	@(#)smap.h	1.1	30/08/88	16:07:36	agc
X *
X *	Copyright 1988, Joypace Ltd., UK. This product is "careware".
X *	If you find it useful, I suggest that you send what you think
X *	it is worth to the charity of your choice.
X *
X *	Alistair G. Crooks,				+44 5805 3114
X *	Joypace Ltd.,
X *	2 Vale Road,
X *	Hawkhurst,
X *	Kent TN18 4BU,
X *	UK.
X *
X *	UUCP Europe                 ...!mcvax!unido!nixpbe!nixbln!agc
X *	UUCP everywhere else ...!uunet!linus!nixbur!nixpbe!nixbln!agc
X *
X *	smap.h - include file for debugging aids. This file must be included,
X *	before any calls, in any source file that calls malloc, calloc,
X *	realloc, or free. (Note alloca is not included in this list).
X */
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#define NOMEMCHECK
X
X#ifndef __GNUC__
X#if !defined(VTYPE)
X#if defined(__STDC__)	/* sigh ... malloc and such types */
X#define VTYPE void
X#else
X#define VTYPE char
X#endif
X#endif
X
X#ifdef NOMEMCHECK
X#define	_blkstart()
X#define _blkend()
X#define _blkignore(p)
XVTYPE *malloc();
XVTYPE *calloc();
XVTYPE *realloc();
Xvoid free();
X#else /* not NOMEMCHECK */
X#ifndef malloc
X#define malloc	_malloc
X#define calloc	_calloc
X#define realloc	_realloc
X#define free	_free
XVTYPE *_malloc();
XVTYPE *_calloc();
XVTYPE *_realloc();
Xvoid _free();
X#endif /* not malloc */
Xvoid	_blkstart();
Xvoid	_blkend();
Xvoid	_blkignore();
X#endif /* not NOMEMCHECK */
X
X#endif /* __GNUC__ */
SHAR_EOF
$TOUCH -am 1224224490 'smap.h' &&
chmod 0644 smap.h ||
echo 'restore of smap.h failed'
Wc_c="`wc -c < 'smap.h'`"
test 1407 -eq "$Wc_c" ||
	echo 'smap.h: original size 1407, current size' "$Wc_c"
# ============= stdio_lint.h ==============
echo 'x - extracting stdio_lint.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'stdio_lint.h' &&
X/*+-------------------------------------------------------------------------
X	stdio_lint.h -- prototyping for library routines
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#if defined(LINT_ARGS)
Xchar *gets(char *);
Xchar *getenv(char *);
Xint access(char *,int);
Xint chmod(char *,int);
Xint close(int);
Xint creat(char *,int);
Xint dup(int);
Xint fcloseall(void);
Xint isatty(int);
Xlong lseek(int,long,int);
Xint puts(char *);
Xint read(int,char *,unsigned int);
X#if !defined(M_UNIX)
Xint strcmp(char *,char *);
Xint strncmp(char *,char*,int);
Xchar *strcpy(char *,char *);
Xchar *strncpy(char *,char *,int);
Xchar *strcat(char *,char *);
Xchar *strncat(char *,char *,int);
Xchar *strchr(char *,char);
Xchar *strrchr(char *,char);
X#endif
Xint stat(char *,struct stat *);
Xint fstat(int,struct stat *);
Xlong time(long *);
Xint unlink(char *);
Xint write(int,char *,unsigned int);
X#else
Xchar *fgets();
Xvoid free();
Xchar *getenv();
Xchar *gets();
Xlong ftell();
Xlong lseek();
Xvoid perror();
Xvoid rewind();
Xvoid setbuf();
Xlong time();
Xchar *strcpy();
Xchar *strncpy();
Xchar *strcat();
Xchar *strncat();
Xchar *strchr();
Xchar *strrchr();
X#endif
X/* vi: set tabstop=4 shiftwidth=4: */
SHAR_EOF
$TOUCH -am 1224224490 'stdio_lint.h' &&
chmod 0644 stdio_lint.h ||
echo 'restore of stdio_lint.h failed'
Wc_c="`wc -c < 'stdio_lint.h'`"
test 1287 -eq "$Wc_c" ||
	echo 'stdio_lint.h: original size 1287, current size' "$Wc_c"
# ============= utmpstatus.h ==============
echo 'x - extracting utmpstatus.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'utmpstatus.h' &&
X/*+-------------------------------------------------------------------------
X	utmpstatus.h
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X/* utmp_status defines */
X#define US_NOTFOUND	100	/* not in utmp, or getty dead */
X#define US_LOGIN	101	/* enabled for login, idle */
X#define US_DIALOUT	102	/* enabled for login, currently dialout */
X#define US_LOGGEDIN	103	/* enabled for login, in use */
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of utmpstatus.h */
SHAR_EOF
$TOUCH -am 1224224490 'utmpstatus.h' &&
chmod 0644 utmpstatus.h ||
echo 'restore of utmpstatus.h failed'
Wc_c="`wc -c < 'utmpstatus.h'`"
test 592 -eq "$Wc_c" ||
	echo 'utmpstatus.h: original size 592, current size' "$Wc_c"
# ============= var.h ==============
echo 'x - extracting var.h (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'var.h' &&
X/*+-------------------------------------------------------------------------
X	var.h - ecu user variable declarations
X	wht@n4hgf.Mt-Park.GA.US
X--------------------------------------------------------------------------*/
X/*+:EDITS:*/
X/*:08-14-1990-20:40-wht@n4hgf-ecu3.00-flush old edit history */
X
X#if !defined(VDECL)
X#define VDECL extern
X#endif
X
X#define SVLEN	256
X#define SVQUAN	50
X#define IVQUAN	50
X
XVDECL ESD *sv[SVQUAN];
XVDECL long iv[SVQUAN];
X
X/* vi: set tabstop=4 shiftwidth=4: */
X/* end of var.h */
SHAR_EOF
$TOUCH -am 1224224490 'var.h' &&
chmod 0644 var.h ||
echo 'restore of var.h failed'
Wc_c="`wc -c < 'var.h'`"
test 505 -eq "$Wc_c" ||
	echo 'var.h: original size 505, current size' "$Wc_c"
true || echo 'restore of help/Makefile failed'
echo End of part 16, continue with part 17
exit 0
--------------------------------------------------------------------
Warren Tucker, TuckerWare emory!n4hgf!wht or wht@n4hgf.Mt-Park.GA.US
Hacker Extraordinaire  d' async PADs,  pods,  proteins and protocols

exit 0 # Just in case...
-- 
Kent Landfield                   INTERNET: kent@sparky.IMD.Sterling.COM
Sterling Software, IMD           UUCP:     uunet!sparky!kent
Phone:    (402) 291-8300         FAX:      (402) 291-4362
Please send comp.sources.misc-related mail to kent@uunet.uu.net.