Network Working Group                                         R. Gellens
Request for Comments: 3206                                      QUALCOMM
Category: Standards Track                                  February 2002


                  The SYS and AUTH POP Response Codes

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

Abstract

   This memo proposes two response codes: SYS and AUTH, which enable
   clients to unambiguously determine an optimal response to an
   authentication failure.  In addition, a new capability (AUTH-RESP-
   CODE) is defined.

Table of Contents

    1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . .  2
    2.  Conventions Used in this Document . . . . . . . . . . . . . . 2
    3.  Background   . . . . . . . . . . . . . . . . . . . . . . . .  2
    4.  The SYS Response Code   . . . . . . . . . . . . . . . . . . . 3
    5.  The AUTH Response Code   . . . . . . . . . . . . . . . . . .  3
    6.  The AUTH-RESP-CODE Capability   . . . . . . . . . . . . . . . 4
    7.  IANA Considerations   . . . . . . . . . . . . . . . . . . . . 4
    8.  Security Considerations  . . . . . . . . . . . . . . . . . .  4
    9.  References   . . . . . . . . . . . . . . . . . . . . . . . .  5
   10.  Author's Address  . . . . . . . . . . . . . . . . . . . . . . 5
   11.  Full Copyright Statement   . . . . . . . . . . . . . . . . .  6












Gellens                     Standards Track                     [Page 1]

RFC 3206          The SYS and AUTH POP Response Codes      February 2002



1.  Introduction

   RFC 2449 [POP3-EXT] defined extended [POP3] response codes, to give
   clients more information about errors so clients can respond more
   appropriately.  In addition to the mechanism, two initial response
   codes were defined (IN-USE and LOGIN-DELAY), in an attempt to
   differentiate between authentication failures related to user
   credentials, and other errors.

   In practice, these two response codes, while helpful, do not go far
   enough.  This memo proposes two additional response codes:  SYS and
   AUTH, which enable clients to unambiguously determine an optimal
   response to an authentication failure.

   In addition, a new capability (AUTH-RESP-CODE) is defined.

2.  Conventions Used in this Document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [KEYWORDS].

3.  Background

   RFC 2449 [POP3-EXT] introduced the IN-USE and LOGIN-DELAY response
   codes.  The intent is to allow clients to clearly determine the
   underlying cause of a failure in order to respond.  For example,
   clients need to know if the user should be asked for new credentials,
   or if the POP3 session should simply be tried again later.  (Some
   deployed POP3 clients attempt to parse the text of authentication
   failure errors, looking for strings known to be issued by various
   servers which indicate the mailbox is locked.)

   IN-USE indicates that an exclusive lock could not be obtained for the
   user's mailbox, probably because another POP3 session is in progress.
   LOGIN-DELAY informs the client that the user has not waited long
   enough before authenticating again.

   However, there are other error conditions which do not require new
   credentials, some of which should be brought to the user's attention.

   Despite the IN-USE and LOGIN-DELAY responses, clients cannot be sure
   if any other error requires new user credentials.







Gellens                     Standards Track                     [Page 2]

RFC 3206          The SYS and AUTH POP Response Codes      February 2002


4.  The SYS Response Code

   The SYS response code announces that a failure is due to a system
   error, as opposed to the user's credentials or an external condition.
   It is hierarchical, with two possible second-level codes: TEMP and
   PERM.  (Case is not significant at any level of the hierarchy.)

   SYS/TEMP indicates a problem which is likely to be temporary in
   nature, and therefore there is no need to alarm the user, unless the
   failure persists.  Examples might include a central resource which is
   currently locked or otherwise temporarily unavailable, insufficient
   free disk or memory, etc.

   SYS/PERM is used for problems which are unlikely to be resolved
   without intervention.  It is appropriate to alert the user and
   suggest that the organization's support or assistance personnel be
   contacted.  Examples include corrupted mailboxes, system
   configuration errors, etc.

   The SYS response code is valid with an -ERR response to any command.

5.  The AUTH Response Code

   The AUTH response code informs the client that there is a problem
   with the user's credentials.  This might be an incorrect password, an
   unknown user name, an expired account, an attempt to authenticate in
   violation of policy (such as from an invalid location or during an
   unauthorized time), or some other problem.

   The AUTH response code is valid with an -ERR response to any
   authentication command including AUTH, USER (see note), PASS, or
   APOP.

   Servers which include the AUTH response code with any authentication
   failure SHOULD support the CAPA command [POP3-EXT] and SHOULD include
   the AUTH-RESP-CODE capability in the CAPA response.  AUTH-RESP-CODE
   assures the client that only errors with the AUTH code are caused by
   credential problems.

      NOTE:  Returning the AUTH response code to the USER command
      reveals to the client that the specified user exists.  It is
      strongly RECOMMENDED that the server not issue this response code
      to the USER command.








Gellens                     Standards Track                     [Page 3]

RFC 3206          The SYS and AUTH POP Response Codes      February 2002


6.  The AUTH-RESP-CODE Capability

   CAPA tag:
       AUTH-RESP-CODE

   Arguments:
       none

   Added commands:
       none

   Standard commands affected:
       none

   Announced states / possible differences:
       both / no

   Commands valid in states:
       n/a

   Specification reference:
       this document

   Discussion:
       The AUTH-RESP-CODE capability indicates that the server includes
       the AUTH response code with any authentication error caused by a
       problem with the user's credentials.

7.  IANA Considerations

   IANA has added the AUTH-RESP-CODE capability to the list of POP3
   capabilities (established by RFC 2449 [POP3-EXT]).

   IANA has also added the SYS and AUTH response codes to the list of
   POP3 response codes (also established by RFC 2449 [POP3-EXT]).

8.  Security Considerations

   Section 5, The AUTH Response Code, discusses the security issues
   related to use of the AUTH response code with the USER command.











Gellens                     Standards Track                     [Page 4]

RFC 3206          The SYS and AUTH POP Response Codes      February 2002


9.  References

   [KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [POP3]     Myers, J. and M. Rose, "Post Office Protocol -- Version
              3", STD 53, RFC 1939, May 1996.

   [POP3-EXT] Gellens, R., Newman, C. and L. Lundblade, "POP3 Extension
              Mechanism", RFC 2449, November 1998.

10.  Author's Address

   Randall Gellens
   QUALCOMM Incorporated
   5775 Morehouse Drive
   San Diego, CA  92121-2779
   U.S.A.

   Phone: +1 858 651 5115
   EMail: randy@qualcomm.com






























Gellens                     Standards Track                     [Page 5]

RFC 3206          The SYS and AUTH POP Response Codes      February 2002


11.  Full Copyright Statement

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.



















Gellens                     Standards Track                     [Page 6]