2009-02-05 Roland Giersig * v1.08 * Makefile.PL, Tty.xs: added support for posix_openpt(), thanks to Ed Schouten for providing a patch 2006-07-18 Roland Giersig * v1.07 * Tty.xs: added some more letter to BSD allocation 2006-07-15 Roland Giersig * v1.06 * Tty.pm: pre-allocate buffer for ioctl 2006-06-06 Roland Giersig * v1.05 * Tty.xs: added includes and 2006-05-28 Roland Giersig * v1.04 * Tty.xs: added handling for z/OS (uses /dev/ptyp0000) * Makefile.PL: added (for HPUX) 2006-04-25 Roland Giersig * v1.03 * Tty.c: changed newCONSTSUB to use newSV(0) instead of PL_sv_undef, now undef'd constants work * Makefile.PL: made ccflags handling meta-char safe, added ldflags; enhanced error msg * Makefile.PL: added 2002-04-02 Roland Giersig * Tty.pm, Pty.pm: v1.02; disable warning for non-existant die handler 2002-03-18 Roland Giersig * v1.01 * Makefile.PL: remove cpp, test-compile instead * Tty.pm, Pty.pm: disable die handler when requiring Stty 2002-03-06 Roland Giersig * v0.97_04, final pre-release version 2002-03-04 Roland Giersig * Pty.pm: v0.97_03 * Makefile.PL: order of include files is preserved; added test for working cpp. * Tty.pm (clone_winsize_from): v0.97_03; added function. * Tty.xs (allocate_pty): fixed typo in close for _getpty; changed order of termios.h and termio.h includes 2002-02-26 Roland Giersig * test.pl: replaced Test.pm * Tty.pm (set_raw): v0.97_01; moved set_raw() from test to method * Tty.xs: got rid of snprintf; don't try openpty() and getpt() if ptsname is not there. * Pty.pm: v0.97_01; updated docs * Makefile.PL: v0.97_01; auto-create IO::Tty::Constant 2002-01-31 Roland Giersig * Pty.pm: add IO::Stty to @ISA, master pty is sometimes a tty. * Tty.pm: v0.95_01 2002-01-30 Roland Giersig * Tty.pm, Pty.pm: v0.94_05 * Tty.xs (allocate_pty): moved getpt() and openpty() before muxes * test.pl: if master isatty, set it also to raw; seems to be needed. * Makefile.PL: fixed checks; test problematic constants with a compile. 2002-01-23 Roland Giersig * Tty.pm: v0.94_03 * test.pl: changed test to probe for maximum chunk the pty can handle; also, the /dev/tty test probes if an EOF is correctly reported from the child to the parent. * Tty.xs: finally made debug printfs optional via $IO::Tty::DEBUG. 2002-01-18 Roland Giersig * Tty.pm: v0.94_02 * Tty.xs: added #include termio.h 2002-01-07 Roland Giersig * Pty.pm: adapted to new interface (close_slave): added for keeping open filecount straight (make_slave_controlling_terminal): created anew (slave): reverted from open_slave() * Tty.pm: v0.94_01 * test.pl: adapted to new interface * Tty.xs: reverted to opening slave at creation time; added debug printfs (open_slave): use ptsname_r if there, forget about erroneous ttyname. (allocate_pty): added name param on openpty (doesn't take NULL for name) 2001-11-28 Roland Giersig * Tty.pm: v0.92_04 * Tty.xs (BOOT): use perl_get_sv for backward compat * Makefile.PL: added analysis of configuration 2001-11-27 Roland Giersig * Tty.pm: v0.92_03 * Tty.xs (BOOT): removed export_fail, undefined constants are now undef instead of not exportable; added CONFIG variable. * Makefile.PL: added setting of CONFIG var * test.pl: added printing of CONFIG var * Pty.pm (spawn): fixed bug with $^W handling 2001-11-17 Roland Giersig * Tty.xs (pty_allocate): complete rewrite, based on ideas from openssh and Xemacs. Tries all ways detected by Makefile.PL in order, so in theory it should work everywhere (modulo system quirks). First tries the high-level openpty() before getpt(), then various clone devices and finally BSD-style ptys. * Tty.xs (open_slave): moved master init stuff here, must be done before opening the slave. The Stream module pushes are now tried on all systems but only generate warnings on systems that we know need them. * Makefile.PL: added tests for all kinds of functions and clone devices. 2001-11-14 Roland Giersig * Tty.xs (MODULE): stole creation code from openssh * test.pl: added test for controlling terminal * Pty.pm (spawn): rearranged setsid() and added a fresh open of the slave pty so the pty becomes the controlling terminal for the process. 2001-10-25 Roland Giersig * Pty.pm (spawn): copied spawning process from Tcl/Expect (thanks, Don!); should set the controlling tty so ssh and other password requesting programs should be OK; also now returns exec errors. (slave_pid): added method to get at PID of spawned process. * Makefile.PL: added TIOCCONS. * try: adapted to use spawn(). * test.pl: adapted to use spawn(); added test for exec errors. 2001-10-16 Roland Giersig * Pty.pm (new): fixed bad my() line * automatically add IO::Stty to ISA if it exists. 2001-07-16 Roland Giersig * test.pl: finally some tests! Spawns a perl mini-script that echoes back all characters from STDIN, but inverted. * Pty.pm (slave): slave now is set to be a controlling tty if possible; it also remembers it's name now. * Makefile.PL: - on SCO, the slave pts* are in the /dev dir, not /dev/pts - added test for libutil.h, util.h, pty.h and openpty() - added symbol TIOCSCTTY * Tty.xs: - some SVR4 only define __SVR4; fixed. - OSF machines need termio.h for various macros - AIX doesn't define VOIDSIG; fixed. - Cygwin can use /dev/ptmx even though that file doesn't exist. - added openpty() version for FreeBSD and others that have no good method for creating ptys; untested. * Tty.pm: - moved docu over from Pty.pm to lessen confusion Pty <-> Tty - added verified systems list Change 588 on 2000/09/04 by (Graham Barr) Check for /dev/ptmx and /dev/pts instead of testing defined(SVR4) Change 587 on 2000/09/04 by (Graham Barr) Make ttyname just warn when it is not implemented instead of croak Change 586 on 2000/09/04 by (Graham Barr) Include for HPUX Change 585 on 2000/09/04 by (Graham Barr) Makefile.PL - Fix to how cc is called Change 461 on 2000/03/29 by (Graham Barr) Release 0.03 Change 460 on 2000/03/29 by (Graham Barr) General cleanup and added PPD stuff into Makefile.PL Change 310 on 1999/05/10 by (Graham Barr) - Removed the need for Configure by implementing a test in Makefile.PL - The existance of constants are now checked at import time, so @EXPORT had to be renamed to @EXPORT_OK. ie noting is imported by default