gnudoit man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



GNUSERV(1)					       GNUSERV(1)

NAME
       gnuserv, gnuclient - Server and Clients for XEmacs

SYNOPSIS
       gnuclient  [-nw] [-display display] [-q] [-v] [-l library]
       [-batch] [-f function]  [-eval  form]  [-h  hostname]  [-p
       port] [-r remote-pathname] [[+line] file] ...
       gnudoit [-q] form
       gnuserv
       gnuattach Removed as of gnuserv 3.x

DESCRIPTION
       gnuclient allows the user to request a running XEmacs pro
       cess to edit the named files or directories and/or  evalu
       ate  lisp forms.	 Depending on your environment, it can be
       an X frame or a TTY frame.  One typical use  for	 this  is
       with  a	dialup connection to a machine on which an XEmacs
       process is currently running.

       gnudoit is a shell script frontend to  ``gnuclient  -batch
       -eval  form''.	Its use is deprecated. Try to get used to
       calling gnuclient directly.

       gnuserv is the server  program  that  is	 set  running  by
       XEmacs to handle all incoming and outgoing requests. It is
       not usually invoked directly, but is started  from  XEmacs
       by  loading  the	 gnuserv  package and evaluating the Lisp
       form (gnuserv-start).

       gnuattach no longer exists.  Its	 functionality	has  been
       replaced by gnuclient -nw.

OPTIONS
       gnuclient  supports as much of the command line options of
       Emacs as makes sense in this context. In addition it  adds
       a few of its own.
       Options with long names can also be specified using a dou
       ble hyphen instead of a single one.

       -nw     This option makes gnuclient act as a frontend such
	       that  XEmacs can attach to the current TTY. XEmacs
	       will then open a new TTY	 frame.	  The  effect  is
	       similar to having started a new XEmacs on this TTY
	       with the ``-nw'' option. It currently  only  works
	       if  XEmacs  is running on the same machine as gnu
	       client. This is the default if the `DISPLAY' envi
	       ronment variable is not set.

       -display display, --display display
	       If  this option is given or the `DISPLAY' environ
	       ment variable is	 set  then  gnuclient  will  tell
	       XEmacs to edit files in a frame on the specified X
	       device.

XEmacs Server							1

GNUSERV(1)					       GNUSERV(1)

       -q      This option informs gnuclient to exit once connec
	       tion  has been made with the XEmacs process.  Nor
	       mally gnuclient waits until all of  the	files  on
	       the  command  line  have been finished with (their
	       buffers killed) by the XEmacs process, and all the
	       forms have been evaluated.

       -v      When  this  option  is  specified  gnuclient  will
	       request for  the	 specified  files  to  be  viewed
	       instead of edited.

       -l library
	       Tell Emacs to load the specified library.

       -batch  Tell  Emacs  not	 to  open  any	frames. Just load
	       libraries and evaluate lisp code.  If no files  to
	       execute,	 functions  to	call or forms to eval are
	       given using the -l, -f,	or  -eval  options,  then
	       forms to eval are read from STDIN.

       -f function,
	       Make Emacs execute the lisp function.

       -eval form
	       Make Emacs execute the lisp form.

       -h hostname
	       Used   only  with  Internet-domain  sockets,  this
	       option specifies the host machine which should  be
	       running	gnuserv.  If this option is not specified
	       then  the  value	 of  the   environment	 variable
	       GNU_HOST	 is used if set. If no hostname is speci
	       fied, and the GNU_HOST variable	is  not	 set,  an
	       internet	 connection  will not be attempted. N.B.:
	       gnuserv does NOT allow internet connections unless
	       XAUTH  authentication  is  used	or the GNU_SECURE
	       variable has been specified and points at  a  file
	       listing all trusted hosts. (See SECURITY below.)

	       Note  that  an  internet	 address may be specified
	       instead of a hostname which can speed  up  connec
	       tions  to the server by quite a bit, especially if
	       the client machine is running YP.

	       Note also that a hostname of unix can be	 used  to
	       specify	that  the connection to the server should
	       use a Unix-domain  socket  (if  supported)  rather
	       than an Internet-domain socket.

       -p port Used   only  with  Internet-domain  sockets,  this
	       option specifies the service port used to communi
	       cate  between  server and clients.  If this option
	       is not specified, then the value of  the	 environ
	       ment  variable GNU_PORT is used, if set, otherwise

XEmacs Server							2

GNUSERV(1)					       GNUSERV(1)

	       a service called ``gnuserv'' is looked up  in  the
	       services database.  Finally, if no other value can
	       be found for the port, then a default port is used
	       which is usually 21490 + uid.
	       Note that since gnuserv doesn't allow command-line
	       options, the port for it will have to be specified
	       via one of the alternative methods.

       -r pathname
	       Used  only with Internet-domain sockets, the path
	       name argument may be needed to inform  XEmacs  how
	       to  reach  the root directory of a remote machine.
	       gnuclient prepends this string to each path  argu
	       ment  given.   For  example, if you were trying to
	       edit a file on  a  client  machine  called  otter,
	       whose  root  directory  was  accessible	from  the
	       server machine via the path /net/otter, then  this
	       argument	 should	 be set to '/net/otter'.  If this
	       option is omitted, then the value  is  taken  from
	       the  environment variable GNU_NODE, if set, or the
	       empty string otherwise.

       [+n] file
	       This is the path of the file to be edited.  If the
	       file  is	 a directory, then the directory browsers
	       dired or monkey are usually invoked instead.   The
	       cursor is put at line number 'n' if specified.

SETUP
       gnuserv	is  packaged  standardly  with recent versions of
       XEmacs.	Therefore, you should be able to start the server
       simply by evaluating the XEmacs Lisp form (gnuserv-start),
       or equivalently by typing `M-x gnuserv-start'.

CONFIGURATION
       The behavior of this suite of program is mostly controlled
       on  the	lisp  side  in Emacs and its behavior can be cus
       tomized to a large extent.  Type `M-x customize-group  RET
       gnuserv	RET'  for  easy access. More documentation can be
       found in the file `gnuserv.el'

EXAMPLE
	   gnuclient -q -f mh-smail
	   gnuclient -h cuckoo -r /ange@otter: /tmp/*
	   gnuclient -nw ../src/listproc.c

       More examples and sample wrapper scripts are  provided  in
       the etc/gnuserv directory of the Emacs installation.

XEmacs Server							3

GNUSERV(1)					       GNUSERV(1)

SYSV IPC
       SysV  IPC  is  used  to	communicate between gnuclient and
       gnuserv if the symbol SYSV_IPC is defined at  the  top  of
       gnuserv.h.  This is incompatible with both Unix-domain and
       Internet-domain socket communication as described below. A
       file  called /tmp/gsrv??? is created as a key for the mes
       sage queue, and if removed will	cause  the  communication
       between	server	and  client  to	 fail until the server is
       restarted.

UNIX-DOMAIN SOCKETS
       A Unix-domain socket is used to communicate  between  gnu_
       client  and  gnuserv  if the symbol UNIX_DOMAIN_SOCKETS is
       defined	at  the	 top  of  gnuserv.h.	A   file   called
       /tmp/gsrvdir????/gsrv  is  created  for communication.  If
       the symbol USE_TMPDIR is set  at	 the  top  of  gnuserv.h,
       $TMPDIR,	 when set, is used instead of /tmp.  If that file
       is deleted, or TMPDIR has different values for the  server
       and  the	 client,  communication between server and client
       will fail.  Only the user running gnuserv will be able  to
       connect to the socket.

INTERNET-DOMAIN SOCKETS
       Internet-domain	sockets	 are  used to communicate between
       gnuclient and gnuserv if the symbol  INTERNET_DOMAIN_SOCK
       ETS  is	defined	 at  the top of gnuserv.h. Both Internet-
       domain and Unix-domain sockets can be  used  at	the  same
       time.  If  a  hostname  is  specified  via  -h  or via the
       GNU_HOST environment variable, gnuclient establish connec
       tions  using  an	 internet  domain socket. If not, a local
       connection is attempted via either a unix-domain socket or
       SYSV IPC.

SECURITY
       Using Internet-domain sockets, a more robust form of secu
       rity is needed that wasn't  necessary  with  either  Unix-
       domain  sockets or SysV IPC. Currently, two authentication
       protocols  are  supported  to  provide  this:   MIT-MAGIC-
       COOKIE-1	 (based on the X11 xauth(1) program) and a simple
       host-based  access  control  mechanism,	hereafter  called
       GNUSERV-1.  The	GNUSERV-1  protocol  is always available,
       whereas support for MIT-MAGIC-COOKIE-1 may or may not have
       been  enabled  (via  a #define at the top of gnuserv.h) at
       compile-time.

       gnuserv, using  GNUSERV-1,  performs  a	limited	 form  of
       access  control at the machine level. By default no inter
       net-domain socket is opened.  If the  variable  GNU_SECURE
       can  be	found  in  gnuserv's  environment, and it names a
       readable filename, then this file is opened and assumed to
       be  a  list  of hosts, one per line, from which the server
       will allow requests. Connections from any other host  will
       be  rejected. Even the machine on which gnuserv is running
       is not permitted to  make  connections  via  the	 internet

XEmacs Server							4

GNUSERV(1)					       GNUSERV(1)

       socket unless its hostname is explicitly specified in this
       file.  Note that a host may be either a numeric IP address
       or  a  hostname, and that any user on an approved host may
       connect to your gnuserv and execute arbitrary elisp (e.g.,
       delete  all  your  files).  If this file contains a lot of
       hostnames then the server may take quite a time	to  start
       up.

       When the MIT-MAGIC-COOKIE-1 protocol is enabled, an inter
       net socket is opened by default.	 gnuserv  will	accept	a
       connection  from	 any  host,  and  will	wait for a "magic
       cookie" (essentially, a password) to be presented  by  the
       client.	If  the	 client doesn't present the cookie, or if
       the cookie is wrong, the authentication of the  client  is
       considered  to  have  failed. At this point. gnuserv falls
       back to the GNUSERV-1 protocol; If the client  is  calling
       from  a host listed in the GNU_SECURE file, the connection
       will be accepted, otherwise it will be rejected.

       Using MIT-MAGIC-COOKIE-1 authentication
	   When the gnuserv server is started,	it  looks  for	a
	   cookie defined for display 999 on the machine where it
	   is running. If the cookie is found, it will be  stored
	   for	use  as	 the authentication cookie. These cookies
	   are defined in an authorization file (usually  ~/.Xau
	   thority)  that is manipulated by the X11 xauth(1) pro
	   gram. For example, a	 machine  "kali"  which	 runs  an
	   emacs  that	invokes gnuserv should respond as follows
	   (at the shell prompt) when set up correctly.

	       kali% xauth list
	       GS65.SP.CS.CMU.EDU:0  MIT-MAGIC-COOKIE-1	 11223344
	       KALI.FTM.CS.CMU.EDU:999	MIT-MAGIC-COOKIE-1  1234

	   In  the above case, the authorization file defines two
	   cookies. The second one, defined for screen 999 on the
	   server machine, is used for gnuserv authentication.

	   On  the  client machine's side, the authorization file
	   must	 contain  an  identical	 line,	 specifying   the
	   server's cookie. In other words, on a machine "foobar"
	   which wishes to connect to "kali,"  the  `xauth  list'
	   output should contain the line:

	       KALI.FTM.CS.CMU.EDU:999	MIT-MAGIC-COOKIE-1  1234

	   For	more  information  on authorization files, take a
	   look at the xauth(1X11)  man	 page,	or  invoke  xauth
	   interactively  (without any arguments) and type "help"
	   at the prompt. Remember that case in the name  of  the
	   authorization  protocol  (i.e.`MIT-MAGIC-COOKIE-1') is
	   significant!

XEmacs Server							5

GNUSERV(1)					       GNUSERV(1)

ENVIRONMENT
       DISPLAY Default X device to put edit frame.

FILES
       /tmp/gsrv???
	       (SYSV_IPC only)

       /tmp/gsrvdir???/gsrv
	       (unix domain sockets only)

       ~/.emacs
	       XEmacs customization file, see xemacs(1).

SEE ALSO
       xauth(1X11), Xsecurity(1X11), gnuserv.el

BUGS
       NULs occurring in result strings don't get passed back  to
       gnudoit properly.

AUTHOR.
       Andy  Norman  (ange@hplb.hpl.hp.com),  based  heavily upon
       etc/emacsclient.c, etc/server.c	and  lisp/server.el  from
       the  GNU	 Emacs 18.52 distribution.  Various modifications
       from Bob Weiner (weiner@mot.com), Darrell  Kindred  (dkin
       dred@cmu.edu),  Arup  Mukherjee	(arup@cmu.edu),	 Ben Wing
       (ben@xemacs.org) and Hrvoje Niksic (hniksic@xemacs.org).

XEmacs Server							6

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net