annotate etc/gnuserv.README @ 5894:23178aa71f8b

Define ALIGNOF using C11 and C++11 operators. See <CAHCOHQmG51R61KwGUNY7T5t9tXxzbyg=aGijUKYstbE+wL2-6Q@mail.gmail.com> in xemacs-patches for more information.
author Jerry James <james@xemacs.org>
date Mon, 20 Apr 2015 15:09:11 -0600
parents 863f16484873
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2437
807b51903ed4 [xemacs-hg @ 2004-12-14 09:56:38 by stephent]
stephent
parents: 428
diff changeset
1 **** WARNING ****
807b51903ed4 [xemacs-hg @ 2004-12-14 09:56:38 by stephent]
stephent
parents: 428
diff changeset
2 This file was never meant to be proper documentation, and now is bitrotted.
807b51903ed4 [xemacs-hg @ 2004-12-14 09:56:38 by stephent]
stephent
parents: 428
diff changeset
3 See the file gnuserv.1 and/or the sources for more information.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4
5433
863f16484873 Added copyright notice with year 1998.
Mats Lidell <matsl@xemacs.org>
parents: 5428
diff changeset
5 Copyright (C) 1998 Andy Norman, Bob Weiner, Darrell Kindred,
863f16484873 Added copyright notice with year 1998.
Mats Lidell <matsl@xemacs.org>
parents: 5428
diff changeset
6 Arup Mukherjee, Ben Wing and Hrvoje Niksic.
5428
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
7
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
8 This file is part of XEmacs.
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
9
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
10 XEmacs is free software: you can redistribute it and/or modify it
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
11 under the terms of the GNU General Public License as published by the
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
12 Free Software Foundation, either version 3 of the License, or (at your
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
13 option) any later version.
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
14
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
15 XEmacs is distributed in the hope that it will be useful, but WITHOUT
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
16 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
17 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
18 for more details.
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
19
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
20 You should have received a copy of the GNU General Public License
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
21 along with XEmacs. If not, see <http://www.gnu.org/licenses/>.
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
22
73eef12660cd Converted gnuserv docs to GPLv3 or later.
Mats Lidell <matsl@xemacs.org>
parents: 2437
diff changeset
23
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 ****
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 NOTE: This version of gnuserv has some enhancements over the original version
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 distributed by Andy Norman. See the end of this file for more details.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 ****
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 To install, copy gnuserv.el into a directory on your GNU Emacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 load-path. Edit Makefile and change INCLUDES to point to the src
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 directory underneath your emacs source tree (or make yourself a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 config.h file in this directory by hand, starting with config.h.proto
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 as a first cut) and type:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 make
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 This should compile the server and the two clients. Now put gnuserv,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 gnuclient and gnudoit in a directory that users have in their executable
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39 search paths.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 File : Description
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 ----------------------------------------------------------------
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 Makefile : Makefile to build gnuserv
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 LICENSE : GNU General License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 README : this file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 gnuclient.c : editor client C code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 gnudoit.c : eval client C code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 gnuserv.1 : gnuserv man page
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 gnuserv.c : server C code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 gnuserv.el : server LISP code for GNU Emacs V18,V19,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 XEmacs/Lucid Emacs and Epoch V4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 gnuserv.h : server/client C header file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 gnuslib.c : server/client C common code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 src.x11fns.diff : diffs to src/x11fns to raise window (for emacs18)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 config.h.proto : Use this file as the starting point for constructing
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 a config.h if you don't have access to the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 one that was used when compiling your emacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 If you find *any* problems at all with gnuserv, or you can think of better
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 ways of doing things (especially remote file access), please e-mail me at one
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 of the addresses below.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 ange@hplb.hpl.hp.com
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 ange@hpl.hp.co.uk
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 ...!hplabs!hplb!ange
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 ...!ukc!hplb!ange
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 This version of gnuserv has been enhanced by a number of people, including
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 Bob Weiner <weiner@mot.com>, Darrell Kindred <dkindred@cmu.edu>,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 Arup Mukherjee <arup@cmu.edu>, and Ben Wing <ben@xemacs.org>. The
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74 modifications are basically as follows:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 Bob Weiner:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 Integrated support for several versions of emacs. New requests
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 from gnuclient cause the creation of new frames. Removed the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 restriction on the length of the string passed to gnudoit. Later
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 added a server-done-function variable to control what happens to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 a buffer after the user is done with it. Mods to each of the .c
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 files as well as gnuserv.el.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 Darrell Kindred:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 Removed the restriction on the length of the string returned from
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 a gnudoit request, for the purposes of unix/internet sockets.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 Allow the gnudoit request to be read from stdin if it's not
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 specified on the command line. Internet sockets are not opened
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 unless the GNU_SECURE variable is specified. Unix sockets are
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 created in a protected ancestral directory, since many Unix
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93 variants don't enforce socket permissions properly. An internet
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 socket accepting local connections is not opened by default
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 because this would make it possibly to override all security on
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 the unix socket. See the man page for details. Unless told to do
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 otherwise by a command-line argument, gnuclient and gnudoit now
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 try to open a unix socket by default if support for them was
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99 compiled in. Mods to each of the .c files and to gnuserv.el.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101 Arup Mukherjee:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 Removed the restriction on the length of the string returned from
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 a gnudoit request, for the purposes of sysv ipc. Added support
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104 for the "gnuserv-frame" variable allowing you to specify control
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 whether or not new screens are created in response to each
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 gnuclient request. Made a number of other bugfixes and changes to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107 the lisp part of the code, allowing gnuserv to work properly with
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 newer emacs versions. All the changes are listed in the changelog
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109 at the beginning of gnuserv.el. Also fixed up the man page to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 reflect the new gnuserv features. On HPs, stopped the "-r"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 parameter (in gnuclient) from defaulting to /net/<remotehost>.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112 Not all installations want this, and it's much harder to debug
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 when things stop working. Changed the man page to reflect this.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 Mods to each of the .c files, gnuserv.el and gnuserv.1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 More recently - added Xauth(1X11)-style authentication to gnuserv (as
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 of version 2.1). Although the code is completely new, credit is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118 due to Richard Caley <rjc@cogsci.edinburgh.ac.uk> ... he wrote a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 prototype implementation from which I borrowed the basic
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 mechanism for hooking Xauth into gnuserv.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 Ben Wing:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
123 Added gnuattach.