--- a/io.h +++ b/io.h @@ -9,5 +9,6 @@ int edup (int oldfd); int edup2 (int oldfd, int newfd); FILE* efdopen (int fd, const char *mode); +void set_progname (const char *name); #endif --- a/ttyrec.c +++ b/ttyrec.c @@ -42,13 +42,19 @@ /* * script */ + +#ifndef _GNU_SOURCE +#define _GNU_SOURCE +#endif + #include #include #include #include #include #include -#include +#include +#include #include #include #include @@ -57,7 +63,9 @@ #if defined(SVR4) #include +#if !(defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) || defined(__linux__)) #include +#endif #endif /* SVR4 */ #include @@ -341,7 +349,7 @@ rtt = tt; #if defined(SVR4) rtt.c_iflag = 0; - rtt.c_lflag &= ~(ISIG|ICANON|XCASE|ECHO|ECHOE|ECHOK|ECHONL); + rtt.c_lflag &= ~(ISIG|ICANON|ECHO|ECHOE|ECHOK|ECHONL); rtt.c_oflag = OPOST; rtt.c_cc[VINTR] = CDEL; rtt.c_cc[VQUIT] = CDEL; @@ -449,6 +457,7 @@ perror("open(fd, O_RDWR)"); fail(); } +#ifndef __linux__ if (isastream(slave)) { if (ioctl(slave, I_PUSH, "ptem") < 0) { perror("ioctl(fd, I_PUSH, ptem)"); @@ -466,6 +475,7 @@ #endif (void) ioctl(0, TIOCGWINSZ, (char *)&win); } +#endif #else /* !SVR4 */ #ifndef HAVE_openpty line[strlen("/dev/")] = 't';