Tech-invite3GPPspaceIETFspace
96959493929190898887868584838281807978777675747372717069686766656463626160595857565554535251504948474645444342414039383736353433323130292827262524232221201918171615141312111009080706050403020100
in Index   Prev   Next

RFC 3998

Internet Printing Protocol (IPP): Job and Printer Administrative Operations

Pages: 46
Proposed Standard
Errata
Part 3 of 3 – Pages 38 to 46
First   Prev   None

Top   ToC   RFC3998 - Page 38   prevText

11. Conformance Requirements

The Job and Printer Administrative operations defined in this document are OPTIONAL operations. However, some operations MUST be implemented if others are implemented, as shown in Table 9. Table 9. Conformance Requirement Dependencies for Operations Operations REQUIRED If any of these operations are supported: -------------------------------------------------------------------- Enable-Printer Disable-Printer Disable-Printer Enable-Printer Pause-Printer Resume-Printer Resume-Printer Pause-Printer, Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Release-Held-New-Jobs Hold-New-Jobs Activate-Printer, Deactivate-Printer Disable-Printer, Pause-Printer-After-Current-Job Deactivate-Printer, Activate-Printer Enable-Printer, Resume-Printer Restart-Printer none Shutdown-Printer none Startup-Printer none Reprocess-Job none Cancel-Current-Job none Resume-Job Suspend-Current-Job Suspend-Current-Job Resume-Job
Top   ToC   RFC3998 - Page 39
   Promote-Job                     none
   Schedule-Job-After              Promote-Job

   Tables 10 and 11 list the "printer-state-reasons" and "job-state-
   reasons" values that are REQUIRED if the indicated operations are
   supported.

   Table 10.  Conformance Requirement Dependencies for
              "printer-state-reasons" Values

   "printer-state-       Conformance   If any of the following Printer
   reasons" values:      Requirement   Operations are supported:
   --------------------------------------------------------------------
   'paused'              REQUIRED      Pause-Printer,
                                       Pause-Printer-After-Current-Job,
                                       or Deactivate-Printer
   'hold-new-jobs'       REQUIRED      Hold-New-Jobs
   'moving-to-paused'    OPTIONAL      Pause-Printer,
                                       Pause-Printer-After-Current-Job,
                                       Deactivate-Printer
   'deactivated'         REQUIRED      Deactivate-Printer


   Table 11.  Conformance Requirement Dependencies for "job-state-
              reasons" Values

   "job-state-reasons"   Conformance   If any of the following Job
   values:               Requirement   operations are supported:

   'job-suspended'       REQUIRED      Suspend-Current-Job
   'printer-stopped'     REQUIRED      Always REQUIRED

12. Normative References

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2246] Dierks, T. and C. Allen, "The TLS Protocol Version 1.0", RFC 2246, January 1999. [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. [RFC2910] Herriot, R., Butler, S., Moore, P., Turner, R., and J. Wenn, "Internet Printing Protocol/1.1: Encoding and Transport", RFC 2910, September 2000.
Top   ToC   RFC3998 - Page 40
   [RFC2911] Hastings, T., Herriot, R., deBry, R., Isaacson, S., and P.
             Powell, "Internet Printing Protocol/1.1: Model and
             Semantics", RFC 2911, September 2000.

   [RFC3380] Hastings, T., Herriot, R., Kugler, C., and H. Lewis,
             "Internet Printing Protocol (IPP): Job and Printer Set
             Operations", RFC 3380, September 2002.

13. Informative References

[RFC2567] Wright, F., "Design Goals for an Internet Printing Protocol", RFC 2567, April 1999. [RFC2568] Zilles, S., "Rationale for the Structure of the Model and Protocol for the Internet Printing Protocol", RFC 2568, April 1999. [RFC2569] Herriot, R., Hastings, T., Jacobs, N., and J. Martin, "Mapping between LPD and IPP Protocols", RFC 2569, April 1999. [RFC3196] Hastings, T., Manros, C., Zehler, P., Kugler, C., and H. Holst, "Internet Printing Protocol/1.1: Implementor's Guide", RFC 3196, November 2001. [RFC3239] Kugler, C., Lewis, H., and T. Hastings, "Internet Printing Protocol (IPP): Requirements for Job, Printer, and Device Administrative Operations", RFC 3239, February 2002. [RFC3995] Herriot, R. and T. Hastings, "Internet Printing Protocol (IPP): Event Notifications and Subscriptions", RFC 3995, February 2005.

14. IANA Considerations

This section contains the registration information that IANA added to the IPP Registry according to the procedures defined in [RFC2911], section 6, to cover the definitions in this document. The resulting registrations have been published as additions to the http://www.iana.org/assignments/ipp-registrations file.
Top   ToC   RFC3998 - Page 41

14.1. Attribute Registrations

The following table lists all the attributes defined in this document. These have been registered according to the procedures in [RFC2911], section 6.2. Name Reference Section -------------------------------------- --------- ------- Job Description attributes: original-requesting-user-name (name(MAX)) [RFC3998] 10.8.2 Printer Description attributes: subordinate-printers-supported (1setOf uri) [RFC3998] 7.1 parent-printers-supported (1setOf uri) [RFC3998] 7.2 Operation attributes: original-requesting-user-name (name(MAX)) [RFC3998] 10.8.2

14.2. Attribute Value Registrations

This section lists the additional values defined in this document for existing attributes. Attribute Value Reference Section --------------------- --------- ------- job-state-reasons (1setOf type2 keyword) job-suspended [RFC3998] 9.1 printer-state-reasons (1setOf type2 keyword) hold-new-jobs [RFC3998] 8.1 deactivated [RFC3998] 8.2

14.3. Additional Enum Attribute Value Registrations

The following table lists all the new enum attribute values defined in this document. These have been registered according to the procedures in [RFC2911], section 6.1.
Top   ToC   RFC3998 - Page 42
   Attribute (attribute syntax)
     Value    Name                                  Reference   Section
   -------    --------------------                  ---------   -------
   operations-supported (1setOf type2 enum)         [RFC2911]   4.4.1
     0x0022   Enable-Printer                        [RFC3998]   3
     0x0023   Disable-Printer                       [RFC3998]   3
     0x0024   Pause-Printer-After-Current-Job       [RFC3998]   3
     0x0025   Hold-New-Jobs                         [RFC3998]   3
     0x0026   Release-Held-New-Jobs                 [RFC3998]   3
     0x0027   Deactivate-Printer                    [RFC3998]   3
     0x0028   Activate-Printer                      [RFC3998]   3
     0x0029   Restart-Printer                       [RFC3998]   3
     0x002A   Shutdown-Printer                      [RFC3998]   3
     0x002B   Startup-Printer                       [RFC3998]   3
     0x002C   Reprocess-Job                         [RFC3998]   4
     0x002D   Cancel-Current-Job                    [RFC3998]   4
     0x002E   Suspend-Current-Job                   [RFC3998]   4
     0x002F   Resume-Job                            [RFC3998]   4
     0x0030   Promote-Job                           [RFC3998]   4
     0x0031   Schedule-Job-After                    [RFC3998]   4

14.4. Operation Registrations

The following table lists all the operations defined in this document. These have been registered according to the procedures in [RFC2911], section 6.4. Name Reference Section ----------------------------- --------- ------- Activate-Printer [RFC3998] 3.4.2 Cancel-Current-Job [RFC3998] 4.2 Deactivate-Printer [RFC3998] 3.4.1 Disable-Printer [RFC3998] 3.1.1 Enable-Printer [RFC3998] 3.1.2 Hold-New-Jobs [RFC3998] 3.3.1 Pause-Printer-After-Current-Job [RFC3998] 3.2.1 Promote-Job [RFC3998] 4.4.1 Release-Held-New-Jobs [RFC3998] 3.3.2 Reprocess-Job [RFC3998] 4.1 Restart-Printer [RFC3998] 3.5.1 Resume-Job [RFC3998] 4.3.2 Schedule-Job-After [RFC3998] 4.4.2 Shutdown-Printer [RFC3998] 3.5.2 Startup-Printer [RFC3998] 3.5.3 Suspend-Current-Job [RFC3998] 4.3.1
Top   ToC   RFC3998 - Page 43

14.5. Status Code Registrations

The following table lists the status code defined in this document. This has been registered according to the procedures in [RFC2911], section 6.6. Value Name Reference Section ------ ------------------------ --------- ------- 0x0000:0x00FF - "successful" none at this time 0x0100:0x01FF - "informational" none at this time 0x0300:0x03FF - "redirection" See RFC 2911 Errata none at this time 0x0400:0x04FF - "client-error" none at this time 0x0500:0x05FF - "server-error" 0x050A server-error-printer-is-deactivated [RFC3998] 5.1

15. Internationalization Considerations

This document has the same localization considerations as [RFC2911].

16. Security Considerations

The IPP Model and Semantics document [RFC2911] discusses high level security requirements (Client Authentication, Server Authentication, and Operation Privacy). Client Authentication is the mechanism by which the client proves its identity to the server in a secure manner. Server Authentication is the mechanism by which the server proves its identity to the client in a secure manner. Operation Privacy is defined as a mechanism for protecting operations from eavesdropping. Printer operations defined in this specification (see section 3), as well as Pause-Printer, Resume-Printer, and Purge-Job (defined in [RFC2911]) are intended for use by an operator and/or administrator. Job operations defined in this specification (see section 4) and Cancel-Job, Hold-Job, and Release-Job (defined in [RFC2911]) are intended for use by the job owner, operator, or administrator of the Printer object. These operator and administrator operations affect service for all users.
Top   ToC   RFC3998 - Page 44
   Inappropriate use of an administrative operation by an
   unauthenticated end user can affect the quality of service for all
   users.  Therefore, IPP Printer implementations MUST support both
   successful certificate-based TLS [RFC2246] client authentication and
   successful operator/administrator authorization (see [RFC2911],
   sections 5.2.7 and 8, and [RFC2910]) to perform the administrative
   operations defined in this document.  [RFC2910] requires the IPP
   Printer to support the minimum cipher suite specified for TLS/1.0.
   The means for authorizing an operator or administrator of the Printer
   object are outside the scope of this specification, RFC 2910, and RFC
   2911.

   The use of TLS and Client Authentication solves the Denial of
   Service, Man in the Middle, and Masquerading security threats.

17. Summary of Base IPP Documents

The base set of IPP documents includes the following: Design Goals for an Internet Printing Protocol [RFC2567] Rationale for the Structure and Model and Protocol for the Internet Printing Protocol [RFC2568] Internet Printing Protocol/1.1: Model and Semantics [RFC2911] Internet Printing Protocol/1.1: Encoding and Transport [RFC2910] Internet Printing Protocol/1.1: Implementer's Guide [RFC3196] Mapping between LPD and IPP Protocols [RFC2569] "Design Goals for an Internet Printing Protocol" takes a broad look at distributed printing functionality, and it enumerates real-life scenarios that help clarify the features that have to be included in a printing protocol for the Internet. It identifies requirements for three types of users: end users, operators, and administrators. It calls out a subset of end user requirements that are satisfied in IPP/1.0. A few OPTIONAL operator operations have been added to IPP/1.1. "Rationale for the Structure and Model and Protocol for the Internet Printing Protocol" describes IPP from a high level view, defines a roadmap for the various documents that form the suite of IPP specification documents, and gives background and rationale for the IETF working group's major decisions. "Internet Printing Protocol/1.1: Model and Semantics" describes a simplified model with abstract objects, their attributes, and their operations that are independent of encoding and transport. It introduces a Printer and a Job object. The Job object optionally supports multiple documents per Job. It also addresses security, internationalization, and directory issues.
Top   ToC   RFC3998 - Page 45
   "Internet Printing Protocol/1.1: Encoding and Transport" is a formal
   mapping of the abstract operations and attributes defined in the
   model document onto HTTP/1.1 [RFC2616].  It defines the encoding
   rules for a new Internet MIME media type called "application/ipp".
   This document also defines the rules for transporting over HTTP a
   message body whose Content-Type is "application/ipp".  This document
   defines the 'ippget' scheme for identifying IPP printers and jobs.

   "Internet Printing Protocol/1.1: Implementer's Guide" gives insight
   and advice to implementers of IPP clients and IPP objects.  It is
   intended to help them understand IPP/1.1 and some of the
   considerations that may assist them in the design of their client
   and/or IPP object implementations.  For example, a typical order of
   processing requests is given, including error checking.  Motivation
   for some of the specification decisions is also included.

   "Mapping between LPD and IPP Protocols" gives some advice to
   implementers of gateways between IPP and LPD (Line Printer Daemon)
   implementations.

Authors' Addresses

Carl Kugler IBM Corporation, 003G 6300 Diagonal Hwy Boulder, CO 80301 Phone: (303) 924-5060 EMail: kugler@us.ibm.com Tom Hastings, editor Xerox Corporation 701 S Aviation Blvd. ESAE 242 El Segundo, CA 90245 Phone: 310-333-6413 Fax: 310-333-6342 EMail: hastings@cp10.es.xerox.com Harry Lewis IBM Corporation 6300 Diagonal Hwy Boulder, CO 80301 Phone: (303) 924-5337 EMail: harryl@us.ibm.com
Top   ToC   RFC3998 - Page 46
Full Copyright Statement

   Copyright (C) The Internet Society (2005).

   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.

Acknowledgement

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