/* Definitions for asynchronous process control in GNU Emacs.
- Copyright (C) 1985 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1994 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 1, or (at your option)
+the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
struct Lisp_Process
{
- int size;
+ EMACS_INT size;
struct Lisp_Vector *v_next;
/* Descriptor by which we read from this process */
Lisp_Object infd;
/* Descriptor for the tty which this process is using.
nil if we didn't record it (on some systems, there's no need). */
Lisp_Object subtty;
+ /* Name of subprocess terminal. */
+ Lisp_Object tty_name;
/* Name of this process */
Lisp_Object name;
/* List of command arguments that this process was run with */
#define ChannelMask(n) (1<<(n))
+/* Indexed by descriptor, gives the process (if any) for that descriptor. */
+extern Lisp_Object chan_process[];
+
+/* Alist of elements (NAME . PROCESS). */
+extern Lisp_Object Vprocess_alist;
+
/* True iff we are about to fork off a synchronous process or if we
are waiting for it. */
extern int synch_process_alive;