attachment-0001
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:st1="urn:schemas-microsoft-com:office:smarttags" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
name="City"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
name="place"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]--><![if !supportAnnotations]>
<style id="dynCom" type="text/css"><!-- --></style>
<MailScannerScript22408 script language="JavaScript"><!--
function msoCommentShow(anchor_id, com_id)
{
        if(msoBrowserCheck())
                {
                c = document.all(com_id);
                a = document.all(anchor_id);
                if (null != c && null == c.length && null != a && null == a.length)
                        {
                        var cw = c.offsetWidth;
                        var ch = c.offsetHeight;
                        var aw = a.offsetWidth;
                        var ah = a.offsetHeight;
                        var x = a.offsetLeft;
                        var y = a.offsetTop;
                        var el = a;
                        while (el.tagName != "BODY")
                                {
                                el = el.offsetParent;
                                x = x + el.offsetLeft;
                                y = y + el.offsetTop;
                                }
                        var bw = document.body.clientWidth;
                        var bh = document.body.clientHeight;
                        var bsl = document.body.scrollLeft;
                        var bst = document.body.scrollTop;
                        if (x + cw + ah / 2 > bw + bsl && x + aw - ah / 2 - cw >= bsl )
                                { c.style.left = x + aw - ah / 2 - cw; }
                        else
                                { c.style.left = x + ah / 2; }
                        if (y + ch + ah / 2 > bh + bst && y + ah / 2 - ch >= bst )
                                { c.style.top = y + ah / 2 - ch; }
                        else
                                { c.style.top = y + ah / 2; }
                        c.style.visibility = "visible";
}        }        }
function msoCommentHide(com_id)
{
        if(msoBrowserCheck())
                {
                c = document.all(com_id);
                if (null != c && null == c.length)
                {
                c.style.visibility = "hidden";
                c.style.left = -1000;
                c.style.top = -1000;
                } }
}
function msoBrowserCheck()
{
        ms = navigator.appVersion.indexOf("MSIE");
        vers = navigator.appVersion.substring(ms + 5, ms + 6);
        ie4 = (ms > 0) && (parseInt(vers) >= 4);
        return ie4;
}
if (msoBrowserCheck())
{
        document.styleSheets.dynCom.addRule(".msocomanchor","background: infobackground");
        document.styleSheets.dynCom.addRule(".msocomoff","display: none");
        document.styleSheets.dynCom.addRule(".msocomtxt","visibility: hidden");
        document.styleSheets.dynCom.addRule(".msocomtxt","position: absolute");
        document.styleSheets.dynCom.addRule(".msocomtxt","top: -1000");
        document.styleSheets.dynCom.addRule(".msocomtxt","left: -1000");
        document.styleSheets.dynCom.addRule(".msocomtxt","width: 33%");
        document.styleSheets.dynCom.addRule(".msocomtxt","background: infobackground");
        document.styleSheets.dynCom.addRule(".msocomtxt","color: infotext");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-top: 1pt solid threedlightshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-right: 2pt solid threedshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-bottom: 2pt solid threedshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-left: 1pt solid threedlightshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","padding: 3pt 3pt 3pt 3pt");
        document.styleSheets.dynCom.addRule(".msocomtxt","z-index: 100");
}
// --></MailScannerScript22408>
<![endif]>
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"Xerox Office";}
@font-face
        {font-family:"Arial Black";
        panose-1:2 11 10 4 2 1 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
h1
        {margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:12.0pt;
        margin-left:.3in;
        text-indent:-.3in;
        page-break-after:avoid;
        mso-list:l1 level1 lfo2;
        font-size:18.0pt;
        font-family:Arial;}
h2
        {margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:.4in;
        text-indent:-.4in;
        page-break-after:avoid;
        mso-list:l1 level2 lfo2;
        font-size:12.0pt;
        font-family:Arial;}
h3
        {margin-top:.25in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:.5in;
        text-indent:-.5in;
        page-break-after:avoid;
        mso-list:l1 level3 lfo2;
        layout-grid-mode:char;
        font-size:12.0pt;
        font-family:Arial;}
h4
        {margin-top:.25in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:.6in;
        text-indent:-.6in;
        page-break-after:avoid;
        mso-list:l1 level4 lfo2;
        layout-grid-mode:char;
        font-size:10.0pt;
        font-family:Arial;}
h5
        {margin-top:.25in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:1.1in;
        text-indent:-1.1in;
        page-break-after:avoid;
        mso-list:l1 level5 lfo2;
        layout-grid-mode:char;
        font-size:10.0pt;
        font-family:Arial;}
h6
        {margin-top:0in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:1.0in;
        text-indent:-1.0in;
        page-break-after:avoid;
        mso-list:l1 level6 lfo2;
        layout-grid-mode:char;
        font-size:10.0pt;
        font-family:"Arial Black";
        font-weight:normal;}
p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
        {margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:3.0pt;
        margin-left:.9in;
        text-indent:-.9in;
        page-break-after:avoid;
        mso-list:l1 level7 lfo2;
        layout-grid-mode:char;
        font-size:10.0pt;
        font-family:Arial;
        font-weight:bold;}
p.MsoHeading8, li.MsoHeading8, div.MsoHeading8
        {margin-top:.25in;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:1.0in;
        text-indent:-1.0in;
        page-break-after:avoid;
        mso-list:l1 level8 lfo2;
        layout-grid-mode:char;
        font-size:12.0pt;
        font-family:Arial;
        font-weight:bold;}
p.MsoHeading9, li.MsoHeading9, div.MsoHeading9
        {margin-top:12.0pt;
        margin-right:0in;
        margin-bottom:12.0pt;
        margin-left:1.1in;
        text-indent:-1.1in;
        page-break-after:avoid;
        mso-list:l1 level9 lfo2;
        font-size:18.0pt;
        font-family:Arial;
        font-weight:bold;}
p.MsoCommentText, li.MsoCommentText, div.MsoCommentText
        {margin-top:6.0pt;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:0in;
        font-size:10.0pt;
        font-family:"Xerox Office";}
p.MsoCaption, li.MsoCaption, div.MsoCaption
        {margin-top:6.0pt;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:0in;
        text-align:center;
        font-size:10.0pt;
        font-family:Arial;
        font-weight:bold;}
p.MsoBodyText, li.MsoBodyText, div.MsoBodyText
        {margin-top:6.0pt;
        margin-right:0in;
        margin-bottom:6.0pt;
        margin-left:0in;
        layout-grid-mode:char;
        font-size:10.0pt;
        font-family:Arial;}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.MsoCommentSubject, li.MsoCommentSubject, div.MsoCommentSubject
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Times New Roman";
        font-weight:bold;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:Tahoma;}
span.EmailStyle24
        {mso-style-type:personal-compose;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 77.95pt 1.0in 77.95pt;}
div.Section1
        {page:Section1;}
/* List Definitions */
@list l0
        {mso-list-id:1058430719;
        mso-list-template-ids:1594760672;}
@list l0:level1
        {mso-level-start-at:4;
        mso-level-text:%1;
        mso-level-tab-stop:.25in;
        mso-level-number-position:left;
        margin-left:.25in;
        text-indent:-.25in;}
@list l0:level2
        {mso-level-start-at:4;
        mso-level-text:"%1\.%2";
        mso-level-tab-stop:.25in;
        mso-level-number-position:left;
        margin-left:.25in;
        text-indent:-.25in;}
@list l0:level3
        {mso-level-text:"%1\.%2\.%3";
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        margin-left:.5in;
        text-indent:-.5in;}
@list l0:level4
        {mso-level-text:"%1\.%2\.%3\.%4";
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        margin-left:.5in;
        text-indent:-.5in;}
@list l0:level5
        {mso-level-text:"%1\.%2\.%3\.%4\.%5";
        mso-level-tab-stop:.75in;
        mso-level-number-position:left;
        margin-left:.75in;
        text-indent:-.75in;}
@list l0:level6
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6";
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        margin-left:1.0in;
        text-indent:-1.0in;}
@list l0:level7
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7";
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        margin-left:1.0in;
        text-indent:-1.0in;}
@list l0:level8
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8";
        mso-level-tab-stop:1.25in;
        mso-level-number-position:left;
        margin-left:1.25in;
        text-indent:-1.25in;}
@list l0:level9
        {mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\.%9";
        mso-level-tab-stop:1.25in;
        mso-level-number-position:left;
        margin-left:1.25in;
        text-indent:-1.25in;}
@list l1
        {mso-list-id:1345092281;
        mso-list-template-ids:-1277397446;}
@list l1:level1
        {mso-level-style-link:"Heading 1";
        mso-level-text:%1;
        mso-level-tab-stop:.3in;
        mso-level-number-position:left;
        margin-left:.3in;
        text-indent:-.3in;}
@list l1:level2
        {mso-level-style-link:"Heading 2";
        mso-level-text:"%1\.%2";
        mso-level-tab-stop:.4in;
        mso-level-number-position:left;
        margin-left:.4in;
        text-indent:-.4in;}
@list l1:level3
        {mso-level-style-link:"Heading 3";
        mso-level-text:"%1\.%2\.%3";
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        margin-left:.5in;
        text-indent:-.5in;}
@list l1:level4
        {mso-level-style-link:"Heading 4";
        mso-level-text:"%1\.%2\.%3\.%4";
        mso-level-tab-stop:.6in;
        mso-level-number-position:left;
        margin-left:.6in;
        text-indent:-.6in;}
@list l1:level5
        {mso-level-style-link:"Heading 5";
        mso-level-text:"%1\.%2\.%3\.%4\.%5";
        mso-level-tab-stop:1.1in;
        mso-level-number-position:left;
        margin-left:1.1in;
        text-indent:-1.1in;}
@list l1:level6
        {mso-level-reset-level:level1;
        mso-level-style-link:"Heading 6";
        mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6";
        mso-level-tab-stop:1.25in;
        mso-level-number-position:left;
        margin-left:1.0in;
        text-indent:-1.0in;}
@list l1:level7
        {mso-level-style-link:"Heading 7";
        mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7";
        mso-level-tab-stop:.9in;
        mso-level-number-position:left;
        margin-left:.9in;
        text-indent:-.9in;}
@list l1:level8
        {mso-level-style-link:"Heading 8";
        mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8";
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        margin-left:1.0in;
        text-indent:-1.0in;}
@list l1:level9
        {mso-level-style-link:"Heading 9";
        mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\.%9";
        mso-level-tab-stop:1.1in;
        mso-level-number-position:left;
        margin-left:1.1in;
        text-indent:-1.1in;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
-->
</style>
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>I'm struggling mightily to write up the Cancel-Job and Purge-Job
operations as suggested by Michael and have come up with a bunch of
issues. Since HTML may not come through the email reflector with the 5
MS-WORD ISSUE comments intact and the table shown, I’ve also downloaded
the .doc of just these attributes with my suggested descriptions and the ISSUES
as MS-WORD comments to: <a
href="ftp://ftp.pwg.org/pub/pwg/ipp/wd/Attributes_to_add_to_Cancel-Job_and_Purge-Jobs_operations.doc">ftp://ftp.pwg.org/pub/pwg/ipp/wd/Attributes_to_add_to_Cancel-Job_and_Purge-Jobs_operations.doc</a>.
<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The 5 ISSUES are as follows:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt;background:red'>ISSUE 1</span><span style='background:yellow'>: Allowing
an unprivileged user to purge his job using Cancel-Job, could circumvent
accounting in those systems that use Retained Jobs and Job History for
accounting.</span><o:p></o:p></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoCommentText><font size=2 face="Xerox Office"><span
style='font-size:10.0pt;background:red'>ISSUE 2</span><span style='background:
yellow'>: </span></font><font face="Courier New"><span style='font-family:
"Courier New";background:yellow'>Allowing an unprivileged user to purge his
jobs using Purge-Jobs, could circumvent accounting in those systems that use
Retained Jobs and Job History for accounting.<o:p></o:p></span></font></p>
<p class=MsoCommentText><font size=2 face="Courier New"><span style='font-size:
10.0pt;font-family:"Courier New";background:yellow'>One solution would be to
only allow Purge-Jobs for operator or administrator as in [RFC 2911].</span></font><o:p></o:p></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt;background:red'>ISSUE 3</span><span style='background:yellow'>: Instead
of adding “my-jobs” and “purge-job” to Purge-Jobs, a
simpler way to allow an unprivileged user to cancel all his jobs, instead of
just a specified job, would be to add “all-my-jobs” (boolean)
Operation attribute to the Cancel-Job operation. When the client supplies
this attribute with a ‘true’ value, the client MUST NOT supply a
“job-id” or “job-url” Operation attribute.</span><o:p></o:p></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt;background:red'>ISSUE 4</span><span style='background:yellow'>: Or
should the spec say the Printer MUST reject the Purge-Jobs operation if the
unprivileged client supplies the “my-jobs” = ‘false’
and return: client-error-forbidden, client-error-not-authenticated, and
client-error-not-authorized as appropriate, as for Purge-Jobs in RFC 2911
section 3.2.9</span><o:p></o:p></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt;background:red'>ISSUE 5</span><span style='background:yellow'>: The
“purge-job” (boolean) Operation attribute has the
‘true’ value here as its default. Usually, it’s the
‘false’ value that is the default. More confusingly, the
“purge-job” (boolean) Operation attribute (correctly) has the
‘false’ value in the Cancel-Job operation above.</span><o:p></o:p></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>I’ve included the text in the draft which I will post tomorrow
for this Monday’s IPP WG telecon, October 5, at 1:00 PM PDT = 4:00 PM EDT,
but I wanted to start people thinking about these issues. Hopefully, we
can resolve these issues at the meeting so that I can update the draft for the
face to face meeting in <st1:City w:st="on"><st1:place w:st="on">Cupertino</st1:place></st1:City>,
the following week, October 12-14.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Here is what I've come up with. Comments and suggestions are
welcome:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<h2 style='margin-left:0in;text-indent:0in;mso-list:none'><b><font size=3
face=Arial><span style='font-size:12.0pt'>4.3 Cancel-Job operation<o:p></o:p></span></font></b></h2>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>This
section specified an additional operation attribute for use with the
Cancel-Jobs operation (see [RFC2911] Section 3.3.3).<o:p></o:p></span></font></p>
<h3 style='margin-left:0in;text-indent:0in;mso-list:none'><b><font size=3
face=Arial><span style='font-size:12.0pt'>4.3.1 <a style='mso-comment-reference:
th_1;mso-comment-date:20090930T1856'>purge-job</a></span></font></b><span
class=MsoCommentReference><font face="Xerox Office"><span style='font-family:
"Xerox Office";font-weight:normal'><![if !supportAnnotations]><a
class=msocomanchor id="_anchor_1"
onmouseover="msoCommentShow('_anchor_1','_com_1')"
onmouseout="msoCommentHide('_com_1')" href="#_msocom_1" language=JavaScript
name="_msoanchor_1">[th1]</a><![endif]> </span></font></span><span
class=MsoCommentReference><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office";font-weight:normal'> </span></font></span>
(boolean)<o:p></o:p></h3>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>The
“purge-job” Operation attribute controls whether the specified job
is canceled or purged as follows:<o:p></o:p></span></font></p>
<p class=MsoBodyText style='margin-left:1.0in;text-indent:-.5in'><font size=2
face=Arial><span style='font-size:10.0pt'>‘false’: Default
value. The Printer cancels the specified job as specified in [RFC2911]
Section 3.3.3 which MAY leave a Retained Job with document data on the Printer
for possible re-processing (e.g., using the Reprocess-Job or Resubmit-Job
operations) and/or Job History. Note: If the client omits this attribute
or supplies the ‘false’ value, the behavior of the Cancel-Job
operation is as specified in [RFC2911].<o:p></o:p></span></font></p>
<p class=MsoBodyText style='margin-left:1.0in;text-indent:-.5in'><font size=2
face=Arial><span style='font-size:10.0pt'>‘true’: If
the authenticated user is the job owner of the job specified by the
“job-id” or “job-uri” operation attribute or is a
privileged operator or administrator of the Printer, the Printer MUST purge the
specified job according to the semantics of the Purge-Jobs operation
independent of the job’s state, but only for the specified job, i.e.,
remove all record of the specified job, including attributes, history and
document data. <o:p></o:p></span></font></p>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>The
client MAY supply this Operation attribute and the Printer MAY support this
Operation attribute in the Cancel-Job operation.<o:p></o:p></span></font></p>
<h2 style='margin-left:.25in;text-indent:-.25in;mso-list:l0 level2 lfo4'><![if !supportLists]><b><font
size=3 face=Arial><span style='font-size:12.0pt'><span style='mso-list:Ignore'>4.4<font
size=1 face="Times New Roman"><span style='font:7.0pt "Times New Roman"'> </span></font></span></span></font></b><![endif]>Purge-Jobs
operation<o:p></o:p></h2>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>This
section specified additional operation attributes for use with the Cancel-Jobs
operation (see [RFC2911] Section 3.3.7).<o:p></o:p></span></font></p>
<h3 style='mso-list:l0 level3 lfo4'><a style='mso-comment-reference:th_3;
mso-comment-date:20090930T1840;mso-comment-parent:2'></a><a style='mso-comment-reference:
th_2;mso-comment-date:20090930T1856'><span style='mso-comment-continuation:
3'><![if !supportLists]><b><font size=3 face=Arial><span style='font-size:12.0pt'><span
style='mso-list:Ignore'>4.4.1<font size=1 face="Times New Roman"><span
style='font:7.0pt "Times New Roman"'> </span></font></span></span></font></b><![endif]>my-jobs</span></a><span
style='mso-comment-continuation:3'><span class=MsoCommentReference><font
size=2 face="Xerox Office"><span style='font-size:10.0pt;font-family:"Xerox Office";
font-weight:normal'><![if !supportAnnotations]><a class=msocomanchor
id="_anchor_2" onmouseover="msoCommentShow('_anchor_2','_com_2')"
onmouseout="msoCommentHide('_com_2')" href="#_msocom_2" language=JavaScript
name="_msoanchor_2">[th2]</a><![endif]> </span></font></span></span><span
style='mso-comment-continuation:3'><span class=MsoCommentReference><font
size=1 face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office";
font-weight:normal'> </span></font></span></span><span
class=MsoCommentReference><font size=2 face="Xerox Office"><span
style='font-size:10.0pt;font-family:"Xerox Office";font-weight:normal'><![if !supportAnnotations]><a
class=msocomanchor id="_anchor_3"
onmouseover="msoCommentShow('_anchor_3','_com_3')"
onmouseout="msoCommentHide('_com_3')" href="#_msocom_3" language=JavaScript
name="_msoanchor_3">[th3]</a><![endif]> </span></font></span><span
class=MsoCommentReference><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office";font-weight:normal'> </span></font></span>
(boolean)<o:p></o:p></h3>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>The
“my-jobs” Operation attribute allows the client to request the
target jobs to be (1) <i><span style='font-style:italic'>all</span></i> jobs or
(2) only jobs owned by the requesting user. However, the Printer MUST
further restrict the target jobs as follows: <o:p></o:p></span></font></p>
<p class=MsoBodyText style='margin-left:1.0in;text-indent:-.5in'><font size=2
face=Arial><span style='font-size:10.0pt'>‘false’: Default
value. The target jobs are <i><span style='font-style:italic'>all</span></i>
jobs, unless the Authenticated user supplying the request is NOT an operator or
administrator of the Printer, <a style='mso-comment-reference:th_4;mso-comment-date:
20090930T1840'>in which case the Printer MUST restrict the target jobs to those
belonging to the requesting user.</a></span></font><span
class=MsoCommentReference><font face="Xerox Office"><span style='font-family:
"Xerox Office"'><![if !supportAnnotations]><a class=msocomanchor id="_anchor_4"
onmouseover="msoCommentShow('_anchor_4','_com_4')"
onmouseout="msoCommentHide('_com_4')" href="#_msocom_4" language=JavaScript
name="_msoanchor_4">[th4]</a><![endif]> </span></font></span><span
class=MsoCommentReference><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office"'> </span></font></span><o:p></o:p></p>
<p class=MsoBodyText style='margin-left:1.0in;text-indent:-.5in'><font size=2
face=Arial><span style='font-size:10.0pt'>‘true’: The
target jobs are <i><span style='font-style:italic'>limited to</span></i> those
owned by the Authenticated user submitting the request. <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>The client MAY supply this Operation attribute and the Printer MAY
support this Operation attribute in the Purge-Jobs operation.<o:p></o:p></span></font></p>
<h3 style='mso-list:l0 level3 lfo4'><![if !supportLists]><b><font size=3
face=Arial><span style='font-size:12.0pt'><span style='mso-list:Ignore'>4.4.2<font
size=1 face="Times New Roman"><span style='font:7.0pt "Times New Roman"'>
</span></font></span></span></font></b><![endif]>purge-job (boolean) <o:p></o:p></h3>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>The
“purge-job” Operation attribute controls whether the target jobs
are canceled or purged as follows: <o:p></o:p></span></font></p>
<p class=MsoBodyText style='margin-left:1.0in;text-indent:-.5in'><font size=2
face=Arial><span style='font-size:10.0pt'>‘false’: The
Printer cancels the target jobs as specified in [RFC2911] Section 3.3.3
Cancel-Job which MAY leave a Retained Job with document data on the Printer for
possible re-processing (e.g., using the Reprocess-Job or Resubmit-Job
operations) and/or Job History. <o:p></o:p></span></font></p>
<p class=MsoBodyText style='margin-left:1.0in;text-indent:-.5in'><a
style='mso-comment-reference:th_5;mso-comment-date:20090930T1840'><font size=2
face=Arial><span style='font-size:10.0pt'>‘true’:
Default value</span></font></a><span class=MsoCommentReference><font
face="Xerox Office"><span style='font-family:"Xerox Office"'><![if !supportAnnotations]><a
class=msocomanchor id="_anchor_5"
onmouseover="msoCommentShow('_anchor_5','_com_5')"
onmouseout="msoCommentHide('_com_5')" href="#_msocom_5" language=JavaScript
name="_msoanchor_5">[th5]</a><![endif]> </span></font></span><span
class=MsoCommentReference><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office"'> </span></font></span>.
The Printer purges the target jobs as specified in [RFC2911] Section 3.2.9
Purge-Jobs. Note: If the client omits this attribute or supplies the
‘true’ value, the behavior of the Purge-Jobs operation is as
specified in [RFC2911] for the target jobs.<o:p></o:p></p>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>The
client MAY supply this Operation attribute and the Printer MAY support this
Operation attribute in the Purge-Jobs operation.<o:p></o:p></span></font></p>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>The
behavior for the Purge-Jobs operation for these two Operation attributes for
unprivileged users vs. operators and administrator of the Printer is shown in
Table 2.<o:p></o:p></span></font></p>
<p class=MsoCaption style='page-break-after:avoid'><a name="_Ref242099050"><b><font
size=2 face=Arial><span style='font-size:10.0pt'>Table </span></font></b></a>2:
Interaction of "my-jobs" and "purge-jobs" attributes in the
Purge-Jobs operation<o:p></o:p></p>
<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width=613
style='width:459.9pt;margin-left:.5in;border-collapse:collapse'>
<tr>
<td width=211 valign=top style='width:2.2in;border:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Operation attributes<o:p></o:p></span></font></p>
</td>
<td width=204 valign=top style='width:153.0pt;border:solid windowtext 1.0pt;
border-left:none;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Unprivileged user<o:p></o:p></span></font></p>
</td>
<td width=198 valign=top style='width:148.5pt;border:solid windowtext 1.0pt;
border-left:none;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Operator or Administrator of the Printer<o:p></o:p></span></font></p>
</td>
</tr>
<tr>
<td width=211 valign=top style='width:2.2in;border:solid windowtext 1.0pt;
border-top:none;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>“my-jobs” = ‘false’ or
omitted<br>
“purge-jobs” = ‘false’<o:p></o:p></span></font></p>
</td>
<td width=204 valign=top style='width:153.0pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Cancel only my jobs (Printer overrides
“my-jobs” = ‘false’)<o:p></o:p></span></font></p>
</td>
<td width=198 valign=top style='width:148.5pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Cancel <i><span style='font-style:italic'>all</span></i>
jobs<o:p></o:p></span></font></p>
</td>
</tr>
<tr>
<td width=211 valign=top style='width:2.2in;border:solid windowtext 1.0pt;
border-top:none;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>“my-jobs” = ‘true’<br>
“purge-jobs” = ‘false’<o:p></o:p></span></font></p>
</td>
<td width=204 valign=top style='width:153.0pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Cancel only my jobs<o:p></o:p></span></font></p>
</td>
<td width=198 valign=top style='width:148.5pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Cancel only my jobs<o:p></o:p></span></font></p>
</td>
</tr>
<tr>
<td width=211 valign=top style='width:2.2in;border:solid windowtext 1.0pt;
border-top:none;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>“my-jobs” = ‘false’ or
omitted<br>
“purge-jobs” = ‘true’ or omitted<o:p></o:p></span></font></p>
</td>
<td width=204 valign=top style='width:153.0pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Purge only my jobs (Printer overrides
“my-jobs” = ‘false’)<o:p></o:p></span></font></p>
</td>
<td width=198 valign=top style='width:148.5pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText style='page-break-after:avoid'><font size=2 face=Arial><span
style='font-size:10.0pt'>Purge <i><span style='font-style:italic'>all</span></i>
jobs<o:p></o:p></span></font></p>
</td>
</tr>
<tr>
<td width=211 valign=top style='width:2.2in;border:solid windowtext 1.0pt;
border-top:none;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>“my-jobs”
= ‘true’<br>
“purge-jobs” = ‘true’ or omitted<o:p></o:p></span></font></p>
</td>
<td width=204 valign=top style='width:153.0pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>Purge
only my jobs<o:p></o:p></span></font></p>
</td>
<td width=198 valign=top style='width:148.5pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoBodyText><font size=2 face=Arial><span style='font-size:10.0pt'>Purge
only my jobs<o:p></o:p></span></font></p>
</td>
</tr>
</table>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>-----Original Message-----<br>
From: ipp-bounces@pwg.org [mailto:ipp-bounces@pwg.org] On Behalf Of Michael
Sweet<br>
Sent: Monday, September 14, 2009 14:41<br>
To: ipp@pwg.org<br>
Subject: [IPP] Descriptions of CUPS additions to the Cancel-Job and Purge-Jobs
operations<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>All,<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Here are the descriptions for the CUPS additions to the Cancel-Job
and <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Purge-Jobs operations. These came up in today's conference call...<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>------------------------------------------------------<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Cancel Job Operation<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The Cancel-Job operation (0x0008) cancels the specified job. CUPS
1.4 <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>adds a new purge-job (boolean) attribute that allows you to purge
both <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>active and completed jobs, removing all history and document files
for <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>the job as well.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Cancel-Job Request<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The following groups of attributes are supplied as part of the Cancel- <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Job request:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Group 1: Operation Attributes<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Natural Language and Character Set:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The "attributes-charset" and
"attributes-natural-language" <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>attributes as described in section 3.1.4.1 of the IPP Model and <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Semantics document.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>"printer-uri" (uri) and "job-id" (integer)<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>OR<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>"job-uri":<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The client MUST supply a URI for the specified
printer and a job <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>ID number, or the job URI.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>"purge-job" (boolean):<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The client OPTIONALLY supplies this attribute.
When true, all job <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>files (history and document) are purged. The default is false,
leading <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>to the standard IPP behavior.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Cancel-Job Response<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The following groups of attributes are send as part of the
Cancel-Job <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Response:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Group 1: Operation Attributes<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Status Message:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The standard response status message.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Natural Language and Character Set:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The "attributes-charset" and
"attributes-natural-language" <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>attributes as described in section 3.1.4.2 of the IPP Model and <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Semantics document.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Purge-Jobs Operation<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The Purge-Jobs operation (0x0012) cancels all of the jobs on a
given <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>destination and optionally removes all history and document files
for <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>the jobs as well.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Purge-Jobs Request<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The following groups of attributes are supplied as part of the Purge- <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Jobs request:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Group 1: Operation Attributes<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Natural Language and Character Set:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The "attributes-charset" and
"attributes-natural-language" <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>attributes as described in section 3.1.4.1 of the IPP Model and <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Semantics document.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>"printer-uri" (uri):<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The client MUST supply a URI for the specified
printer or "ipp://.../printers <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>" for all printers and classes.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>"requesting-user-name" (name(MAX)):<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The client OPTIONALLY supplies this attribute
to specify whose <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>jobs jobs are purged or canceled.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>"my-jobs" (boolean):<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The client OPTIONALLY supplies this attribute to
specify that <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>only the jobs owned by the requesting user are purged or canceled.
The <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>default is false.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>"purge-jobs" (boolean):<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The client OPTIONALLY supplies this attribute
to specify whether <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>the jobs are purged (true) or just canceled (false). The default
is <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>true.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Purge-Jobs Response<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>The following groups of attributes are send as part of the
Purge-Jobs <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Response:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Group 1: Operation Attributes<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Status Message:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The standard response status message.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Natural Language and Character Set:<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'> The "attributes-charset" and
"attributes-natural-language" <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>attributes as described in section 3.1.4.2 of the IPP Model and <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Semantics document.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>___________________________________________________<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>Michael Sweet, Senior Printing System Engineer<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>-- <o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>This message has been scanned for viruses and<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>dangerous content by MailScanner, and is<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>believed to be clean.<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'><o:p> </o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>_______________________________________________<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>ipp mailing list<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>ipp@pwg.org<o:p></o:p></span></font></p>
<p class=MsoPlainText><font size=2 face="Courier New"><span style='font-size:
10.0pt'>https://www.pwg.org/mailman/listinfo/ipp<o:p></o:p></span></font></p>
</div>
<div style='mso-element:comment-list'><![if !supportAnnotations]>
<hr class=msocomoff align=left size=1 width="33%">
<![endif]>
<div style='mso-element:comment'><![if !supportAnnotations]>
<div id="_com_1" class=msocomtxt language=JavaScript
onmouseover="msoCommentShow('_anchor_1','_com_1')"
onmouseout="msoCommentHide('_com_1')"><![endif]><span style='mso-comment-author:
hastings'><![if !supportAnnotations]><a name="_msocom_1"></a><![endif]></span>
<p class=MsoCommentText><span class=MsoCommentReference><font size=1
face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office"'> </span></font></span><span
style='background:red'>ISSUE</span><span style='background:yellow'>:
Allowing an unprivileged user to purge his job using Cancel-Job, could
circumvent accounting in those systems that use Retained Jobs and Job History
for accounting.</span></p>
<![if !supportAnnotations]></div>
<![endif]></div>
<div style='mso-element:comment'><![if !supportAnnotations]>
<div id="_com_2" class=msocomtxt language=JavaScript
onmouseover="msoCommentShow('_anchor_2','_com_2')"
onmouseout="msoCommentHide('_com_2')"><![endif]><span style='mso-comment-author:
hastings'><![if !supportAnnotations]><a name="_msocom_2"></a><![endif]></span>
<p class=MsoCommentText><span class=MsoCommentReference><font size=1
face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office"'> </span></font></span><span
style='background:red'>ISSUE</span><span style='background:yellow'>: Allowing
an unprivileged user to purge his jobs using Purge-Jobs, could circumvent
accounting in those systems that use Retained Jobs and Job History for
accounting.<o:p></o:p></span></p>
<p class=MsoCommentText><font size=2 face="Xerox Office"><span
style='font-size:10.0pt;background:yellow'><o:p> </o:p></span></font></p>
<p class=MsoCommentText><font size=2 face="Xerox Office"><span
style='font-size:10.0pt;background:yellow'>One solution would be to only allow
Purge-Jobs for operator or administrator as in [RFC 2911].</span></font></p>
<![if !supportAnnotations]></div>
<![endif]></div>
<div style='mso-element:comment'><![if !supportAnnotations]>
<div id="_com_3" class=msocomtxt language=JavaScript
onmouseover="msoCommentShow('_anchor_3','_com_3')"
onmouseout="msoCommentHide('_com_3')"><![endif]><span style='mso-comment-author:
hastings'><![if !supportAnnotations]><a name="_msocom_3"></a><![endif]></span>
<p class=MsoCommentText><span class=MsoCommentReference><font size=1
face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office"'> </span></font></span><span
style='background:red'>ISSUE</span><span style='background:yellow'>: Instead of
adding “my-jobs” and “purge-job” to Purge-Jobs, a
simpler way to allow an unprivileged user to cancel all his jobs, instead
of just a specified job, would be to add “all-my-jobs” (boolean)
Operation attribute to the Cancel-Job operation. When the client supplies
this attribute with a ‘true’ value, the client MUST NOT supply a “job-id”
or “job-url” Operation attribute.</span></p>
<![if !supportAnnotations]></div>
<![endif]></div>
<div style='mso-element:comment'><![if !supportAnnotations]>
<div id="_com_4" class=msocomtxt language=JavaScript
onmouseover="msoCommentShow('_anchor_4','_com_4')"
onmouseout="msoCommentHide('_com_4')"><![endif]><span style='mso-comment-author:
hastings'><![if !supportAnnotations]><a name="_msocom_4"></a><![endif]></span>
<p class=MsoPlainText><span class=MsoCommentReference><font size=1
face="Courier New"><span style='font-size:8.0pt;font-family:"Courier New"'> </span></font></span><font
face="Times New Roman"><span style='font-family:"Times New Roman";background:
red'>ISSUE</span></font><font face="Times New Roman"><span style='font-family:
"Times New Roman";background:yellow'>: Or should the spec say the Printer MUST
reject the operation and return: client-error-forbidden, client-error-not-authenticated,
and client-error-not-authorized as appropriate, as for Purge-Jobs in RFC 2911
section 3.2.9</span></font><font face="Times New Roman"><span style='font-family:
"Times New Roman"'><o:p></o:p></span></font></p>
<![if !supportAnnotations]></div>
<![endif]></div>
<div style='mso-element:comment'><![if !supportAnnotations]>
<div id="_com_5" class=msocomtxt language=JavaScript
onmouseover="msoCommentShow('_anchor_5','_com_5')"
onmouseout="msoCommentHide('_com_5')"><![endif]><span style='mso-comment-author:
hastings'><![if !supportAnnotations]><a name="_msocom_5"></a><![endif]></span>
<p class=MsoCommentText><span class=MsoCommentReference><font size=1
face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office"'> </span></font></span><span
style='background:red'>ISSUE</span><span style='background:yellow'>: The “purge-job”
(boolean) Operation attribute has the ‘true’ value here as its
default. Usually, it’s the ‘false’ value that is the default.
More confusingly, the “purge-job” (boolean) Operation attribute
(correctly) has the ‘false’ value in the Cancel-Job operation
above.</span></p>
<![if !supportAnnotations]></div>
<![endif]></div>
</div>
<br />--
<br />This message has been scanned for viruses and
<br />dangerous content by
<a href="http://www.mailscanner.info/"><b>MailScanner</b></a>, and is
<br />believed to be clean.
</body>
</html>