attachment-0001

<html xmlns:v="urn:schemas-microsoft-com:vml" 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)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><o:SmartTagType
 namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="place"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="address"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="PostalCode"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="State"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="City"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="Street"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![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:Monaco;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
h2
        {mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:18.0pt;
        font-family:"Times New Roman";
        font-weight:bold;}
h3
        {mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:13.5pt;
        font-family:"Times New Roman";
        font-weight:bold;}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:blue;
        text-decoration:underline;}
p
        {mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman";}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;
        font-weight:normal;
        font-style:normal;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=blue style='word-wrap: break-word;-webkit-nbsp-mode: space;
-webkit-line-break: after-white-space'>

<div class=Section1>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Good discussion.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>If Michael is willing to update CUPS (to
support the old and something new), another new alternative would be to add the
following Operation attribute to Cancel-Jobs:<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>&nbsp;&#8220;all-my-jobs&#8221;
(boolean) with default &#8216;false&#8217; to the Cancel-Jobs operation<o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>instead of adding
&#8220;cancel-jobs&#8221; (boolean) with default &#8216;false&#8217; to the Purge-Jobs
operation.&nbsp; Then we wouldn&#8217;t have an operation attribute (&#8220;cancel-jobs&#8221;)
which changes an one operation (Purge-Jobs) into another operation
(Cancel-Jobs).&nbsp; &nbsp;<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>A variant on my alternative above which would
allow the Operator/Administrator to be able to cancel <i><span
style='font-style:italic'>all</span></i> jobs (as is possible with current CUPS,
but uses Purge-Jobs) is to add the following Operation attribute to the Cancel-Jobs
operation: <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>&#8220;which-jobs&#8221;
(type2 keyword) with values:<o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:1.0in'><font size=2 color=navy
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:navy'>&#8216;specified-job&#8217;
&#8211; (default) the job specified by the supplied &#8220;job-id&#8221; or &#8220;job-url&#8221;<o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:1.0in'><font size=2 color=navy
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:navy'>&#8216;all-my-jobs&#8217;
&#8211; cancel all my jobs<o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:1.0in'><font size=2 color=navy
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:navy'>&#8216;all-jobs&#8217;
&#8211; cancel all jobs;&nbsp; If the Printer&#8217;s security policy does not
allow the authenticated user to cancel jobs for which the requesting user is
not the owner, then the IPP object MUST reject the operation and return client-error-not-authorized<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Following the thrust of the above
alternatives which avoid having an operation attribute change the semantics of
the operation to that of another operation, how about also adding &#8220;job-id&#8221;
(integer(1:MAX)) and &#8220;job-url&#8221; (URL) to the Purge-Jobs operation.&nbsp;
If either are supplied, then the specified job is purged, rather than all
jobs.&nbsp; If the requesting user is NOT an Operator/Administrator AND the
specified job is NOT owned by the requesting user, then the IPP object MUST
reject the operation and return client-error-not-authorized.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Think about these alternative for the
discussion at the IPP WG telecon, this Monday, October 5, 1:00 PM PDT = 4:00 PM
EDT.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>In the meantime, I&#8217;ll post the original
CUPS approach rather than making some of these discussed changes.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Thanks,<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Tom<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<div>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabindex=-1>

</span></font></div>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'> Michael Sweet
[mailto:msweet@apple.com] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Friday, October 02, 2009
10:51<br>
<b><span style='font-weight:bold'>To:</span></b> Ira McDonald<br>
<b><span style='font-weight:bold'>Cc:</span></b> tom.hastings@alum.mit.edu;
ipp@pwg.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> Re: {Disarmed} Re: [IPP]
Descriptions of CUPS additions to the Cancel-Job and Purge-Jobs operations</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>FWIW, we can rev this to use a &quot;cancel-jobs&quot; attribute instead
of &quot;purge-jobs&quot; for the Purge-Jobs operation, and I'll update CUPS
accordingly (to support both the old and new names...) so that the defaults are
all false.<o:p></o:p></span></font></p>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>On Oct 2, 2009, at 10:24 AM, Ira McDonald wrote:<o:p></o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><br>
<br>
<o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>Hi,<br>
<br>
I generally agree with Mike's comments below.<br>
<br>
But I really dislike a boolean that defaults to 'true' - this<br>
needs work.<br>
<br>
Cheers,<br>
- Ira<br>
<br clear=all>
Ira McDonald (Musician / Software Architect)<br>
Chair - Linux Foundation Open Printing WG<br>
Blue Roof Music/High North Inc<br>
email: <a href="mailto:blueroofmusic@gmail.com">blueroofmusic@gmail.com</a><br>
winter:<br>
&nbsp;<st1:address w:st="on"><st1:Street w:st="on">579 Park Place</st1:Street>
 &nbsp;<st1:City w:st="on">Saline</st1:City>, <st1:State w:st="on">MI</st1:State>
 &nbsp;<st1:PostalCode w:st="on">48176</st1:PostalCode></st1:address><br>
&nbsp;734-944-0094<br>
summer:<br>
&nbsp;<st1:address w:st="on"><st1:Street w:st="on">PO Box</st1:Street> 221</st1:address>
&nbsp;Grand <st1:place w:st="on"><st1:City w:st="on">Marais</st1:City>, <st1:State
 w:st="on">MI</st1:State> <st1:PostalCode w:st="on">49839</st1:PostalCode></st1:place><br>
&nbsp;906-494-2434<br>
<br>
<o:p></o:p></span></font></p>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>On Fri, Oct 2, 2009 at 11:53 AM, Michael Sweet &lt;<a
href="mailto:msweet@apple.com">msweet@apple.com</a>&gt; wrote:<o:p></o:p></span></font></p>

<div style='word-wrap: break-word'>

<div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Comments inline...<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>On Sep 30, 2009, at 7:10 PM, Tom Hastings wrote:<o:p></o:p></span></font></p>

</div>

<blockquote style='margin-top:5.0pt;margin-bottom:5.0pt' type=cite>

<div link=blue vlink=purple>

<div>

<p><font size=2 face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New"'>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.&nbsp; Since HTML may not come through the email reflector with the 5
MS-WORD ISSUE comments intact and the table shown, I&#8217;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"
target="_blank">ftp://ftp.pwg.org/pub/pwg/ipp/wd/Attributes_to_add_to_Cancel-Job_and_Purge-Jobs_operations.doc</a>.&nbsp;
</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New"'>The 5 ISSUES are as follows:</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Courier New"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='font-size:10.0pt;font-family:"Courier New";background:red'>ISSUE 1</span></span><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:0%;background-attachment:scroll'></font><font
size=2 face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
background:yellow'>:&nbsp; 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></span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Xerox Office"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='font-size:10.0pt;font-family:"Xerox Office";background:red'>ISSUE 2</span></span><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:0%;background-attachment:scroll'></font><font
size=2 face="Xerox Office"><span style='font-size:10.0pt;font-family:"Xerox Office";
background:yellow'>:&nbsp; </span></span></font><font face="Courier New"><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><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.</span></span></font><o:p></o:p></p>

<p><font size=2 face="Courier New"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><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></span></font><o:p></o:p></p>

<p><font size=2 face="Courier New"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='font-size:10.0pt;font-family:"Courier New";background:red'>ISSUE 3</span></span><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:0%;background-attachment:scroll'></font><font
size=2 face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
background:yellow'>: Instead of adding &#8220;my-jobs&#8221; and
&#8220;purge-job&#8221; 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
&#8220;all-my-jobs&#8221; (boolean) Operation attribute to the Cancel-Job
operation.&nbsp; When the client supplies this attribute with a &#8216;true&#8217;
value, the client MUST NOT supply a &#8220;job-id&#8221; or
&#8220;job-url&#8221; Operation attribute.</span></span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Courier New"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='font-size:10.0pt;font-family:"Courier New";background:red'>ISSUE 4</span></span><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:0%;background-attachment:scroll'></font><font
size=2 face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
background:yellow'>: Or should the spec say the Printer MUST reject the
Purge-Jobs operation if the unprivileged client supplies the
&#8220;my-jobs&#8221; = &#8216;false&#8217; 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></span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Courier New"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='font-size:10.0pt;font-family:"Courier New";background:red'>ISSUE 5</span></span><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:0%;background-attachment:scroll'></font><font
size=2 face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
background:yellow'>: The &#8220;purge-job&#8221; (boolean) Operation attribute
has the &#8216;true&#8217; value here as its default.&nbsp; Usually, it&#8217;s
the &#8216;false&#8217; value that is the default.&nbsp; More confusingly, the
&#8220;purge-job&#8221; (boolean) Operation attribute (correctly) has the
&#8216;false&#8217; value in the Cancel-Job operation above.</span></span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New"'>I&#8217;ve included the text in the draft which I will post
tomorrow for this Monday&#8217;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.&nbsp;
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.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New"'>Here is what I've come up with.&nbsp; Comments and suggestions
are welcome:</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<h2><b><font size=3 face=Arial><span style='font-size:12.0pt;font-family:Arial'>4.3
Cancel-Job operation</span></font><o:p></o:p></b></h2>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>This
section specified an additional operation attribute for use with the
Cancel-Jobs operation (see [RFC2911] Section 3.3.3).</span></font><o:p></o:p></p>

<h3><b><font size=3 face=Arial><span style='font-size:12.0pt;font-family:Arial'>4.3.1
purge-job</span></font></b><a name="12415f4bfc6b9251__msoanchor_1"><font
face="Xerox Office"><span style='font-family:"Xerox Office";font-weight:normal'>[th1]</span></font></a><font
face="Xerox Office"><span style='font-family:"Xerox Office";font-weight:normal'>&nbsp;</span></font><font
size=1 face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office";
font-weight:normal'>&nbsp;</span></font> (boolean)<o:p></o:p></h3>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>The
&#8220;purge-job&#8221; Operation attribute controls whether the specified job
is canceled or purged as follows:</span></font><o:p></o:p></p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>&#8216;false&#8217;: &nbsp;Default value.&nbsp; 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.&nbsp; Note: If the client omits this attribute or supplies the
&#8216;false&#8217; value, the behavior of the Cancel-Job operation is as
specified in [RFC2911].</span></font><o:p></o:p></p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>&#8216;true&#8217;: &nbsp;&nbsp;If the authenticated
user is the job owner of the job specified by the &#8220;job-id&#8221; or
&#8220;job-uri&#8221; 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&#8217;s state, but only for the specified job, i.e., remove all record of
the specified job, including attributes, history and document data. </span></font><o:p></o:p></p>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>The
client MAY supply this Operation attribute and the Printer MAY support this
Operation attribute in the Cancel-Job operation.</span></font><o:p></o:p></p>

</div>

</div>

</blockquote>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>I'd just make the authenticated user case more generic, and also
document that Cancel-Jobs with purge-jobs=true will fail if the user is not
authorized, e.g.:<o:p></o:p></span></font></p>

</div>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<blockquote style='margin-left:30.0pt;margin-top:5.0pt;margin-right:0in;
margin-bottom:5.0pt'>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&#8216;true&#8217;: &nbsp; If the authenticated user is allowed to
purge a job by the Printer's security policy (typically if&nbsp;the owner of
the job specified by the &#8220;job-id&#8221; or&nbsp;&#8220;job-uri&#8221;
operation attribute matches)&nbsp;or is a privileged operator or administrator
of the&nbsp;Printer, the Printer MUST purge the specified job according to the
semantics&nbsp;of the Purge-Jobs operation independent of the job&#8217;s
state, but only for the&nbsp;specified job, i.e., remove all record of the
specified job, including attributes,&nbsp;history and document data. Otherwise,
the IPP object MUST reject the operation and return: client-error-forbidden,
client-error-not-authenticated, and client-error-not-authorized as appropriate.<o:p></o:p></span></font></p>

</blockquote>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>The wording of the last sentence matches RFC 2911's Purge-Jobs
description.<o:p></o:p></span></font></p>

<div>

<blockquote style='margin-top:5.0pt;margin-bottom:5.0pt' type=cite>

<div link=blue vlink=purple>

<div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<h2 style='margin-left:.25in'><b><font size=3 face=Arial><span
style='font-size:12.0pt;font-family:Arial'>4.4</span></font></b><font size=1><span
style='font-size-adjust: none;font-stretch: normal'><span style='font-size:
7.0pt;font-weight:normal'> </span></font></span>Purge-Jobs operation<o:p></o:p></h2>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>This
section specified additional operation attributes for use with the Cancel-Jobs
operation (see [RFC2911] Section 3.3.7).</span></font><o:p></o:p></p>

<h3><b><font size=3 face=Arial><span style='font-size:12.0pt;font-family:Arial'>4.4.1</span></font></b><font
size=1><span style='font-size-adjust: none;font-stretch: normal'><span
style='font-size:7.0pt;font-weight:normal'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></font>my-jobs<a name="12415f4bfc6b9251__msoanchor_2"><font
size=2 face="Xerox Office"><span style='font-size:10.0pt;font-family:"Xerox Office";
font-weight:normal'>[th2]</span></font></a><font size=2 face="Xerox Office"><span
style='font-size:10.0pt;font-family:"Xerox Office";font-weight:normal'>&nbsp;</span></font><font
size=1 face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office";
font-weight:normal'>&nbsp;</span></font><a name="12415f4bfc6b9251__msoanchor_3"><font
size=2 face="Xerox Office"><span style='font-size:10.0pt;font-family:"Xerox Office";
font-weight:normal'>[th3]</span></font></a><font size=2 face="Xerox Office"><span
style='font-size:10.0pt;font-family:"Xerox Office";font-weight:normal'>&nbsp;</span></font><font
size=1 face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office";
font-weight:normal'>&nbsp;</span></font> (boolean)<o:p></o:p></h3>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>The
&#8220;my-jobs&#8221; 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.&nbsp; However, the Printer MUST
further restrict the target jobs as follows:&nbsp; </span></font><o:p></o:p></p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>&#8216;false&#8217;: &nbsp;Default value.&nbsp; 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, in which case the Printer MUST restrict the
target jobs to those belonging to the requesting user.</span></font><a
name="12415f4bfc6b9251__msoanchor_4"><font face="Xerox Office"><span
style='font-family:"Xerox Office"'>[th4]</span></font></a><font
face="Xerox Office"><span style='font-family:"Xerox Office"'>&nbsp;</span></font><font
size=1 face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office"'>&nbsp;</span></font><o:p></o:p></p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>&#8216;true&#8217;: &nbsp;&nbsp;The target jobs are <i><span
style='font-style:italic'>limited to</span></i> those owned by the
Authenticated user submitting the request.&nbsp; &nbsp;</span></font><o:p></o:p></p>

<p><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>

</div>

</div>

</blockquote>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>I'd add the following to the 4.4 introduction to address th2-th5:<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

</div>

<blockquote style='margin-left:30.0pt;margin-top:5.0pt;margin-right:0in;
margin-bottom:5.0pt'>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Access Rights: The following attributes may allow the authenticated
user (see RFC 2911 section 8.3) performing this operation to be an ordinary
user depending on the Printer's security policy. When ordinary users are not
allowed to use the Purge-Jobs operation, the&nbsp;IPP object MUST continue to
reject the operation and return: client-error-forbidden,
client-error-not-authenticated, and client-error-not-authorized as appropriate.<o:p></o:p></span></font></p>

</blockquote>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Then move the table into 4.4, before the description of the attributes.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div>

<div>

<blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'>

<div link=blue vlink=purple>

<div>

<h3><b><font size=3 face=Arial><span style='font-size:12.0pt;font-family:Arial'>4.4.2</span></font></b><font
size=1><span style='font-size-adjust: none;font-stretch: normal'><span
style='font-size:7.0pt;font-weight:normal'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></font>purge-job (boolean) <o:p></o:p></h3>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>The
&#8220;purge-job&#8221; Operation attribute controls whether the target jobs
are canceled or purged as follows: </span></font><o:p></o:p></p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>&#8216;false&#8217;: &nbsp;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.&nbsp; </span></font><o:p></o:p></p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>&#8216;true&#8217;: &nbsp;&nbsp;Default value</span></font><a
name="12415f4bfc6b9251__msoanchor_5"><font face="Xerox Office"><span
style='font-family:"Xerox Office"'>[th5]</span></font></a><font
face="Xerox Office"><span style='font-family:"Xerox Office"'>&nbsp;</span></font><font
size=1 face="Xerox Office"><span style='font-size:8.0pt;font-family:"Xerox Office"'>&nbsp;</span></font>.&nbsp;
The Printer purges the target jobs as specified in [RFC2911] Section 3.2.9
Purge-Jobs.&nbsp; Note: If the client omits this attribute or supplies the
&#8216;true&#8217; value, the behavior of the Purge-Jobs operation is as
specified in [RFC2911] for the target jobs.<o:p></o:p></p>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>The
client MAY supply this Operation attribute and the Printer MAY support this
Operation attribute in the Purge-Jobs operation.</span></font><o:p></o:p></p>

<p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>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.</span></font><o:p></o:p></p>

<p><a name="12415f4bfc6b9251__Ref242099050"><b><font size=2 face=Arial><span
style='font-size:10.0pt;font-family:Arial;font-weight:bold'>Table </span></font></b></a>2:
Interaction of &quot;my-jobs&quot; and &quot;purge-jobs&quot; 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><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Operation
  attributes</span></font><o:p></o:p></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;border-color:-moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Unprivileged
  user</span></font><o:p></o:p></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;border-color:-moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Operator
  or Administrator of the Printer</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>&#8220;my-jobs&#8221;
  = &#8216;false&#8217; or omitted<br>
  &#8220;purge-jobs&#8221; = &#8216;false&#8217;</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Cancel
  only my jobs (Printer overrides &#8220;my-jobs&#8221; = &#8216;false&#8217;)</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Cancel
  <i><span style='font-style:italic'>all</span></i> jobs</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>&#8220;my-jobs&#8221;
  = &#8216;true&#8217;<br>
  &#8220;purge-jobs&#8221; = &#8216;false&#8217;</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Cancel
  only my jobs</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Cancel
  only my jobs</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>&#8220;my-jobs&#8221;
  = &#8216;false&#8217; or omitted<br>
  &#8220;purge-jobs&#8221; = &#8216;true&#8217; or omitted</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Purge
  only my jobs (Printer overrides &#8220;my-jobs&#8221; = &#8216;false&#8217;)</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Purge
  <i><span style='font-style:italic'>all</span></i> jobs</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>&#8220;my-jobs&#8221;
  = &#8216;true&#8217;<br>
  &#8220;purge-jobs&#8221; = &#8216;true&#8217; or omitted</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Purge
  only my jobs</span></font><o:p></o:p></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;border-color:-moz-use-text-color windowtext windowtext -moz-use-text-color'>
  <p><font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>Purge
  only my jobs</span></font><o:p></o:p></p>
  </td>
 </tr>
</table>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;-----Original Message-----<br>
From: <a href="mailto:ipp-bounces@pwg.org" target="_blank"><font size=2
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New"'>ipp-bounces@pwg.org</span></font></a>
[mailto:<a href="mailto:ipp-bounces@pwg.org" target="_blank"><font size=2
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New"'>ipp-bounces@pwg.org</span></font></a>]
On Behalf Of Michael Sweet<br>
Sent: Monday, September 14, 2009 14:41<br>
To: <a href="mailto:ipp@pwg.org" target="_blank"><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>ipp@pwg.org</span></font></a><br>
Subject: [IPP] Descriptions of CUPS additions to the Cancel-Job and Purge-Jobs
operations<o:p></o:p></span></font></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'><o:p>&nbsp;</o:p></span></font></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>All,<o:p></o:p></span></font></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=3 face="Times New Roman"><span
style='font-size:12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Here are the descriptions for
the CUPS additions to the Cancel-Job and&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Purge-Jobs operations. These
came up in today's conference call...</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>------------------------------------------------------</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Cancel Job Operation</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>The Cancel-Job operation
(0x0008) cancels the specified job. CUPS 1.4&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>adds a new purge-job
(boolean) attribute that allows you to purge both&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>active and completed jobs,
removing all history and document files for&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>the job as well.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Cancel-Job Request</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>The following groups of
attributes are supplied as part of the Cancel- </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Job request:</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Group 1: Operation
Attributes</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Natural Language and
Character Set:</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
&quot;attributes-charset&quot; and
&quot;attributes-natural-language&quot;&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>attributes as described in
section 3.1.4.1 of the IPP Model and&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Semantics document.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot;printer-uri&quot;
(uri) and &quot;job-id&quot; (integer)</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>OR</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot;job-uri&quot;:</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
client MUST supply a URI for the specified printer and a job&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>ID number, or the job URI.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot;purge-job&quot;
(boolean):</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
client OPTIONALLY supplies this attribute. When true, all job&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>files (history and document)
are purged. The default is false, leading&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>to the standard IPP
behavior.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Cancel-Job Response</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>The following groups of
attributes are send as part of the Cancel-Job&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Response:</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Group 1: Operation
Attributes</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Status Message:</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
standard response status message.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Natural Language and
Character Set:</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
&quot;attributes-charset&quot; and
&quot;attributes-natural-language&quot;&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>attributes as described in
section 3.1.4.2 of the IPP Model and&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Semantics document.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Purge-Jobs Operation</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>The Purge-Jobs operation
(0x0012) cancels all of the jobs on a given&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>destination and optionally
removes all history and document files for&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>the jobs as well.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Purge-Jobs Request</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>The following groups of
attributes are supplied as part of the Purge- </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Jobs request:</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Group 1: Operation
Attributes</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Natural Language and
Character Set:</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
&quot;attributes-charset&quot; and
&quot;attributes-natural-language&quot;&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>attributes as described in
section 3.1.4.1 of the IPP Model and&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Semantics document.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot;printer-uri&quot;
(uri):</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
client MUST supply a URI for the specified printer or &quot;ipp://.../printers </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot; for all printers and
classes.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot;requesting-user-name&quot;
(name(MAX)):</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
client OPTIONALLY supplies this attribute to specify whose&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>jobs jobs are purged or
canceled.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot;my-jobs&quot;
(boolean):</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
client OPTIONALLY supplies this attribute to specify that&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>only the jobs owned by the
requesting user are purged or canceled. The&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>default is false.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&quot;purge-jobs&quot;
(boolean):</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
client OPTIONALLY supplies this attribute to specify whether&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>the jobs are purged (true)
or just canceled (false). The default is&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>true.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Purge-Jobs Response</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>The following groups of
attributes are send as part of the Purge-Jobs&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Response:</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Group 1: Operation
Attributes</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Status Message:</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
standard response status message.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Natural Language and
Character Set:</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>&nbsp;&nbsp;&nbsp;&nbsp; The
&quot;attributes-charset&quot; and
&quot;attributes-natural-language&quot;&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>attributes as described in
section 3.1.4.2 of the IPP Model and&nbsp; </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Semantics document.</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>&nbsp;__________________________________________________<o:p></o:p></span></font></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>Michael Sweet, Senior
Printing System Engineer</span></font><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>&nbsp;</span></font><o:p></o:p></p>

</div>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>-- </span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>This message has been
scanned for viruses and</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>dangerous content by
MailScanner, and is</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>believed to be clean.</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>_______________________________________________</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>ipp mailing list</span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'><a href="mailto:ipp@pwg.org"
target="_blank">ipp@pwg.org</a></span></font><o:p></o:p></p>

<p style='margin:0in;margin-bottom:.0001pt'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'><a
href="https://www.pwg.org/mailman/listinfo/ipp" target="_blank">https://www.pwg.org/mailman/listinfo/ipp</a></span></font><o:p></o:p></p>

</div>

<div>

<div>

<div class=MsoNormal><font size=3 face="Times New Roman"><span
style='font-size:12.0pt'>

<hr size=1 width="33%" align=left>

</span></font></div>

</div>

<div>

<div language=JavaScript>

<p><a name="12415f4bfc6b9251__msocom_1"></a><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office"'>&nbsp;</span></font><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:red'>ISSUE</span></span><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:yellow'>:&nbsp; 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></span><o:p></o:p></p>

</div>

</div>

<div>

<div language=JavaScript>

<p><a name="12415f4bfc6b9251__msocom_2"></a><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office"'>&nbsp;</span></font><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:red'>ISSUE</span></span><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:yellow'>:&nbsp; 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.</span></span><o:p></o:p></p>

<div>

<p class=MsoNormal><font size=2 face="Xerox Office"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='font-size:10.0pt;font-family:"Xerox Office";background:yellow'>&nbsp;</span></span></font><o:p></o:p></p>

</div>

<p><font size=2 face="Xerox Office"><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='font-size:10.0pt;font-family:"Xerox Office";background:yellow'>One
solution would be to only allow Purge-Jobs for operator or administrator as in
[RFC 2911].</span></span></font><o:p></o:p></p>

</div>

</div>

<div>

<div language=JavaScript>

<p><a name="12415f4bfc6b9251__msocom_3"></a><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office"'>&nbsp;</span></font><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:red'>ISSUE</span></span><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:yellow'>: Instead of adding &#8220;my-jobs&#8221; and
&#8220;purge-job&#8221; to Purge-Jobs, a simpler way to allow an unprivileged
&nbsp;user to cancel all his jobs, instead of just a specified job, would be to
add &#8220;all-my-jobs&#8221; (boolean) Operation attribute to the Cancel-Job
operation.&nbsp; When the client supplies this attribute with a &#8216;true&#8217;
value, the client MUST NOT supply a &#8220;job-id&#8221; or
&#8220;job-url&#8221; Operation attribute.</span></span><o:p></o:p></p>

</div>

</div>

<div>

<div language=JavaScript>

<p><a name="12415f4bfc6b9251__msocom_4"></a><font size=1 face="Courier New"><span
style='font-size:8.0pt;font-family:"Courier New"'>&nbsp;</span></font><span
style='background:red'><span style='-moz-background-clip: border;-moz-background-origin: padding;
-moz-background-inline-policy: continuous;background-position-x:0%;background-position-y:0%;
background-attachment:scroll'>ISSUE</span></span><span style='background:yellow'><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:0%;background-attachment:scroll'>:
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></span><o:p></o:p></p>

</div>

</div>

<div>

<div language=JavaScript>

<p><a name="12415f4bfc6b9251__msocom_5"></a><font size=1 face="Xerox Office"><span
style='font-size:8.0pt;font-family:"Xerox Office"'>&nbsp;</span></font><span
style='-moz-background-clip: border;-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:red'>ISSUE</span></span><span style='-moz-background-clip: border;
-moz-background-origin: padding;-moz-background-inline-policy: continuous;
background-position-x:0%;background-position-y:
0%;background-attachment:scroll'><span
style='background:yellow'>: The &#8220;purge-job&#8221; (boolean) Operation
attribute has the &#8216;true&#8217; value here as its default.&nbsp; Usually,
it&#8217;s the &#8216;false&#8217; value that is the default.&nbsp; More
confusingly, the &#8220;purge-job&#8221; (boolean) Operation attribute
(correctly) has the &#8216;false&#8217; value in the Cancel-Job operation above.</span><o:p></o:p></span></p>

<p><font size=3 face="Times New Roman"><span style='font-size:12.0pt'>__________________________________________________<o:p></o:p></span></font></p>

</div>

</div>

</div>

</div>

</blockquote>

</div>

<div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Michael Sweet, Senior Printing System Engineer<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

</div>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>-- <br>
This message has been scanned for viruses and <br>
dangerous content by <a href="http://www.mailscanner.info/" target="_blank"><b><span
style='font-weight:bold'>MailScanner</span></b></a>, and is <br>
believed to be clean. <o:p></o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>_______________________________________________<br>
ipp mailing list<br>
<a href="mailto:ipp@pwg.org">ipp@pwg.org</a><br>
<a href="https://www.pwg.org/mailman/listinfo/ipp" target="_blank">https://www.pwg.org/mailman/listinfo/ipp</a><o:p></o:p></span></font></p>

</div>

</div>

<div>

<div>

<p class=MsoNormal><font size=4 color=black face=Monaco><span style='font-size:
13.5pt;font-family:Monaco;color:black'>___________________________________________________<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=4 color=black face=Monaco><span style='font-size:
13.5pt;font-family:Monaco;color:black'>Michael Sweet, Senior Printing System
Engineer<o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=4 color=black face=Monaco><span style='font-size:
13.5pt;font-family:Monaco;color:black'><o:p>&nbsp;</o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</div>

</span></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>