Go forward to News Spool.
Go up to Getting News.

NNTP
----

   Subscribing to a foreign group from an NNTP server is rather easy.
You just specify `nntp' as method and the address of the NNTP server as
the, uhm, address.

   If the NNTP server is located at a non-standard port, setting the
third element of the select method to this port number should allow you
to connect to the right port.  You'll have to edit the group info for
that (see Foreign Groups.).

   The name of the foreign group can be the same as a native group.  In
fact, you can subscribe to the same group from as many different servers
you feel like.  There will be no name collisions.

   The following variables can be used to create a virtual `nntp'
server:

`nntp-server-opened-hook'
     `nntp-server-opened-hook' is run after a connection has been made.
     It can be used to send commands to the NNTP server after it has
     been contacted.  By default is sends the command `MODE READER' to
     the server with the `nntp-send-mode-reader' function.  Another
     popular function is `nntp-send-authinfo', which will prompt you for
     an NNTP password and stuff.

`nntp-server-action-alist'
     This is an list of regexps to match on server types and actions to
     be taken when matches are made.  For instance, if you want Gnus to
     beep every time you connect to innd, you could say something like:

          (setq nntp-server-action-alist
                '(("innd" (ding))))

     You probably don't want to do that, though.

     The default value is

            '(("nntpd 1\\.5\\.11t"
               (remove-hook 'nntp-server-opened-hook nntp-send-mode-reader)))

     This ensures that Gnus doesn't send the `MODE READER' command to
     nntpd 1.5.11t, since that command chokes that server, I've been
     told.

`nntp-maximum-request'
     If the NNTP server doesn't support NOV headers, this backend will
     collect headers by sending a series of `head' commands.  To speed
     things up, the backend sends lots of these commands without
     waiting for reply, and then reads all the replies.  This is
     controlled by the `nntp-maximum-request' variable, and is 400 by
     default.  If your network is buggy, you should set this to 1.

`nntp-connection-timeout'
     If you have lots of foreign `nntp' groups that you connect to
     regularly, you're sure to have problems with NNTP servers not
     responding properly, or being too loaded to reply within reasonable
     time.  This is can lead to awkward problems, which can be helped
     somewhat by setting `nntp-connection-timeout'.  This is an integer
     that says how many seconds the `nntp' backend should wait for a
     connection before giving up.  If it is `nil', which is the default,
     no timeouts are done.

`nntp-command-timeout'
     If you're running Gnus on a machine that has a dynamically assigned
     address, Gnus may become confused.  If the address of your machine
     changes after connecting to the NNTP server, Gnus will simply sit
     waiting forever for replies from the server.  To help with this
     unfortunate problem, you can set this command to a number.  Gnus
     will then, if it sits waiting longer than that number of seconds
     for a reply from the server, shut down the connection, start a new
     one, and resend the command.  This should hopefully be transparent
     to the user.  A likely number is 30 seconds.

`nntp-retry-on-break'
     If this variable is non-`nil', you can also `C-g' if Gnus hangs.
     This will have much the same effect as the command timeout
     described above.

`nntp-server-hook'
     This hook is run as the last step when connecting to an NNTP
     server.

`nntp-open-server-function'
     This function is used to connect to the remote system.  Two
     pre-made functions are `nntp-open-network-stream', which is the
     default, and simply connects to some port or other on the remote
     system.  The other is `nntp-open-rlogin', which does an rlogin on
     the remote system, and then does a telnet to the NNTP server
     available there.

`nntp-rlogin-parameters'
     If you use `nntp-open-rlogin' as the `nntp-open-server-function',
     this list will be used as the parameter list given to `rsh'.

`nntp-end-of-line'
     String to use as end-of-line markers when talking to the NNTP
     server.  This is `\r\n' by default, but should be `\n' when using
     `rlogin' to talk to the server.

`nntp-rlogin-user-name'
     User name on the remote system when using the `rlogin' connect
     function.

`nntp-address'
     The address of the remote system running the NNTP server.

`nntp-port-number'
     Port number to connect to when using the `nntp-open-network-stream'
     connect function.

`nntp-buggy-select'
     Set this to non-`nil' if your select routine is buggy.

`nntp-nov-is-evil'
     If the NNTP server does not support NOV, you could set this
     variable to `t', but `nntp' usually checks whether NOV can be used
     automatically.

`nntp-xover-commands'
     List of strings that are used as commands to fetch NOV lines from a
     server.  The default value of this variable is `("XOVER"
     "XOVERVIEW")'.

`nntp-nov-gap'
     `nntp' normally sends just one big request for NOV lines to the
     server.  The server responds with one huge list of lines.  However,
     if you have read articles 2-5000 in the group, and only want to
     read article 1 and 5001, that means that `nntp' will fetch 4999 NOV
     lines that you do not want, and will not use.  This variable says
     how big a gap between two consecutive articles is allowed to be
     before the `XOVER' request is split into several request.  Note
     that if your network is fast, setting this variable to a really
     small number means that fetching will probably be slower.  If this
     variable is `nil', `nntp' will never split requests.

`nntp-prepare-server-hook'
     A hook run before attempting to connect to an NNTP server.

`nntp-async-number'
     How many articles should be pre-fetched when in asynchronous mode.
     If this variable is `t', `nntp' will pre-fetch all the articles
     that it can without bound.  If it is `nil', no pre-fetching will be
     made.

`nntp-warn-about-losing-connection'
     If this variable is non-`nil', some noise will be made when a
     server closes connection.