annotate etc/gnuserv.README @ 558:ed498ef2108b

[xemacs-hg @ 2001-05-23 09:59:33 by ben] xemacs.mak: call `ver' to get the exact os version and put it in the installation; suggestion from adrian. behavior-defs.el: Add scroll-in-place, jka-compr, efs, fix up some things. pop.c: Remove BROKEN_CYGWIN. etc\sample.init.el: Rewrite to be much more careful about loading features -- now it decays gracefully even in the complete absence of packages. Also avoid doing obnoxious things when loading efs. configure.in: add some support for eventually turning on file coding by default. Fix numerous places where AC_MSG_WARN had quotes around its arg, which is bad. Replace with []. Same for AC_MSG_ERROR. s\cygwin32.h, s\mingw32.h: remove support for way old beta versions of cygwin. don't put -Wno-sign-compare in the system switches; this isn't a system issue. define BROKEN_SIGIO for cygwin to get C-g support. device-msw.c: signal an error rather than crash with an unavailable network printer (from Mike Alexander). event-msw.c: cleanup headers. fix (hopefully) an error with data corruption when sending to a network connection. fileio.c: Fix evil code that attempts to handle the ~user prefix by (a) always assuming we're referencing ourselves and not even verifying the user -- hence any file with a tilde as its first char is invalid! (b) if there wasn't a slash following the filename, the pointer was set *past* the end of file and we started reading from uninitialized memory. Now we simply treat these as files, always. optionally for 21.4 (doc fix): lread.c: cambia de pas_de_lache_ici -- al minimo usa la palabra certa. frame.c: fix warnings. emacs.c, nt.c, ntproc.c, process-nt.c, realpath.c, unexnt.c: rename MAX_PATH to standard PATH_MAX. process-nt.c, realpath.c: cleanup headers. process-unix.c, sysdep.c, systime.h, syswindows.h: kill BROKEN_CYGWIN and support for way old beta versions of cygwin. sysfile.h: use _MAX_PATH (Windows) preferentially for PATH_MAX if defined. include io.h on Cygwin (we need get_osfhandle()). include sys/fcntl.h always, since we were including it in various header files anyway. unexcw.c: fix up style to conform to standard. remove duplicate definition of PERROR. buffer.c: comment change. database.c, debug.h, device-tty.c, dired-msw.c, glyphs-msw.c: header cleanups (remove places that directly include a system header file, because we have our own layer to do this more cleanly and portably); indentation fixes.
author ben
date Wed, 23 May 2001 09:59:48 +0000
parents 3ecd8885ac67
children 807b51903ed4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 This file is not meant to be proper documentation. See the file gnuserv.1 for
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 more information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 ****
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 NOTE: This version of gnuserv has some enhancements over the original version
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 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
7 ****
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 To install, copy gnuserv.el into a directory on your GNU Emacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 load-path. Edit Makefile and change INCLUDES to point to the src
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 directory underneath your emacs source tree (or make yourself a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 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
13 as a first cut) and type:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 make
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 This should compile the server and the two clients. Now put gnuserv,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 gnuclient and gnudoit in a directory that users have in their executable
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 search paths.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 File : Description
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 ----------------------------------------------------------------
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 Makefile : Makefile to build gnuserv
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 LICENSE : GNU General License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 README : this file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 gnuclient.c : editor client C code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 gnudoit.c : eval client C code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 gnuserv.1 : gnuserv man page
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 gnuserv.c : server C code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 gnuserv.el : server LISP code for GNU Emacs V18,V19,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 XEmacs/Lucid Emacs and Epoch V4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 gnuserv.h : server/client C header file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 gnuslib.c : server/client C common code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 src.x11fns.diff : diffs to src/x11fns to raise window (for emacs18)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 config.h.proto : Use this file as the starting point for constructing
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 a config.h if you don't have access to the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 one that was used when compiling your emacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 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
41 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
42 of the addresses below.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 ange@hplb.hpl.hp.com
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 ange@hpl.hp.co.uk
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 ...!hplabs!hplb!ange
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 ...!ukc!hplb!ange
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 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
52 Bob Weiner <weiner@mot.com>, Darrell Kindred <dkindred@cmu.edu>,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 Arup Mukherjee <arup@cmu.edu>, and Ben Wing <ben@xemacs.org>. The
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 modifications are basically as follows:
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 Bob Weiner:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 Integrated support for several versions of emacs. New requests
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 from gnuclient cause the creation of new frames. Removed the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 restriction on the length of the string passed to gnudoit. Later
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 added a server-done-function variable to control what happens to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 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
63 files as well as gnuserv.el.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 Darrell Kindred:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 Removed the restriction on the length of the string returned from
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 a gnudoit request, for the purposes of unix/internet sockets.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 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
70 specified on the command line. Internet sockets are not opened
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 unless the GNU_SECURE variable is specified. Unix sockets are
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 created in a protected ancestral directory, since many Unix
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 variants don't enforce socket permissions properly. An internet
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74 socket accepting local connections is not opened by default
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 because this would make it possibly to override all security on
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 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
77 otherwise by a command-line argument, gnuclient and gnudoit now
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 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
79 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
80
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 Arup Mukherjee:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 Removed the restriction on the length of the string returned from
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 a gnudoit request, for the purposes of sysv ipc. Added support
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 for the "gnuserv-frame" variable allowing you to specify control
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 whether or not new screens are created in response to each
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 gnuclient request. Made a number of other bugfixes and changes to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 the lisp part of the code, allowing gnuserv to work properly with
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 newer emacs versions. All the changes are listed in the changelog
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 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
90 reflect the new gnuserv features. On HPs, stopped the "-r"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 parameter (in gnuclient) from defaulting to /net/<remotehost>.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 Not all installations want this, and it's much harder to debug
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93 when things stop working. Changed the man page to reflect this.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 Mods to each of the .c files, gnuserv.el and gnuserv.1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 More recently - added Xauth(1X11)-style authentication to gnuserv (as
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 of version 2.1). Although the code is completely new, credit is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 due to Richard Caley <rjc@cogsci.edinburgh.ac.uk> ... he wrote a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99 prototype implementation from which I borrowed the basic
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100 mechanism for hooking Xauth into gnuserv.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 Ben Wing:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 Added gnuattach.