One document matched: draft-ietf-ipp-install-01.txt

Differences from draft-ietf-ipp-install-00.txt







INTERNET-DRAFT       
<draft-ietf-ipp-install-01.txt> 
                                                              Hugo Parra 
                                                            Novell, Inc. 
                                                             Ted Tronson 
                                                            Novell, Inc. 
                                                            Tom Hastings 
                                                             Xerox Corp. 
                                                        November 7, 2000 

                   Internet Printing Protocol (IPP): 

                     Printer Installation Extension 

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


Status of this Memo 

This document is an Internet-Draft and is in full conformance with all 
provisions of Section 10 of [RFC2026].  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 as 
http://www.ietf.org/shadow.html. 


Abstract 

Various client platforms require that some setting up take place at the 
workstation before the client can properly submit jobs to a specific 
printer.   This setup process is sometimes referred to as printer 
installation.  Most clients need some information about the printer 
being installed as well as support files to complete the printer 
installation.  The nature of the support files varies depending on the 
specific client platform, from simple configuration files to highly 
sophisticated printer drivers.  This document refers to these support 
files as "Client Print Support Files".  Traditionally, the selection and 
installation of the correct Client Print Support Files has been error 
prone.  The selection and installation process can be simplified and 
even automated if the workstation can learn some key information about 
the printer and which sets of Client Print Support Files are available.  
Such key information includes: operating system type, CPU type, 
document-format (PDL), natural language, etc. This document describes 
the IPP extensions that enable workstations to obtain the information 
needed to perform a proper printer driver installation using IPP. 

 
Parra, Tronson, Hastings                                       [page 1] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


The full set of IPP documents includes: 

  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 [ipp-iig] 
  Mapping between LPD and IPP Protocols [RFC2569] 
   
The "Design Goals for an Internet Printing Protocol" document takes a 
broad look at distributed printing functionality, and it enumerates 
real-life scenarios that help to clarify the features that need 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. 

The "Rationale for the Structure and Model and Protocol for the Internet 
Printing Protocol" document 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.   

The "Internet Printing Protocol/1.1: Encoding and Transport" document 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 a message body over 
HTTP whose Content-Type is "application/ipp".  This document defines a 
new scheme named 'ipp' for identifying IPP printers and jobs.   

The "Internet Printing Protocol/1.1: Implementer's Guide" document 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. 

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











 
Parra, Tronson, Hastings                                       [page 2] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


 


                           Table of Contents 

1  Introduction......................................................4 
2  Terminology.......................................................4 
3  Model Extensions..................................................4 
 3.1  client-print-support-files-supported (1setOf octetString(MAX)).5 
 3.2  Get-Printer-Attributes Operation Extension.....................9 
   3.2.1 Get-Printer-Attributes Request..............................9 
     3.2.1.1 client-print-support-files-filter (octetString(MAX)) 
     operation attribute..............................................9 
   3.2.2 Get-Printer-Attributes Response............................11 
 3.3  Get-Client-Print-Support-Files................................12 
   3.3.1 Get-Client-Print-Support-Files Request.....................12 
   3.3.2 Get-Client-Print-Support-Files Response....................13 
4  Conformance......................................................14 
5  Encoding of the Operation Layer..................................14 
6  Encoding of Transport Layer......................................14 
7  IANA Considerations..............................................15 
8  Internationalization Considerations..............................15 
9  Security Considerations..........................................15 
10   References......................................................15 
11   Author's Addresses..............................................16 
12   Full Copyright Statement........................................17 

 

                                 Tables 

Table 1 - "client-print-support-files-supported" attribute fields.....7 

Table 2 - "client-print-support-files-filter" attribute fields.......10 

 



















 
Parra, Tronson, Hastings                                       [page 3] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


1  Introduction 

A common configuration for printing from a workstation requires that 
some Client Print Support Files (e.g., PPD, printer driver files) 
specific to the target printer be installed on that workstation.  
Selection and configuration of the appropriate Client Print Support 
Files can be simplified and even automated if the workstation can obtain 
some key information about the printer and which sets of Client Print 
Support Files are available.  Such key information includes: operating 
system type, CPU type, document-format (PDL), natural language, etc.  
With a few extensions, IPP provides a simple and reliable vehicle for 
printers to convey this information to interested workstations.  The IPP 
extensions described in this document enable a flexible solution for 
installing Client Print Support Files on workstations running different 
operating systems and for printers of all makes and models.  It allows 
Client Print Support Files to be downloaded from repositories of 
different sorts.  A possible repository for the files is the printer 
itself.  The extensions necessary for getting Client Print Support Files 
from the printer are included in this document. 


2  Terminology 

Client Print Support Files - a set of files, such as a printer driver, 
font metric file, printer configuration file (PPD, GPD, etc.) that 
support a client printing to a particular Printer.  A Printer can have 
multiple sets of Client Print Support Files that work for different 
operating systems, document formats, natural languages, CPUs, etc. 

This document uses terms such as "attributes", "keywords", and 
"support".  These terms have special meaning and are defined in the 
model terminology [RFC2911] section 12.2.  

Capitalized terms, such as MUST, MUST NOT, REQUIRED, SHOULD, SHOULD NOT, 
MAY, NEED NOT, and OPTIONAL, have special meaning relating to 
conformance.  These terms are defined in [RFC2911] section 12.1 on 
conformance terminology, most of which is taken from RFC 2119 [RFC2119]. 

This section defines the following additional terms that are used 
throughout this document: 

  REQUIRED: if an implementation supports the extensions described in 
     this document, it MUST support a REQUIRED feature. 
  OPTIONAL: if an implementation supports the extensions described in 
     this document, it MAY support an OPTIONAL feature.  

3  Model Extensions 

To assist workstations in the printer installation process, an IPP 
printer needs to provide the workstation with information about the 
Client Print Support Files, such as the their name and location/s.  This 
information needs to match the workstation's specific environment, such 
as its operating system, preferred natural language, and preferred 
document format. 

 
Parra, Tronson, Hastings                                       [page 4] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


The following extensions to the IPP model enable assisted or automated 
printer installation.  This section describes each extension in detail. 

     - A new REQUIRED Printer Description attribute: "client-print-
       support-files-supported" (1setOf octetString(MAX)). 

     - A new REQUIRED Get-Printer-Attributes operation attribute: 
       "client-print-support-files-filter" (octetString(MAX)). 

     - A new RECOMMENDED printer operation: Get-Client-Print-Support-
       Files. 


3.1 client-print-support-files-supported (1setOf octetString(MAX)) 


An IPP Printer uses the REQUIRED Printer Description attribute "client-
print-support-files-supported" to represent relevant information about 
all of the Client Print Support Files it supports.  Each value is a 
composite UTF-8 string with well-defined fields (see Table 1).  Each 
value string MUST be formatted as follows: 

 "uri=val < field-name =val  ,.,val  < . < field-name =val  ,.,val  <" 
         1            2    21      2p                n    n1      nq


The first field MUST be the "uri" field.  The remaining fields MAY be in 
any order. 


The string MUST NOT include any control characters (hex 00 to 1F), even 
the so-called white space control characters (TAB, CR, and LF) anywhere.  
Only zero or more UTF-8 SPACE characters (hex 20) can be included and 
they can be included only IMMEDIATELY AFTER the punctuation character: 
"<", but NOT anywhere else, including after "=" and ",".  However, if 
the UTF-8 SPACE character is needed in a file name value, then each 
occurrence is included directly, without escaping (see example).  On the 
other hand, if the UTF-8 SPACE character is needed in a URL value, then 
each occurrence is escaped as: "\x20" (URI conventions - see [RFC2396]).   


Table 1 lists the REQUIRED fields that a Printer MUST support and the 
OPTIONAL fields that a Printer MAY support in the "client-print-support-
files-supported" (1setOf octetString(MAX)) Printer Description 
attribute.  A Printer implementation MAY support additional fields using 
the same syntax.  Values are defined to be either CASE-SENSITIVE or ALL-
LOWER-CASE according to the definitions for the attribute syntaxes from 
[RFC2911] (set off by single quotes in the table).  The CASE-SENSITIVE 
values MAY have upper and lower case letters as for the corresponding 
attribute syntaxes in [RFC2911].  The LOWER-CASE values MUST have all 
lower case alphabetic letters.  Additional characters, such as digits, 
hyphen-minus (-), period (.), and slash (/) are according to the 
corresponding attribute syntaxes in [RFC2911]. 




 
Parra, Tronson, Hastings                                       [page 5] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


Clients SHOULD ignore fields they don't recognize in a given value.  
This allows for future extensions to the format of the string without 
breaking compatibility with earlier clients. 


















































 
Parra, Tronson, Hastings                                       [page 6] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


   Table 1 - "client-print-support-files-supported" attribute fields 

Field name     Field value 


"uri"          One REQUIRED CASE-SENSITIVE 'uri' string identifying the 
               uri where to obtain the support files for each OS 
               platform, document format, and natural language the 
               printer supports.  This MUST be the first field in each 
               value.  Examples of uri schemes that MAY be found here 
               are ftp, http, and ipp.  The ftp and http schemed URIs 
               identify the archive file that contains all the 
               necessary client support files.  The ipp schemed URIs 
               also identify the archive file which may be obtained 
               from the Printer using the Get-Client-Print-Support-
               Files operation (see section 3.3).  In order to 
               distinguish between multiple Client Print Support Files, 
               the ipp URL is used to distinguish between them in an 
               implementation dependent manner, such as using a file 
               URL parameter (' file=xxx).  A Printer SHOULD support 
               the ipp scheme. 

"os-type"      One or more REQUIRED comma-separated LOWER-CASE strings 
               identifying the operating system types supported by this 
               set of Client Print Support Files.  Valid values include 
               the operating system names defined in the IANA document 
               [os-names]. Although the IANA registry requires that the 
               names be all upper-case, the values MUST be all lower 
               case in this field (plus hyphen-minus (-), period (.), 
               and slash (/)).   Examples: linux, linux-2.2, os/2, sun-
               os-4.0, unix, unix-bsd, win32, windows-95, windows-98, 
               windows-ce, windows-nt, windows-nt-4, windows-nt-5. 

"cpu-type"     One or more REQUIRED comma-separated LOWER-CASE strings 
               identifying the CPU types supported by this set of 
               Client Print Support Files. Values (or compatible): 
               'unknown', 'x86-16', 'x86-32', 'x86-64', 'dec-vax', 
               'alpha', 'power-pc', 'm-6800', 'sparc', 'itantium', 
               'mips', 'arm'. 

"document-     One or more REQUIRED comma-separated CASE-SENSITIVE 
format"        'document-format' strings identifying the document 
               formats supported by this set of Client Print Support 
               Files.  Valid values are the string representation of 
               the IPP mimeMediaType syntax (see [RFC2911]).  'unknown' 
               is a valid value. 

"natural-      One or more REQUIRED comma-separated LOWER-CASE 
language"      'naturalLanguage' strings identifying the natural 
               language used by this set of Client Print Support Files.  
               Valid values are the string representation of the IPP 
               naturalLanguage syntax.  'unknown' is a valid value. 

"compression"  One REQUIRED LOWER-CASE 'keyword' string identifying the 
               mechanism used to compress this set of Client Print 
               Support Files.  All files needed for the installation of 

 
Parra, Tronson, Hastings                                       [page 7] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


Field name     Field value 


               a printer driver MUST be compressed into a single file.  
               Valid values are: 'deflate', 'gzip', 'compress'.  The 
               'none' value is allowed but limits the uncompressed 
               Client Print Support File to a single file. 

"file-type"    One or more REQUIRED comma-separated LOWER-CASE 
               'keyword' strings identifying the type of the Client 
               Print Support Files.  Valid values are: 'printer-
               driver', 'ppd', 'updf', 'gpd'. 

"file-name"    One REQUIRED CASE-SENSITIVE string identifying the name 
               by which the Client Print Support Files will be 
               installed on the workstation.  For Client Print Support 
               Files of type 'printer-driver', this is also the name 
               that identifies this printer driver in an .inf file. 

"policy"       One REQUIRED LOWER-CASE 'keyword' string indicating the 
               policy for automatic loading.  Values:  'unknown', 
               'manufacturer-recommended', 'administrator-recommended', 
               'manufacturer-experimental,  and 'administrator-
               experimental'.  The experimental values are for beta 
               test.  

"file-size"    One OPTIONAL file size in octets represented as ASCII 
               decimal digits. 

"file-         One OPTIONAL LOWER-CASE version number.  Recommended to 
version"       be of the form "Major.minor[.revision]" "Major" is the 
               major version number, "minor" is the minor version 
               number and "revision" is an optional revision number. 

"file-date-    One OPTIONAL File CASE-SENSITIVE creation date and time 
time"          according to ISO 8601 where all fields are fixed length 
               with leading zeroes (see [RFC2518] Appendix 2).  
               Examples:  2000-01-01T23:09:05Z and 2000-01-01T02:59:59-
               04.00 


Each value MUST refer to one and only one set of Client Print Support 
Files, even if the files are downloadable from various repositories 
(i.e., even if they are associated with multiple URIs). 

The following illustrates what two valid values of the "client-print-
support-files-supported" (1setOf octetString(MAX)) Printer Description 
attribute might look like: 

     uri=ipp://mycompany.com/myprinter<  
     os-type=windows-95< cpu-type=x86-32<  
     document-format=application/postscript<  
     natural-language=en< compression=gzip<  
     install-file-type=printer-driver<  
     install-file-name=CompanyX-ModelY-driver.gz<  
     policy=manufacturer-recommended< 



 
Parra, Tronson, Hastings                                       [page 8] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


     uri=ftp://mycompany.com/root/drivers/win95/CompanyX/ModelY.g
     z< 
     os-type=windows-95< cpu-type=x86-32<  
     document-format=application/postscript,application/vnd.hp-
     PCL<  
     natural-language=en,fr< compression=gzip<  
     install-file-type=printer-driver<  
     install-file-name=Company T Model Z driver.gz<  
     policy=manufacturer-recommended< 

The above examples have been broken onto separate lines for readability 
in this document.  However, there MUST NOT be any line breaks in the 
actual values. 


The "client-print-support-files-supported" Printer Description attribute 
MAY be preset at manufacturing time or set via the IPP Set-Printer-
Attribute operation or through administrative means outside the scope of 
IPP. 


3.2 Get-Printer-Attributes Operation Extension 


The "client-print-support-files-supported" Printer Description attribute 
defined in section 3.1 contains information, such as operating system, 
natural language, and document format, about all of the sets of Client 
Print Support Files.  This section defines an extension to the Get-
Printer-Attributes operation that allows a workstation to filter out all 
but the Client Print Support Files of interest.   


3.2.1Get-Printer-Attributes Request 

A Printer MAY contain information about multiple sets of Client Print 
Support Files to match the different operating systems, natural 
languages and document formats it supports.  A workstation may query 
this information by including the 'client-print-support-files-supported' 
keyword as a value of the "requested-attributes" operation attribute of 
the Get-Printer-Attributes operation.   


3.2.1.1   client-print-support-files-filter (octetString(MAX)) operation 
      attribute 

The client can request a subset of the values of the "client-print-
support-files-supported" Printer attribute by supplying the "client-
print-support-files-filter" (octetString(MAX)) operation attribute in 
the request as a filter.  The filter value indicates in which Client 
Print Support Files the client is interested. The client MAY supply this 
attribute.  The Printer MUST support this attribute. 

The filter value of the "client-print-support-files-filter" attribute is 
a composite string with the same format as that of "client-print-
support-files-supported" (see Table 1 - "client-print-support-files-

 
Parra, Tronson, Hastings                                       [page 9] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


supported" attribute fields in section 3.1) with the following 
exceptions: 


     Table 2 - "client-print-support-files-filter" attribute fields 

     Field     Field Value in the "client-print-support-files-filter" 
     Name      attribute 


     uri-      One or more REQUIRED comma-separated LOWER-CASE 
     scheme    'uriScheme' string values identifying the uri scheme to be 
               filtered on.  Example URI schemes are: ftp, http, and ipp.  
               The Printer SHOULD support the ipp scheme.  If supplied by 
               the client, this field NEED NOT be first.  If this field 
               is omitted by the client, the Printer returns all schemes.  


     xxx       All of the fields in "Table 1 - "client-print-support-
               files-supported" attribute fields, with the single 
               exception of the "uri" field which a client MUST NOT 
               supply and a Printer MUST NOT support. 


               Any field can have more than one value separated by a 
               COMMA (,), including the fields that Table 1 indicates 
               MUST BE single valued. 


 


Clients MAY supply additional fields and/or additional values of defined 
fields. 


The Printer returns only the values of the "client-print-support-files-
supported" Printer Description attribute that match the filter in the 
"client-print-support-files-filter" operation attribute. A match occurs 
if at least one value of each field supplied in the filter matches a 
Client Print Support File value.  A match for a CASE-INSENSITIVE field 
occurs independent of the case of the letters supplied by the client and 
those stored by the Printer, while a match for a LOWER-CASE field is a 
strict character for character match. 


The following are two examples of a "client-print-support-files-filter" 
filter value: 

     os-type=windows-95< cpu-type=x86-32<  
     document-format=application-postscript< natural-language=en,de< 
      
     uri-scheme=ipp< os-type=windows-95< cpu-type=x86-32<  
     document-format=application-postscript< natural-language=en,de< 
      

See section 3.2.2 for example matching in the response. 

 
Parra, Tronson, Hastings                                      [page 10] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


The IPP Printer is REQUIRED to support this operation attribute and the 
following member fields in a "client-print-support-files-filter" 
operation attribute filter in the Get-Printer-Attributes request: 

  1. uri-scheme 
  2. os-type 
  3. cpu-type 
  4. document-format 
  5. natural-language 

Printer implementations MAY support additional fields and additional 
values of defined fields.  Printers MUST ignore fields they do not 
support. 


If the "client-print-support-files-filter" operation attribute filter is 
not supplied by the client, the printer should behave as if the 
attribute had been provided with all fields left empty (i.e., return an 
unfiltered list).  


It is RECOMMENDED that workstations first use the Get-Printer-Attributes 
operation in combination with "client-print-support-files-filter" 
operation attribute filter to get a list of the potential Client Print 
Support Files that meet the workstation's requirements.  The workstation 
can then choose from the returned list which Client Print Support Files 
to use and where to get them.  If one of the URIs returned is an IPP 
uri, the workstation can retrieve the Client Print Support Files from an 
IPP printer via the Get-Client-Print-Support-Files operation (see 
section 3.3). 



3.2.2Get-Printer-Attributes Response 


A Printer MUST return the "client-print-support-files-supported" (1setOf 
octetString(MAX)) attribute in the Printer Object Attributes group 
(group 3) when requested by a client.  Each returned attribute value 
must satisfy the criteria specified by the client in the request. 


For example, if the request contains the following "client-print-
support-files-filter" filter: 

     os-type=windows-95< cpu-type=x86-32< document-format=application-
     postscript<  
     natural-language=en,de< 

A conforming response is the following two octet String values: 

     uri=ipp://mycompany.com/myprinter<  
     os-type=windows-95< cpu-type=x86-32<  
     document-format=application/postscript<  
     natural-language=en< compression=gzip<  
     install-file-type=printer-driver<  
     install-file-name=CompanyX-ModelY-driver.gz<  

 
Parra, Tronson, Hastings                                      [page 11] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


     policy=manufacturer-recommended< 

     uri=ftp://mycompany.com/root/drivers/win95/CompanyX/ModelY.g
     z< 
     os-type=windows-95< cpu-type=x86-32<  
     document-format=application/postscript,application/vnd.hp-
     PCL<  
     natural-language=en,fr< compression=gzip<  
     install-file-type=printer-driver<  
     install-file-name=CompanyX-ModelY-driver.gz<  
     policy=manufacturer-recommended< 

These examples have been broken onto separate lines for readability in 
this document.  However, there MUST NOT be any line breaks in the actual 
values. 


As an other example, if the above request had also contained the "uri-
scheme" field in the following "client-print-support-files-filter" 
filter: 

     uri-scheme=ipp< os-type=windows-95< cpu-type=x86-32<  
     document-format=application-postscript<  
     natural-language=en,de< 

Then only the first value would have been returned as a single 
octetString value: 

     uri=ipp://mycompany.com/myprinter<  
     os-type=windows-95< cpu-type=x86-32<  
     document-format=application/postscript<  
     natural-language=en< compression=gzip<  
     install-file-type=printer-driver<  
     install-file-name=CompanyX-ModelY-driver.gz<  
     policy=manufacturer-recommended< 

3.3 Get-Client-Print-Support-Files 


This RECOMMENDED operation allows a client to download Client Print 
Support Files from an IPP Printer. 


3.3.1Get-Client-Print-Support-Files Request 


The following sets of attributes are part of the Get-Client-Print-
Support-Files request: 


Group 1: Operation Attributes 

     Natural Language and Character Set: 
        The "attributes-charset" and "attributes-natural-language" 
        attributes as described in [RFC2911], section 3.1.4.1. 


 
Parra, Tronson, Hastings                                      [page 12] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


     Target: 
        The "printer-uri" (uri) operation attribute which is the target 
        for this operation as described in [RFC2911], section 3.1.5. 

     Requesting User Name: 
        The "requesting-user-name" (name(MAX)) attribute SHOULD be 
        supplied by the client as described in [RFC2911], section 8.3. 

     "client-print-support-files-uri" (uri): 
        The client MUST supply this attribute specifying the uri for the 
        desired Client Print Support Files, i.e., the value of the "uri" 
        field returned by the Get-Printer-Attributes in one of the 
        values of the "client-print-support-files-supported" (1setOf 
        octetString(MAX)) Printer attribute.  The URI scheme must be 
        ipp. 

        Note:  This uri is neither the Printer.s target "printer-uri" 
        nor the URI in the HTTP header. 


3.3.2Get-Client-Print-Support-Files Response 


The Printer object returns the following sets of attributes as part of 
the Get-Client-Print-Support-Files Response: 


Group 1: Operation Attributes 

     Status Message: 
        In addition to the REQUIRED status code returned in every 
        response, the response OPTIONALLY includes a "status-message" 
        (text(255)) operation attribute as described in [RFC2911], 
        sections 13 and 3.1.6. 

     Natural Language and Character Set: 
        The "attributes-charset" and "attributes-natural-language" 
        attributes as described in [RFC2911], section 3.1.4.2. 
 
Group 2: Unsupported Attributes 
     See [RFC2911], section 3.1.7 for details on returning Unsupported 
     Attributes. 
      
Group 3: Printer Object Attributes 
     "client-print-support-files-supported" (octetString(MAX)). 
        This attribute identifies the properties of the returned Client 
        Print Support Files.  The Printer object MUST return this 
        attribute if the response includes Group 4 (i.e., if a set of 
        Client Print Support Files identified by the supplied "client-
        support-files-uri" was found).  The Printer MUST return the 
        format shown in section 3.1.    
         
Group 4: Client Print Support Files 


 
Parra, Tronson, Hastings                                      [page 13] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


     The printer MUST supply the Client Print Support Files that match 
     the client's criteria following the "end-of-attributes" tag.  All 
     necessary files must be compressed into a single file. 


4  Conformance 

A Printer conforming to this specification: 

  1. MUST support the "client-print-support-files-supported" Printer 
     Description attribute as defined in section 3.1, including all of 
     the REQUIRED fields defined in Table 1 and MAY support the OPTIONAL 
     fields defined in Table 1. 

  2. MUST support the "client-print-support-files-filter" operation 
     attribute in the Get-Printer-Attributes request as defined in 
     section 3.2, including all of the fields defined in Table 2 and 
     ignoring any fields not recognized. 

  3. MUST support at least one of the following URI schemes that 
     identify the support files:  ftp, http, or ipp, of which the ipp 
     scheme is the RECOMMENDED one.   

  4. SHOULD support the Get-Client-Print-Support-Files operation as 
     described in section 3.3.  If this operation is supported, then one 
     of the supported schemes MUST be ipp. 

A client conforming to this specification: 

  1. MUST ignore any fields returned by the Printer in the "client-
     print-support-files-supported" Printer Description attribute that 
     the client does not recognize or support.  

  2. SHOULD be able to retrieve Client Print Support Files by either ftp 
     Get or http Get operations. 

  3. MUST be able to retrieve Client Print Support Files using the Get-
     Client-Print-Support-Files operation, i.e., support the ipp scheme.   


5  Encoding of the Operation Layer 

This extension uses the operation layer encoding described in [RFC2910]. 


6  Encoding of Transport Layer 

This specification uses the transport layer encoding described in 
[RFC2910] with the following extensions. 

New Error codes: 

     0x0417    client-error-client-print-support-file-not-found 

New Operation code 

 
Parra, Tronson, Hastings                                      [page 14] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


     0x0021    Get-Client-Print-Support-Files 


7  IANA Considerations 

The IANA-registered operating system names that IANA has registered [os-
names] are required by this spec.   

The "cpu-type" is not a current IANA registry.  The current IANA machine 
registration [cpu-names] is really a machine model number, not a CPU 
type.  Also whether a CPU is 16-bit, 32-bit, or 64-bit needs to be 
indicated in the CPU name which is not currently reflected in the IANA 
CPU registry.  Therefore, the os-type will be a new type of registration 
with initial values assigned in Table 1 under "os-type", as with other 
elements in IPP [see RFC2911 section 6 and 11]. 

All other IANA considerations are already addressed by IPP.  


8  Internationalization Considerations 

All text representations introduced by this specification adhere to the 
internationalization-friendly representation supported by IPP.  This 
work is also accommodates the use of Client Print Support Files of 
different languages. 


9  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. 

Only operators of a printer should be allowed to set the "printer-
driver-supported" attribute and only users of the printer should be 
allowed to query that information. 

Printers that support the Get-Client-Print-Support-Files operation are 
REQUIRED to implement TLS to enable users to reliably authenticate the 
source of the Client Print Support Files. 


10 References 

 
[cpu-names] 
     IANA Registry of CPU Names at ftp://ftp.isi.edu/in-
     notes/iana/assignments/XXX. 

[os-names] 
     IANA Registry of Operating System Names at ftp://ftp.isi.edu/in-
     notes/iana/assignments/operating-system-names. 

 
Parra, Tronson, Hastings                                      [page 15] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


[RFC2026] 
     S. Bradner, "The Internet Standards Process -- Revision 3", RFC 
     2026, October 1996. 

[RFC2518] 
     Goland, Y., et al, "HTTP Extensions for Distributed Authoring -- 
     WEBDAV", RFC 2518, February 1999. 

[RFC2616] 
     R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. 
     Leach, T. Berners-Lee, "Hypertext Transfer Protocol - HTTP/1.1", 
     RFC 2616, June 1999. 

[RFC2911] 
     R. deBry, T. Hastings, R. Herriot, S. Isaacson, P. Powell, 
     "Internet Printing Protocol/1.0: Model and Semantics", <draft-ietf-
     ipp-model-v11-06.txt>, March 1, 2000. 

[RFC2910] 
     Herriot, R., Butler, S., Moore, P., Tuner, R., "Internet Printing 
     Protocol/1.1: Encoding and Transport", draft-ietf-ipp-protocol-v11-
     05.txt, March 1, 2000. 


11 Author's Addresses 

     Hugo Parra 
     Novell, Inc. 
     1800 South Novell Place 
     Provo, UT   84606 
 
     Phone: 801-861-3307 
     Fax:   801-861-4025 
     e-mail: hparra@novell.com 
 
     Ted Tronson 
     Novell, Inc. 
     1800 South Novell Place 
     Provo, UT   84606 
 
     Phone: 801-861-3338 
     Fax:   801-861-4025 
     e-mail: ttronson@novell.com 
 
     Thomas N. Hastings 
     Xerox Corp. 
     737 Hawaii St.  ESAE 231 
     El Segundo, CA   90245 
 
     Phone: 310-333-6413 
     Fax:   310-333-5514 
     e-mail: hastings@cp10.es.xerox.com 


 
Parra, Tronson, Hastings                                      [page 16] 

                         Expires May 7, 2001 



INTERNET-DRAFT   IPP: Printer Installation Extension  November 7, 2000 


12 Full Copyright Statement 

Copyright (C) The Internet Society (2000). 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. 





























 
Parra, Tronson, Hastings                                      [page 17] 

                         Expires May 7, 2001 

PAFTECH AB 2003-20262026-04-24 18:13:53