The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

gnuserv ()
  • >> gnuserv (1) ( Solaris man: Команды и прикладные программы пользовательского уровня )
  • gnuserv (1) ( Linux man: Команды и прикладные программы пользовательского уровня )
  • 
    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 evaluate
         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 depreciated. 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 usu-
         ally 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 double
         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 simi-
                 lar  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 gnuclient.
                 This is the default  if  the  `DISPLAY'  environment
                 variable is not set.
    
         -display display, --display display
                 If this option is given or the `DISPLAY' environment
                 variable  is  set then gnuclient will tell XEmacs to
                 edit files in a frame on the specified X device.
    
         -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  specified,  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 connections
                 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  communicate
                 between server and clients.  If this option  is  not
                 specified,  then  the value of the environment vari-
                 able GNU_PORT is used, if set, otherwise  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 pathname
                 argument may be needed to inform XEmacs how to reach
                 the root directory of a remote  machine.   gnuclient
                 prepends  this  string  to each path argument 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 customized
         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.
    
    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 message
         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 and if
         deleted will cause communication between server  and  client
         to fail.  Only the user running gnuserv will be able to con-
         nect to the socket.
    
    INTERNET-DOMAIN SOCKETS
         Internet-domain sockets are used to communicate between gnu-
         client  and gnuserv if the symbol INTERNET_DOMAIN_SOCKETS is
         defined at the top of gnuserv.h.  Both  Internet-domain  and
         Unix-domain sockets can be used at the same time. If a host-
         name is specified via -h or  via  the  GNU_HOST  environment
         variable,  gnuclient establish connections 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 internet-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 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 internet
         socket  is  opened by default. gnuserv will accept a connec-
         tion 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 ~/.Xauthority)
             that  is  manipulated  by  the X11 xauth(1) program. 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 interac-
             tively (without any arguments) and type  "help"  at  the
             prompt. Remember that case in the name of the authoriza-
             tion protocol (i.e.`MIT-MAGIC-COOKIE-1') is significant!
    
    
    
    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
         (dkindred@cmu.edu), Arup Mukherjee (arup@cmu.edu), Ben  Wing
         (ben@xemacs.org) and Hrvoje Niksic (hniksic@srce.hr).
    
    
    
    


    Поиск по тексту MAN-ов: 




    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру