Mercurial > emacs
view src/s/dgux5-4-3.h @ 73562:368665ce6f35
Add support for TCP sockets.
(SEND_STRING, SEND_QUOTED, HSOCKET, CLOSE_SOCKET, IOCTL, INITIALIZE): New
macros.
(IOCTL_BOOL_ARG): New typedef.
(server_file): New global variable.
(longopts): New option --server-file.
(decode_options): Process new option --server-file and environment variable
EMACS_SERVER_FILE.
(print_help_and_exit): Document new option.
(fail): If no connection available and no alternate editor, suggest using
options to make them explicit.
(AUTH_KEY_LENGTH, SEND_BUFFER_SIZE): New constants.
(send_buffer, sblen): New variables.
(send_to_emacs): New function to buffer output and send it with send().
(quote_file_name): Use SEND_STRING.
(close_winsock, initialize_sockets): New functions to load and unload Winsock.
(get_server_config, set_tcp_socket): New functions to create and set up TCP
sockets.
(set_local_socket): New function to create and set up Unix socket (code moved
from previous implementation).
(set_socket): New function to chose between TCP and Unix sockets.
(main): Use SEND_STRING and SEND_QUOTED. Most code moved to set_local_socket.
Use set_socket. Get answers from server.el with recv(), not file stream
functions.
author | Juanma Barranquero <lekktu@gmail.com> |
---|---|
date | Tue, 31 Oct 2006 00:21:19 +0000 |
parents | 3bd95f4f2941 |
children | e90d04cd455a c5406394f567 |
line wrap: on
line source
/* Definitions file for GNU Emacs running on Data General's DG/UX version 5.4 Release 3.00 and above. Copyright (C) 1994, 2002, 2003, 2004, 2005, 2006 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 2, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ /* NOTE: DGUX5.4R3.00 will not build with the delivered gcc-2.4.5 compiler. You must upgraded to at least gcc-2.5.8. If you are running DGUX 5.4R3.00 check on the system dg-rtp.dg.com:/pub/gnu for gcc-2.5.8 or later compiler. -pmr@pajato.com */ #include "dgux5-4r2.h" /* DGUX 5.4R3.00 brought the definition of `struct inet_addr' into compliance with the majority of Unix systems. The workaround introduced in 5.4R2 is no longer necessary. */ #ifdef HAVE_BROKEN_INET_ADDR #undef HAVE_BROKEN_INET_ADDR #endif /* The `stop on tty output' problem which occurs when using INTERRUPT_INPUT and when Emacs is invoked under X11 using a job control shell (csh, ksh, etc.) in the background has not been fixed in DGUX 5.4R3.00. -pmr@pajato.com */ #if 0 #ifdef BROKEN_FIONREAD #undef BROKEN_FIONREAD #endif #ifndef INTERRUPT_INPUT #define INTERRUPT_INPUT #endif #endif /* Under DGUX 5.4R3.00, getting a debuggable executable has been greatly simplified and applies to either COFF or ELF environments. */ #ifdef C_DEBUG_SWITCH #undef C_DEBUG_SWITCH #define C_DEBUG_SWITCH -g #endif /* This is needed according to Ehud Karni <ehud@unix.simonwiesel.co.il> for m88k-dg-dgux5.4R3.10. */ #undef BSD_PGRPS /* arch-tag: c11938c9-0cb0-4652-88aa-7eb80bf1cda9 (do not change this comment) */