Mercurial > emacs
changeset 106397:210af1fb2669
(Qseqpacket): New symbol.
(HAVE_SEQPACKET): New macro.
(Fmake_network_process): Accept new :type `seqpacket'.
(init_process): Add `seqpacket' feature when applicable.
(syms_of_process): Initialize Qseqpacket.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Thu, 03 Dec 2009 18:51:32 +0000 |
parents | b99306fb62cc |
children | 31424b91531a |
files | src/ChangeLog src/process.c |
diffstat | 2 files changed, 25 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Thu Dec 03 17:14:33 2009 +0000 +++ b/src/ChangeLog Thu Dec 03 18:51:32 2009 +0000 @@ -1,3 +1,11 @@ +2009-12-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * process.c (Qseqpacket): New symbol. + (HAVE_SEQPACKET): New macro. + (Fmake_network_process): Accept new :type `seqpacket'. + (init_process): Add `seqpacket' feature when applicable. + (syms_of_process): Initialize Qseqpacket. + 2009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> * font.c (font_load_for_lface, font_open_by_name): Don't store name
--- a/src/process.c Thu Dec 03 17:14:33 2009 +0000 +++ b/src/process.c Thu Dec 03 18:51:32 2009 +0000 @@ -127,7 +127,7 @@ Lisp_Object Qprocessp; Lisp_Object Qrun, Qstop, Qsignal; Lisp_Object Qopen, Qclosed, Qconnect, Qfailed, Qlisten; -Lisp_Object Qlocal, Qipv4, Qdatagram; +Lisp_Object Qlocal, Qipv4, Qdatagram, Qseqpacket; Lisp_Object Qreal, Qnetwork, Qserial; #ifdef AF_INET6 Lisp_Object Qipv6; @@ -253,6 +253,10 @@ #endif /* DATAGRAM_SOCKETS */ #endif /* BROKEN_DATAGRAM_SOCKETS */ +#if defined HAVE_LOCAL_SOCKETS && defined DATAGRAM_SOCKETS +# define HAVE_SEQPACKET +#endif + #if !defined (ADAPTIVE_READ_BUFFERING) && !defined (NO_ADAPTIVE_READ_BUFFERING) #ifdef EMACS_HAS_USECS #define ADAPTIVE_READ_BUFFERING @@ -3123,7 +3127,8 @@ string, e.g. "80", as well as an integer. This is not portable.) :type TYPE -- TYPE is the type of connection. The default (nil) is a -stream type connection, `datagram' creates a datagram type connection. +stream type connection, `datagram' creates a datagram type connection, +`seqpacket' creates a reliable datagram connection. :family FAMILY -- FAMILY is the address (and protocol) family for the service specified by HOST and SERVICE. The default (nil) is to use @@ -3302,6 +3307,10 @@ else if (EQ (tem, Qdatagram)) socktype = SOCK_DGRAM; #endif +#ifdef HAVE_SEQPACKET + else if (EQ (tem, Qseqpacket)) + socktype = SOCK_SEQPACKET; +#endif else error ("Unsupported connection type"); @@ -6859,7 +6868,7 @@ record_unwind_protect (exec_sentinel_unwind, Fcons (proc, sentinel)); /* Inhibit quit so that random quits don't screw up a running filter. */ specbind (Qinhibit_quit, Qt); - specbind (Qlast_nonmenu_event, Qt); + specbind (Qlast_nonmenu_event, Qt); /* Why? --Stef */ /* In case we get recursively called, and we already saved the match data nonrecursively, @@ -7330,6 +7339,9 @@ #ifdef DATAGRAM_SOCKETS ADD_SUBFEATURE (QCtype, Qdatagram); #endif +#ifdef HAVE_SEQPACKET + ADD_SUBFEATURE (QCtype, Qseqpacket); +#endif #ifdef HAVE_LOCAL_SOCKETS ADD_SUBFEATURE (QCfamily, Qlocal); #endif @@ -7403,6 +7415,8 @@ #endif Qdatagram = intern_c_string ("datagram"); staticpro (&Qdatagram); + Qseqpacket = intern_c_string ("seqpacket"); + staticpro (&Qseqpacket); QCport = intern_c_string (":port"); staticpro (&QCport);