| version 1.4, 2004/12/01 17:40:16 | 
version 1.6, 2009/02/24 07:30:15 | 
 | 
 | 
|      commandv = &argv[1]; | 
     commandv = &argv[1]; | 
|   | 
  | 
|      if (! isatty (0)) { | 
     if (! isatty (0)) { | 
|   | 
 #if defined(__INTERIX) | 
|   | 
         execvp (*commandv, commandv); | 
|   | 
 #else | 
|          execvp (*commandv, commandv, 0); | 
         execvp (*commandv, commandv, 0); | 
|   | 
 #endif | 
|          perror (*commandv); | 
         perror (*commandv); | 
|          exit (1); | 
         exit (1); | 
|      } | 
     } | 
| Line 673  swallow_output() | 
 
  | 
| Line 677  swallow_output() | 
 
 
 | 
|  #include <sys/m_wait.h> | 
 #include <sys/m_wait.h> | 
|  #endif | 
 #endif | 
|   | 
  | 
|   | 
 #if defined(__INTERIX) | 
|   | 
 #define wait3(s,opt,rp)   (waitpid((-1),(s),(opt))) | 
|   | 
 #endif | 
|   | 
  | 
|  void | 
 void | 
|  catchsig(n) | 
 catchsig(n) | 
|      int n; | 
     int n; | 
| Line 702  exec_to_command(argv) | 
 
  | 
| Line 710  exec_to_command(argv) | 
 
 
 | 
|       */ | 
      */ | 
|      t = open ("/dev/tty", 2); | 
     t = open ("/dev/tty", 2); | 
|      if (t >= 0) { | 
     if (t >= 0) { | 
|  #ifndef __CYGWIN32__ | 
 #if !defined(__CYGWIN32__) && !defined(__INTERIX) | 
|          ioctl (t, TIOCNOTTY, (char *) 0); | 
         ioctl (t, TIOCNOTTY, (char *) 0); | 
|  #endif | 
 #endif | 
|          (void) close (t); | 
         (void) close (t); | 
| Line 721  exec_to_command(argv) | 
 
  | 
| Line 729  exec_to_command(argv) | 
 
 
 | 
|  #elif defined(TIOCSETN) | 
 #elif defined(TIOCSETN) | 
|      ioctl (0, TIOCSETN, (char *) & slave_ttymode); | 
     ioctl (0, TIOCSETN, (char *) & slave_ttymode); | 
|  #endif | 
 #endif | 
|   | 
 #if defined(__INTERIX) | 
|   | 
     execvp (*argv, argv); | 
|   | 
 #else | 
|      execvp (*argv, argv, 0); | 
     execvp (*argv, argv, 0); | 
|   | 
 #endif | 
|      perror (*argv); | 
     perror (*argv); | 
|      exit (1); | 
     exit (1); | 
|  } | 
 } | 
| Line 854  get_pty_master() | 
 
  | 
| Line 866  get_pty_master() | 
 
 
 | 
|          master = 1; | 
         master = 1; | 
|          return; | 
         return; | 
|      } | 
     } | 
|  #ifdef __CYGWIN32__ | 
 #if defined(__CYGWIN32__) || defined(__linux__) | 
|      sprintf (master_tty, "/dev/ptmx"); | 
     sprintf (master_tty, "/dev/ptmx"); | 
|      master = open (master_tty, O_RDWR); | 
     master = open (master_tty, O_RDWR); | 
|      if (master >= 0) { | 
     if (master >= 0) { | 
|   | 
 #if defined(__linux__) | 
|   | 
         char name[BUFSIZ]; | 
|   | 
         grantpt(master); | 
|   | 
         unlockpt(master); | 
|   | 
         if ( !ptsname_r(master,name,sizeof(name)) ) { | 
|   | 
             strcpy(slave_tty, name); | 
|   | 
             goto FOUND; | 
|   | 
         } | 
|   | 
 #else | 
|          char *name; | 
         char *name; | 
|          name = (char *)ptsname(master); | 
         name = (char *)ptsname(master); | 
|          if ( name != 0 ) { | 
         if ( name != 0 ) { | 
|              strcpy(slave_tty, name); | 
             strcpy(slave_tty, name); | 
|              goto FOUND; | 
             goto FOUND; | 
|          } | 
         } | 
|   | 
 #endif | 
|      } | 
     } | 
|  #else | 
 #else | 
|      for (c = 'p'; c <= 's'; c++) { | 
     for (c = 'p'; c <= 's'; c++) { |