#/usr/local/bin/perl require 'syscall.ph'; require 'fcntl.ph'; sub sysopen { local($path, $flags, $mode) = @_; local($fd, $fh); if (($fd = syscall(&SYS_open, $path, $flags, $mode)) == -1) { return undef; } $fh = 'sysfh' . ++$sysopen'fh; open($fh, "+>&$fd") || return undef; # XXX: wrong mode return $fh; } $tty = &sysopen("/dev/tty1M19", &O_RDWR | &O_NDELAY | &O_EXCL, 0444); die "sysopen /dev/tty: $!" unless defined $tty; printf "tty handle is %s, fdesc is %d\n", $tty, fileno($tty); print $tty "Bob please write me if you see this. Bill\n"; #--tom