diff options
| author | Matthew Leach | 2016-04-16 12:43:01 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2016-04-16 12:43:01 +0300 |
| commit | e390b7b54651d3c5a4c36168e84e96e197631f41 (patch) | |
| tree | d4ccdf1d6e243e9a5f58b42e78de349a1ffbc6c2 /src/lisp.h | |
| parent | bb8c8fdfbb226ea760e8e5761ecda98c8cd9564f (diff) | |
| download | emacs-e390b7b54651d3c5a4c36168e84e96e197631f41.tar.gz emacs-e390b7b54651d3c5a4c36168e84e96e197631f41.zip | |
Add external socket launching support
* src/process.c (connect_network_socket): Allow a pre-allocated socket
descriptor to be used if passed to Emacs, avoiding the call to
'socket' and 'bind'.
(Fmake_network_process): Allow users to pass ':use-external-socket' in
the parameter plist to use any sockets that have been passed to Emacs.
(wait_reading_process_output): Call 'socket' and 'bind' every time.
(syms_of_process): New symbol ':use-external-socket'.
(set_external_socket_descriptor): New function.
(external_sock_fd): New variable.
* src/lisp.h: (set_external_socket_descriptor): New declaration.
* src/emacs.c (main): Call 'sd_listen_fds' to read the number of sockets
passed and call 'set_external_socket_descriptor' to set the external
socket.
* src/Makefile.in: Add libsystemd library and C flags to the Emacs
compilation options.
* configure.ac: Add new default-on option "systemd" and check for
libsystemd at configure time.
* lisp/server.el (server-start): Set ':use-external-socket' to 't' when
calling 'make-network-process'.
* etc/NEWS: Document new socket-passing functionality and the configure
option to disable systemd interaction.
* doc/emacs/misc.texi (Emacs Server): Document systemd socket passing
functionality and provide systemd unit examples.
* doc/lispref/processes.texi (Network Processes): Document new
'make-network-process' option ':use-external-socket'.
Diffstat (limited to 'src/lisp.h')
| -rw-r--r-- | src/lisp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lisp.h b/src/lisp.h index d111a78f3e0..c6f8bb89a3f 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -4184,6 +4184,7 @@ extern void delete_gpm_wait_descriptor (int); | |||
| 4184 | extern void init_process_emacs (void); | 4184 | extern void init_process_emacs (void); |
| 4185 | extern void syms_of_process (void); | 4185 | extern void syms_of_process (void); |
| 4186 | extern void setup_process_coding_systems (Lisp_Object); | 4186 | extern void setup_process_coding_systems (Lisp_Object); |
| 4187 | extern void set_external_socket_descriptor (int); | ||
| 4187 | 4188 | ||
| 4188 | /* Defined in callproc.c. */ | 4189 | /* Defined in callproc.c. */ |
| 4189 | #ifndef DOS_NT | 4190 | #ifndef DOS_NT |