BSD 4_2 release
[unix-history] / usr / src / usr.bin / learn / maktee.c
#ifndef lint
static char sccsid[] = "@(#)maktee.c 4.2 (Berkeley) 4/25/83";
#endif not lint
#include "stdio.h"
#include "signal.h"
#include "lrnref.h"
static int oldout;
static char tee[50];
maktee()
{
int fpip[2], in, out;
if (tee[0] == 0)
sprintf(tee, "%s/bin/lrntee", direct);
pipe(fpip);
in = fpip[0];
out= fpip[1];
if (fork() == 0) {
signal(SIGINT, SIG_IGN);
close(0);
close(out);
dup(in);
close(in);
execl (tee, "lrntee", 0);
perror(tee);
fprintf(stderr, "Maktee: lrntee exec failed\n");
exit(1);
}
close(in);
fflush(stdout);
oldout = dup(1);
close(1);
if (dup(out) != 1) {
perror("dup");
fprintf(stderr, "Maktee: error making tee for copyout\n");
}
close(out);
return(1);
}
untee()
{
int x;
fflush(stdout);
close(1);
dup(oldout);
close(oldout);
wait(&x);
}