Internet DRAFT - draft-arun-ncc-smtp

draft-arun-ncc-smtp




Internet-Draft               Ncc in Mail Header              Arun Sankar
                                                 Hewlett-Packard Company
Expires: October 05, 2005                                 April 05, 2005

                             Ncc in Mail Header
			draft-arun-ncc-smtp-02.txt

Status of this Memo

   By submitting this Internet-Draft, I certify that any applicable
   patent or other IPR claims of which I am aware have been disclosed,
   and any of which I become aware will be disclosed, in accordance 
   with RFC 3668.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as
   Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six 
   months and may be updated, replaced, or obsoleted by other documents
   at any time.  It is inappropriate to use Internet-Drafts as 
   reference material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

Copyright Notice

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

Abstract
        
    This draft presents a mechanism to simplify one of the cumbersome 
    aspects of mailing, when one needs to send mails only to a subset of 
    mail-ids from an alias [ALIAS] . The basic intention is only to minimize 
    the complication and difficulty of a mail user when a mail needs to be 
    sent to n - m mail IDs i.e. send it to a group Id of n and exclude m
    from the alias [ALIAS] list.

1.  Introduction

    The current situation is that when a mail is to be sent to an
    alias [ALIAS] list, there is no possible way of a negating a set of
    mail IDs from that list. The purpose of this draft is a solution
    by the addition of another field in the Mail header. The intention 
    is to achieve this negation of a mail IDs from an alias [ALIAS].
    
2.  Conventions Used in this Document
    
    The key words "REQUIRED", "MUST", "MUST NOT", "SHOULD", "SHOULD
    NOT", and "MAY" in this document are to be interpreted as described
    in "Key words for use in RFCs to Indicate Requirement Levels"

Arun Sankar                Expires October 05 2005      [Page 1]
Internet-Draft             Ncc in Mail Header       April 05 2005

    [KEYWORDS].

3.  Requirement

    The requirement is to provide the user with a field, using which
    mails can be sent to a subset of an alias [ALIAS], i.e. a provision 
    "not" to deliver the mail to a set of mail IDs from the alias [ALIAS].

4.  Header Updations

    A new field needs to be added into the SMTP header [RECEIVER FIELDS] 
    called "Ncc". This would act as a negation to the To, Cc and Bcc 
    fields and ensure the mail is not sent to the mail ID mentioned 
    in the "Ncc" field. The Ncc field SHOULD be a part of the mail 
    header in the implementation. This needs to be a part of the 
    header as the alias processing could be done in any of the 
    intermediate relay servers and the "Ncc" field needs to be 
    available for processing.
    
5.  Format of the Field

    The format specification of this field should be treated as 
    a "Cc" field. This field would be a part of the header and 
    would be carried forward throughout the mail thread.

6.  The SMTP service extension for Ncc

    The Ncc option MAY not be implemented in all Mail Servers.
    This SHOULD not affect the servers that have implemented Ncc.
    The client can figure out if the server has Ncc implemented 
    using the EHLO command transaction. When the client sends the 
    EHLO command, the server responds with "NCC". 

    E.g.    
    S: 220 test1.example.com ESMTP server ready
    C: EHLO test2.example.com
    S: 250-test1.example.com
    S: 250 NCC
    
    If the server does not respond with an Ncc, the mail SHOULD
    not be processed further but a suitable error message like 
    "NCC" not supported should be sent back to the sender.

6.  Processing of the Ncc Field.
    
    The Ncc Field MUST be processed after the alias [ALIAS] has
    been expanded and before the creation of the envelope. The
    mail IDs in the Ncc field MUST be removed from the To, Cc and
    the Bcc fields during its processing. If there is an alias 
    [ALIAS] in the "Ncc" field, it should be expanded first and 
    then proceed with the negation of the Mail-Id's. Each recipient
    address from "Ncc" header field SHOULD NOT be copied to a RCPT
    command. Any empty fields SHOULD then be removed from the 
    headers.  Once this process is completed, the remaining headers
    SHOULD be checked to verify that at least one To:, Cc:, or Bcc:

Arun Sankar                Expires October 05 2005      [Page 2]
Internet-Draft             Ncc in Mail Header       April 05 2005

    header remains.  If none do, then the From: address SHOULD to be
    added to the "Rcpt To" command and the mail processing could be
    continued. Implimentations SHOULD ensure appropriate error
    conditions in case the To:, Cc: and the Bcc: field gets negated 
    and are nullified. This field MUST be treated similar to the Cc
    field with respect to syntax and and processing has to be done
    in mail gateways, relays etc. The Ncc field has to be a part of
    the mail envelope. Its existence in the envelope is necessary as 
    the alias expansion can happen in any intermediate server.

    
7.  Example

    A needs to send a mail to a group but the intention is not to 
    send this to D.

    From: A                             From: A
    To: B                               To: B
    CC: C,E,F,G,H                       CC: Team_ABCDEFGH
                                        nCC: D
    Subject: TEST                       Subject: TEST

    On the continuation of the thread and D is still not a part of
    the list.

    From: B                             From: B
    To: A                               To: A
    CC: C,E,F,G,H                       CC: Team_ABCDEFGH
                                        nCC: D
    Subject: TEST                       Subject: TEST

8.  Security Considerations.

    The most important Security point that needs to be considered 
    in this draft is with recpect to a User-Agent that does not 
    have Ncc implimented. This User-Agent might drop the header 
    that it does not understand. This could result in the "Ncc" 
    Header being dropped and even a server that supports the "Ncc" 
    field would not be able to process the "Ncc" field in the reply.
    The other minor problem is when the server does not support
    "Ncc", which is solved by the service extention to SMTP.

Appendices

A. References

   The following documents contain definitions or specifications that
   are necessary to understand this document properly:
   
   [ALIAS]              J. Klensin, "Simple Mail Transfer Protocol", 
                        RFC: 2821, April 2001
      
   [RECEIVER FIELDS]    Crocker, D., "Standard of the Format of 
                        ARPA Internet Text Messages", RFC 822, 
                        August 1982.  

Arun Sankar                Expires October 05 2005      [Page 3]
Internet-Draft             Ncc in Mail Header       April 05 2005

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

Author's Address

   Arun Sankar
   Hewlett-Packard,
   29, Cunningham road,
   Bangalore,
   India 560052
   sankar@hp.com
   +91-80-205-3107

9. Full Copyright Statement

   Copyright (C) The Internet Society (2004).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78, and
   except as set forth therein, the authors retain all their rights.

   This document and the information contained herein are provided on 
   an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE 
   REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
   INTERNET ENGINEERING TASK FORCE DISCLAIM 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.

   Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed 
   to pertain to the implementation or use of the technology described 
   in this document or the extent to which any license under such 
   rights might or might not be available; nor does it represent that 
   it has made any independent effort to identify any such rights.  
   Information on the procedures with respect to rights in RFC 
   documents can be found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use
   of such proprietary rights by implementers or users of this 
   specification can be obtained from the IETF on-line IPR repository 
   at http://www.ietf.org/ipr.   

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.



Arun Sankar                Expires October 05 2005      [Page 4]