ruby/ext/pty
nobu faab8f264d * configure.in (ieeefp.h), numeric.c: needed for finite() on
Solaris.  [ruby-core:01921]

* file.c (rb_stat_inspect): adjust format specifier.

* parse.c (arg_prepend): nodetype() is for debug use.

* ruby.h (ISASCII, etc): cast to int to get rid of warning.

* ruby.h (alloca.h): include even in GCC.  [ruby-core:01925]

* ext/bigdecimal/bigdecimal.c (GetVpValue): adjust format
  specifier.

* ext/bigdecimal/bigdecimal.c (BigDecimal_prec, BigDecimal_coerce,
  BigDecimal_divmod): use rb_assoc_new() to suppress memory usage.

* ext/bigdecimal/bigdecimal.c (BigDecimal_split): ditto.

* ext/dl/sym.c (rb_dlsym_guardcall): guard itself should be
  volatile.

* ext/iconv/iconv.c (iconv_convert): ensure actual parameter with
  format specifier.

* ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): do not
  define unless used.

* ext/pty/pty.c (getDevice): get rid of warning.

* ext/socket/socket.c (port_str, sock_s_getaddrinfo,
  sock_s_getnameinfo): FIX2INT() now returns long.

* ext/socket/socket.c (init_inetsock_internal): uninitialized
  variable.

* ext/syck/rubyext.c (syck_parser_assign_io): add prototype.

* ext/syck/rubyext.c (rb_syck_mktime, yaml_org_handler): use
  ISDIGIT() instead of isdigit() to avoid warnings and for
  platforms which don't support non-ascii charater.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-11 02:39:59 +00:00
..
lib * hash.c (rb_hash_replace): should copy ifnone. 2002-08-13 09:21:18 +00:00
.cvsignore * configure.in: modify program_prefix only if specified 2002-09-08 09:08:15 +00:00
MANIFEST Rename *.jp to *.ja, since jp is a region code and ja is a language 2001-07-19 05:44:26 +00:00
README * parse.y (dsym): :"symbol string" style should not contain `\0'. 2003-03-07 05:59:42 +00:00
README.expect remove marshal/gtk/kconv 1999-08-13 05:37:52 +00:00
README.expect.ja Rename *.jp to *.ja, since jp is a region code and ja is a language 2001-07-19 05:44:26 +00:00
README.ja Rename *.jp to *.ja, since jp is a region code and ja is a language 2001-07-19 05:44:26 +00:00
depend ext/*/depend 1999-10-21 07:08:00 +00:00
expect_sample.rb * eval.c (rb_load): allow interrupt during loaded program 2003-11-06 07:22:39 +00:00
extconf.rb new platform [bccwin32] merged. 2002-06-11 01:27:48 +00:00
pty.c * configure.in (ieeefp.h), numeric.c: needed for finite() on 2003-12-11 02:39:59 +00:00
script.rb * parse.y (dsym): :"symbol string" style should not contain `\0'. 2003-03-07 05:59:42 +00:00
shl.rb * parse.y (parse_regx): should raise error on untermitated 2001-11-19 05:03:03 +00:00

README

pty extension version 0.3 by A.ito

1. Introduction

This extension module adds ruby a functionality to execute an 
arbitrary command through pseudo tty (pty).

2. Install

Follow the instruction below.

(1) Execute

      ruby extconf.rb

    then Makefile is generated.

(3) Do make; make install.

3. What you can do

This extension module defines a module named PTY, which contains
following module fungtions:

   getpty(command)
   spawn(command)

      This function reserves a pty, executes command over the pty 
      and returns an array. The return value is an array with three
      elements. The first element in the array is for reading and the 
      second for writing. The third element is the process ID of the
      child process. If this function is called with an iterator block,
      the array is passed to the block as block parameters, and the
      function itself returns nil.

      When the child process is suspended or finished, an exception is
      raised.  If this function is called with an iterator block,
      exception is raised only within the block.  Child process
      monitor is terminated on block exit.

   protect_signal
   reset_signal

      These functions are obsolete in this version of pty.

4. License

(C) Copyright 1998 by Akinori Ito.

This software may be redistributed freely for this purpose, in full 
or in part, provided that this entire copyright notice is included 
on any copies of this software and applications and derivations thereof.

This software is provided on an "as is" basis, without warranty of any
kind, either expressed or implied, as to any matter including, but not
limited to warranty of fitness of purpose, or merchantability, or
results obtained from use of this software.

5. Bug report

Please feel free to send E-mail to

   aito@ei5sun.yz.yamagata-u.ac.jp

for any bug report, opinion, contribution, etc.