146 |
extern Lisp_Object QCfilter; |
extern Lisp_Object QCfilter; |
147 |
|
|
148 |
/* a process object is a network connection when its childp field is neither |
/* a process object is a network connection when its childp field is neither |
149 |
Qt nor Qnil but is instead a cons cell (HOSTNAME PORTNUM). */ |
Qt nor Qnil but is instead a property list (KEY VAL ...). */ |
150 |
|
|
151 |
#ifdef HAVE_SOCKETS |
#ifdef HAVE_SOCKETS |
152 |
#define NETCONN_P(p) (GC_CONSP (XPROCESS (p)->childp)) |
#define NETCONN_P(p) (GC_CONSP (XPROCESS (p)->childp)) |
1037 |
return Fplist_get (contact, key); |
return Fplist_get (contact, key); |
1038 |
} |
} |
1039 |
|
|
1040 |
|
DEFUN ("set-process-contact", Fset_process_contact, Sset_process_contact, |
1041 |
|
3, 3, 0, |
1042 |
|
doc: /* Change value in PROCESS' contact information list of KEY to VAL. |
1043 |
|
If KEY is already a property on the list, its value is set to VAL, |
1044 |
|
otherwise the new KEY VAL pair is added. Returns VAL. */) |
1045 |
|
(process, key, val) |
1046 |
|
register Lisp_Object process, key, val; |
1047 |
|
{ |
1048 |
|
Lisp_Object contact; |
1049 |
|
|
1050 |
|
CHECK_PROCESS (process); |
1051 |
|
|
1052 |
|
if (NETCONN_P (process)) |
1053 |
|
XPROCESS (process)->childp = Fplist_put (XPROCESS (process)->childp, key, val); |
1054 |
|
|
1055 |
|
return val; |
1056 |
|
} |
1057 |
|
|
1058 |
#if 0 /* Turned off because we don't currently record this info |
#if 0 /* Turned off because we don't currently record this info |
1059 |
in the process. Perhaps add it. */ |
in the process. Perhaps add it. */ |
1060 |
DEFUN ("process-connection", Fprocess_connection, Sprocess_connection, 1, 1, 0, |
DEFUN ("process-connection", Fprocess_connection, Sprocess_connection, 1, 1, 0, |
2607 |
the server process, but via the optional :log function, accepted (and |
the server process, but via the optional :log function, accepted (and |
2608 |
failed) connections may be logged in the server process' buffer. |
failed) connections may be logged in the server process' buffer. |
2609 |
|
|
2610 |
|
The original argument list, modified with the actual connection |
2611 |
|
information, is available via the `process-contact' function. |
2612 |
|
Additional arguments may be added via `set-process-contact'. |
2613 |
|
|
2614 |
usage: (make-network-process &rest ARGS) */) |
usage: (make-network-process &rest ARGS) */) |
2615 |
(nargs, args) |
(nargs, args) |
2616 |
int nargs; |
int nargs; |
6363 |
defsubr (&Sset_process_query_on_exit_flag); |
defsubr (&Sset_process_query_on_exit_flag); |
6364 |
defsubr (&Sprocess_query_on_exit_flag); |
defsubr (&Sprocess_query_on_exit_flag); |
6365 |
defsubr (&Sprocess_contact); |
defsubr (&Sprocess_contact); |
6366 |
|
defsubr (&Sset_process_contact); |
6367 |
defsubr (&Slist_processes); |
defsubr (&Slist_processes); |
6368 |
defsubr (&Sprocess_list); |
defsubr (&Sprocess_list); |
6369 |
defsubr (&Sstart_process); |
defsubr (&Sstart_process); |