/* Definitions for asynchronous process control in GNU Emacs.
- Copyright (C) 1985, 1994, 2001-2015 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1994, 2001-2016 Free Software Foundation, Inc.
This file is part of GNU Emacs.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
+#ifndef EMACS_PROCESS_H
+#define EMACS_PROCESS_H
+
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
/* Name of subprocess terminal. */
Lisp_Object tty_name;
- /* Name of this process */
+ /* Name of this process. */
Lisp_Object name;
/* List of command arguments that this process was run with.
- Is set to t for a stopped network process; nil otherwise. */
+ Is set to t for a stopped network process; nil otherwise. */
Lisp_Object command;
/* (funcall FILTER PROC STRING) (if FILTER is non-nil)
- to dispose of a bunch of chars from the process all at once */
+ to dispose of a bunch of chars from the process all at once. */
Lisp_Object filter;
- /* (funcall SENTINEL PROCESS) when process state changes */
+ /* (funcall SENTINEL PROCESS) when process state changes. */
Lisp_Object sentinel;
/* (funcall LOG SERVER CLIENT MESSAGE) when a server process
accepts a connection from a client. */
Lisp_Object log;
- /* Buffer that output is going to */
+ /* Buffer that output is going to. */
Lisp_Object buffer;
/* t if this is a real child process. For a network or serial
/* Plist for programs to keep per-process state information, parameters, etc. */
Lisp_Object plist;
- /* Symbol indicating the type of process: real, network, serial */
+ /* Symbol indicating the type of process: real, network, serial. */
Lisp_Object type;
- /* Marker set to end of last buffer-inserted output from this process */
+ /* Marker set to end of last buffer-inserted output from this process. */
Lisp_Object mark;
/* Symbol indicating status of process.
/* Working buffer for encoding. */
Lisp_Object encoding_buf;
- /* Queue for storing waiting writes */
+ /* Queue for storing waiting writes. */
Lisp_Object write_queue;
#ifdef HAVE_GNUTLS
Lisp_Object gnutls_cred_type;
#endif
+ /* Pipe process attached to the standard error of this process. */
+ Lisp_Object stderrproc;
+
/* After this point, there are no Lisp_Objects any more. */
/* alloc.c assumes that `pid' is the first such non-Lisp slot. */
A value 0 is used for pseudo-processes such as network or serial
connections. */
pid_t pid;
- /* Descriptor by which we read from this process */
+ /* Descriptor by which we read from this process. */
int infd;
- /* Descriptor by which we write to this process */
+ /* Descriptor by which we write to this process. */
int outfd;
/* Descriptors that were created for this process and that need
closing. Unused entries are negative. */
extern Lisp_Object network_interface_info (Lisp_Object);
#endif
+extern Lisp_Object remove_slash_colon (Lisp_Object);
+
INLINE_HEADER_END
+
+#endif /* EMACS_PROCESS_H */