static char *sccsid
= "@(#)wwspawn.c 3.1 83/08/11";
switch (wp
->ww_pid
= fork()) {
wp
->ww_state
= WWS_INCHILD
;
wp
->ww_state
= WWS_HASPROC
;
(void) close(wp
->ww_tty
);
#define TERM "TERM=window"
#define TERMCAP "TERMCAP=WW|window|window package:\
:al=\\EL:am:le=^H:bs:cd=\\EJ:ce=\\EK:cl=\\EE:cm=\\EY%%+ %%+ :\
:co#%d:dc=\\EN:dl=\\EM:do=\\EB:ei=\\EO:ho=\\EH:li#%d:im=\\E@:mi:\
:nd=\\EC:ta=^I:pt:up=\\EA:"
(void) dup2(wp
->ww_tty
, 0);
(void) dup2(wp
->ww_tty
, 1);
(void) dup2(wp
->ww_tty
, 2);
for (i
= wwdtablesize
- 1; i
> 2; i
--)
(void) ioctl(i
, (int)TIOCNOTTY
, (char *)0);
(void) open(wp
->ww_ttyname
, 0);
for (p
= environ
, q
= env
; *p
; p
++, q
++) {
if (strncmp(*p
, "TERM=", 5) == 0)
else if (strncmp(*p
, "TERMCAP=", 8) == 0)
*termcap
= sprintf(buf
, TERMCAP
, wp
->ww_w
.nc
, wp
->ww_w
.nr
);
(void) strcat(buf
, wwkeys
);