ietf-nntp Responses sections

Clive D. W. Feather clive at on-the-train.demon.co.uk
Tue Jul 10 08:19:21 PDT 2001


-----BEGIN PGP SIGNED MESSAGE-----

Following the discussion yesterday, I've formatted the "Responses"
section for each command in draft 13. Unless stated otherwise, the text
here would completely replace each such section. Commentary is
unindented.


  7.1 Initial Connection
Add:
  7.1.1 Responses

       200         service available, POST allowed
       201         service available, POST not allowed
       400         service temporarily unavailable
       502         client not authorised to use this server

  Following a 400 or 502 response the server MUST immediately
  close the connection.

Renumber:
  7.1.1 Initial Connection Example
as 7.1.2.


  7.2 MODE READER
  7.2.1 Responses
       200         service available, POST allowed
       201         service available, POST not allowed
       400         service about to terminate
       502         client not authorised to use this server

  Following a 400 or 502 response the server MUST immediately
  close the connection.


Throughout the remainder of this I have omitted the generic responses
such as 400 (service about to terminate) and 502 (not authorised to use
this facility). I'm assuming that these would produce more confusion
than including them would save. But see below.


  8.1 LIST EXTENSIONS
  8.1.1 Responses

       202         extension list follows (multiline)
       402         no extensions available
       503         unable to list extensions

  Following a 503 response an extension might still be
  available, and the client MAY attempt to use it.


  9.1.1.1 GROUP
  9.1.1.1.1 Responses

       211 n l h ggg     group successfully selected
                         (n = estimated number of articles in group,
                          l = low water mark, h = high water mark,
                          ggg = group name)
       411               no such newsgroup


  9.1.1.2   LAST
  9.1.1.2.1 Responses

       223 n a     article found (n = number, a = message-id)
       412         no newsgroup currently selected
       420         current article pointer is invalid
       422         no previous article in this group


  9.1.1.3 NEXT
  9.1.1.3.1 Responses

       223 n a     article found (n = number, a = message-id)
       412         no newsgroup currently selected
       420         current article pointer is invalid
       421         no next article in this group


  9.2.1 ARTICLE
  9.2.1.1 Responses

       First form (message-id specified):

       220 0 a     article retrieved and follows (multiline,
                    a = message-id)
       430         no such article

       Second form (optional article number specified):

       220 n a     article retrieved and follows (multiline,
                    n = number, a = message-id)
       412         no newsgroup currently selected
       420         current article pointer is invalid
       423         no such article number in this group

  The 420 response only occurs if no article number has been
  specified.

  In the 220 response, the first parameter is 0 for the first
  form and the article number (within the current group) for the
  second form. The second parameter is the message-id of the
  article (within angle brackets). This is taken from the
  message-id header line of the article (required by RFC 1036).
  If there is no such line, the message-id "<0>" MUST be used
  instead (without the double quotes).

  Since the message-id field is unique for each article, it may
  be used by a client to skip duplicate displays of articles
  that have been posted more than once, or to more than one
  newsgroup.

  The article headers and body are returned as a multiline
  response following the initial response line.


  9.2.2 HEAD
  9.2.2.1 Responses

       First form (message-id specified):

       221 0 a     article retrieved, headers follow (multiline)
       430         no such article

       Second form (optional article number specified):

       221 n a     article retrieved, headers follow (multiline)
       412         no newsgroup selected
       420         no current article selected
       423         no such article number in this group

  Except that only the headers are included in the response, the
  221 response behaves identically to the 220 response of the
  ARTICLE command.


  9.2.3 BODY
  9.2.3.1 Responses

       First form (message-id specified):

       222 0 a     article retrieved, body follows (multiline)
       430         no such article

       Second form (optional article number specified):

       222 n a     article retrieved, body follows (multiline)
       412         no newsgroup selected
       420         no current article selected
       423         no such article number in this group

  Except that only the body is included in the response, the 222
  response behaves identically to the 220 response of the
  ARTICLE command.


  9.2.4 STAT
  9.2.4.1 Responses

       First form (message-id specified):

       223 0 a     article exists
       430         no such article

       Second form (optional article number specified):

       223 n a     article exists
       412         no newsgroup selected
       420         no current article selected
       423         no such article number in this group

  The parameters of the 223 response are identical to those that
  would have been given in a 220 response to the equivalent
  ARTICLE command. However, the response is NOT multiline.


  9.3.1 POST
  9.3.1.1 Responses

       Responses to the initial command

       340         send article to be posted
       440         posting not allowed

       Responses to the end of the posted article

       240         article received successfully
       441         posting failed


  9.3.2 IHAVE
  9.3.2.1 Responses

       Responses to the initial command

       335         send article
       435         do not send article

       Responses to the end of the article

       235         article received successfully
       436         transfer failed, try again later
       437         article rejected, do not resend

The following text would, perhaps, better belong in the description than
in the responses.

  Because some host news posting software may not be able to
  immediately render status on the whether an article is
  inappropriate for posting or forwarding, an NNTP server MAY
  acknowledge the successful transfer of the article and later
  silently discard it. Thus, an NNTP server MAY return the 235
  acknowledgment code and later discard the received article.


  9.4.1 LIST
  9.4.1.1 Responses

       215         list follows (multiline)


  9.4.2 LIST ACTIVE.TIMES
  9.4.2.1 Responses

       215         list follows (multiline)


  9.4.3 LIST DISTRIBUTIONS
  9.4.3.1 Responses

       215         list follows (multiline)


  9.4.4 LIST DISTRIB.PATS
  9.4.4.1 Responses

       215         list follows (multiline)


  9.4.5 LIST NEWSGROUPS
  9.4.5.1 Responses

       215         list follows (multiline)


  9.5.1.1 The LISTGROUP Command
  9.5.1.1.1 Responses

       211         list of article numbers follow (multiline)
       411         no such newsgroup
       412         no newsgroup currently selected


  9.5.2.1 LIST OVERVIEW.FMT
  9.5.2.1.1 Responses

       215         list follows (multiline)


  9.5.2.2 OVER
  9.5.2.2.1 Responses

       224         information follows (multiline)
       412         no newsgroup currently selected
       420         no current article selected


  9.5.3.1 HDR
  9.5.3.1.1 Responses

       First form (range specified):

       221         headers follow (multiline)
       412         no newsgroup currently selected

       Second form (message-id specified):

       221         headers follow (multiline)
       412         no newsgroup currently selected
       430         no such article

  In the second form, the multiline response after a 221 code will
  only contain a single line of data.


  10.1 QUIT
  10.1.1 Responses

       205         closing connection

  The server MUST immediately close the connection.


  11.1 DATE
  11.1.1 Responses

       111 YYYYMMDDhhmmss       date returned


  11.2 The HELP Command
  11.2.1 Responses

       100         help text follows (multiline)


  11.3 NEWGROUPS
  11.3.1 Responses

       231         list follows (multiline)


  11.4 NEWNEWS
  11.4.1 Responses

       230         list follows (multiline)


More on generic responses:

An alternative approach to generic responses would be to add a "generic"
line to each section, saying which generic codes are allowed. This would
also make it clear which commands are optional and which are mandatory.
On the other hand, the generic responses only fall into two groups:
  * 400, 401, 501, and 502 can always occur (can QUIT get any of these
    other than 501 ?)
  * 403, 500, and 503 can occur with optional commands but not mandatory
    ones (and 500 isn't available if the command uses two words).
Here are examples of some sections with generic responses added:

  7.2 MODE READER
  7.2.1 Responses
       200         service available, POST allowed
       201         service available, POST not allowed
       Generic: 400 401 501 502

  Following a 400 or 502 response the server MUST immediately
  close the connection.


  9.4.1 LIST
  9.4.1.1 Responses

       215         list follows (multiline)
       Generic: 400 401 501 502


  9.4.2 LIST ACTIVE.TIMES
  9.4.2.1 Responses

       215         list follows (multiline)
       Generic: 400 401 403 501 503 503


  9.5.2.2 OVER
  9.5.2.2.1 Responses

       224         information follows (multiline)
       412         no newsgroup currently selected
       420         no current article selected
       Generic: 400 401 403 500 501 502 503


  10.1 QUIT
  10.1.1 Responses

       205         closing connection
       Generic: 501


  11.3 NEWGROUPS
  11.3.1 Responses

       231         list follows (multiline)
       Generic: 400 401 501 502


- -- 
Clive D.W. Feather    | Internet Expert      | Work: <clive at demon.net>
Tel: +44 20 8371 1138 | Demon Internet       | Home: <clive at davros.org>
Fax: +44 20 8371 1037 | Thus plc             | Web:  <http://www.davros.org>
Written on my laptop; please observe the Reply-To address

-----BEGIN PGP SIGNATURE-----
Version: PGPsdk version 1.7.1

iQEVAwUBO0sc+CNAHP3TFZrhAQEvuwf/c9z1hb5i22RUMZmJV3yHaFn49/F82SKE
XJEsrRGUNnCl54v9DI0f58DgRw2m7Z91ejgsVwEQMOC2L/BB80JFLr0NKrCh3fr8
WrpfRX/QTcSqNrTf2BBg9MYUWFRk1qPP4ECrYKJGBhcYg5xdlizgb+kMGa7Ph5VA
O18pt6inGrkVNzS8ZPCPZPDwOrDYYLk1rFJs9HnL7iYNPVzPatdSxHMFG7dTuNvm
Npci568KuTNUATh84P6p28sIFGWA/jNZY/+NGk+HuLirolZIDyMSiwYPmn67TDxW
fbBU7F7enpVSz2fLDFR9+cmReBQVbYg0zcDwrIuWOjZkCHoeQvvjxA==
=UpiW
-----END PGP SIGNATURE-----



More information about the ietf-nntp mailing list