Re: [Imap-protocol] UID MOVE and untagged OKs

Jeff McKay <[email protected]> Tue, 17 Nov 2015 16:36:36 -0800
Newsgroups gmane.mail.imap.general
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--===============4180055672340426726==
Content-Type: multipart/alternative;
 boundary="------------040909070608050807050203"

This is a multi-part message in MIME format.
--------------040909070608050807050203
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit

I just tried it and I would agree with David that O365 is indeed 
behaving as he described - no untagged OK in response to UID MOVE. My
only point, in response to Bron, is that as as developer at a company 
that wants to make actual sales, I do sometimes have to put in kludges to
deal with crappy imap servers.  I guess David is writing some kind of 
add-in for iOS Mail where he can't do that.  I would think though that
the Apple folks could get Microsoft to see the light.

On 11/17/2015 4:06 PM, Brandon Long wrote:
> Or his client is eating the '* ' in some fashion, it would be good for 
> someone with an account to verify the bad behavior.
>
> They obviously think they're sending the right response, let's not 
> assume that they are sending the wrong one.
>
> Brandon
>
> On Tue, Nov 17, 2015 at 3:58 PM, Stu Brandt <[email protected] 
> <mailto:[email protected]>> wrote:
>
>     David -
>
>     My read matches yours. Their 2nd line is neither a tagged or
>     untagged response, rfc6851 section 3.3 has a specific example
>     covering COPYUID in the response, and rfc6851 section 4.3 seems
>     pretty clear when it says to send the COPYUID response code in an
>     untagged OK.
>
>     - Stuart
>
>
>     On 11/17/15 6:11 PM, David Shaw wrote:
>
>         Hello,
>
>         I'm currently beating my head against a problem with a
>         particular server implementation.  The problem, as best I can
>         work out from the outside, is in UID MOVE.
>
>         My understanding from RFC-6851 is that a UID MOVE transaction
>         should look something like this (cut and paste from the RFC):
>
>                 C: a UID MOVE 42:69 foo
>                 S: * OK [COPYUID 432432 42:69 1202:1229]
>                 S: * 22 EXPUNGE
>                 S: (more expunges)
>                 S: a OK Done
>
>         The relevant piece of this for my question is that the COPYUID
>         response is in an untagged OK.  Again, from the RFC: "Servers
>         implementing UIDPLUS are also advised to send the COPYUID
>         response code in an untagged OK before sending EXPUNGE or
>         moved responses."
>
>         This seems straightforward.
>
>         The server I'm having a problem (outlook.office365.com
>         <http://outlook.office365.com>) with has a UID MOVE
>         transaction like this (actual transaction captured from my
>         client):
>
>                 C: 14 UID MOVE 7599 "Deleted Items"
>                 S:  [COPYUID 12 7599 4788]
>                 S:  * 373 EXPUNGE
>                 S:  * 372 EXISTS
>                 S:  14 OK MOVE completed.
>
>         The concern is with the second line (the COPYUID response). 
>         There is no untagged OK / "* OK" there, which seems incorrect
>         to me and perhaps more significantly, seems to cause the Apple
>         iOS mail program to throw an error every time a message is
>         moved from folder to folder (which of course includes the
>         "delete this message" function).
>
>         I've spent (literally) weeks trying to get Microsoft Office365
>         support to acknowledge the problem, without success.  The most
>         recent response insists that they are following the RFC, and
>         in fact quoted the "Servers implementing UIDPLUS are also
>         advised to send the COPYUID response code in an untagged OK
>         before sending EXPUNGE or moved responses." line from RFC-6851
>         as what they are doing.
>
>         Could the experts on this list help me understand what is
>         going on here?  I have no particular need to be "right" - I
>         just want to be able to delete messages without getting errors
>         every single time.
>
>         Thanks,
>
>         David
>
>         _______________________________________________
>         Imap-protocol mailing list
>         [email protected]
>         <mailto:[email protected]>
>         http://mailman13.u.washington.edu/mailman/listinfo/imap-protocol
>
>
>     _______________________________________________
>     Imap-protocol mailing list
>     [email protected] <mailto:[email protected]>
>     http://mailman13.u.washington.edu/mailman/listinfo/imap-protocol
>
>
>
>
> _______________________________________________
> Imap-protocol mailing list
> [email protected]
> http://mailman13.u.washington.edu/mailman/listinfo/imap-protocol


--------------040909070608050807050203
Content-Type: text/html; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
X-MIME-Autoconverted: from 8bit to quoted-printable by mxout25.s.uw.edu id tAI0bM7W009010

<html>
  <head>
    <meta content=3D"text/html; charset=3Dwindows-1252"
      http-equiv=3D"Content-Type">
  </head>
  <body bgcolor=3D"#FFFFFF" text=3D"#000000">
    I just tried it and I would agree with David that O365 is indeed
    behaving as he described - no untagged OK in response to UID MOVE.=A0
    My<br>
    only point, in response to Bron, is that as as developer at a
    company that wants to make actual sales, I do sometimes have to put
    in kludges to<br>
    deal with crappy imap servers.=A0 I guess David is writing some kind
    of add-in for iOS Mail where he can't do that.=A0 I would think thoug=
h
    that<br>
    the Apple folks could get Microsoft to see the light.<br>
    <br>
    <div class=3D"moz-cite-prefix">On 11/17/2015 4:06 PM, Brandon Long
      wrote:<br>
    </div>
    <blockquote
cite=3D"mid:[email protected]=
ail.com"
      type=3D"cite">
      <div dir=3D"ltr">Or his client is eating the '* ' in some fashion,
        it would be good for someone with an account to verify the bad
        behavior.
        <div><br>
        </div>
        <div>They obviously think they're sending the right response,
          let's not assume that they are sending the wrong one.</div>
        <div><br>
        </div>
        <div>Brandon</div>
      </div>
      <div class=3D"gmail_extra"><br>
        <div class=3D"gmail_quote">On Tue, Nov 17, 2015 at 3:58 PM, Stu
          Brandt <span dir=3D"ltr">&lt;<a moz-do-not-send=3D"true"
              href=3D"mailto:[email protected]" target=3D"_blank"=
>[email protected]</a>&gt;</span>
          wrote:<br>
          <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">David -<br>
            <br>
            My read matches yours. Their 2nd line is neither a tagged or
            untagged response, rfc6851 section 3.3 has a specific
            example covering COPYUID in the response, and rfc6851
            section 4.3 seems pretty clear when it says to send the
            COPYUID response code in an untagged OK.<br>
            <br>
            - Stuart
            <div class=3D"HOEnZb">
              <div class=3D"h5"><br>
                <br>
                On 11/17/15 6:11 PM, David Shaw wrote:<br>
                <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0
                  .8ex;border-left:1px #ccc solid;padding-left:1ex">
                  Hello,<br>
                  <br>
                  I'm currently beating my head against a problem with a
                  particular server implementation.=A0 The problem, as
                  best I can work out from the outside, is in UID MOVE.<b=
r>
                  <br>
                  My understanding from RFC-6851 is that a UID MOVE
                  transaction should look something like this (cut and
                  paste from the RFC):<br>
                  <br>
                  =A0 =A0 =A0 =A0 C: a UID MOVE 42:69 foo<br>
                  =A0 =A0 =A0 =A0 S: * OK [COPYUID 432432 42:69 1202:1229=
]<br>
                  =A0 =A0 =A0 =A0 S: * 22 EXPUNGE<br>
                  =A0 =A0 =A0 =A0 S: (more expunges)<br>
                  =A0 =A0 =A0 =A0 S: a OK Done<br>
                  <br>
                  The relevant piece of this for my question is that the
                  COPYUID response is in an untagged OK.=A0 Again, from
                  the RFC: "Servers implementing UIDPLUS are also
                  advised to send the COPYUID response code in an
                  untagged OK before sending EXPUNGE or moved
                  responses."<br>
                  <br>
                  This seems straightforward.<br>
                  <br>
                  The server I'm having a problem (<a
                    moz-do-not-send=3D"true"
                    href=3D"http://outlook.office365.com" rel=3D"noreferr=
er"
                    target=3D"_blank">outlook.office365.com</a>) with has
                  a UID MOVE transaction like this (actual transaction
                  captured from my client):<br>
                  <br>
                  =A0 =A0 =A0 =A0 C: 14 UID MOVE 7599 "Deleted Items"<br>
                  =A0 =A0 =A0 =A0 S:=A0 [COPYUID 12 7599 4788]<br>
                  =A0 =A0 =A0 =A0 S:=A0 * 373 EXPUNGE<br>
                  =A0 =A0 =A0 =A0 S:=A0 * 372 EXISTS<br>
                  =A0 =A0 =A0 =A0 S:=A0 14 OK MOVE completed.<br>
                  <br>
                  The concern is with the second line (the COPYUID
                  response).=A0 There is no untagged OK / "* OK" there,
                  which seems incorrect to me and perhaps more
                  significantly, seems to cause the Apple iOS mail
                  program to throw an error every time a message is
                  moved from folder to folder (which of course includes
                  the "delete this message" function).<br>
                  <br>
                  I've spent (literally) weeks trying to get Microsoft
                  Office365 support to acknowledge the problem, without
                  success.=A0 The most recent response insists that they
                  are following the RFC, and in fact quoted the "Servers
                  implementing UIDPLUS are also advised to send the
                  COPYUID response code in an untagged OK before sending
                  EXPUNGE or moved responses." line from RFC-6851 as
                  what they are doing.<br>
                  <br>
                  Could the experts on this list help me understand what
                  is going on here?=A0 I have no particular need to be
                  "right" - I just want to be able to delete messages
                  without getting errors every single time.<br>
                  <br>
                  Thanks,<br>
                  <br>
                  David<br>
                  <br>
                  _______________________________________________<br>
                  Imap-protocol mailing list<br>
                  <a moz-do-not-send=3D"true"
                    href=3D"mailto:[email protected]"
                    target=3D"_blank">[email protected]</a><=
br>
                  <a moz-do-not-send=3D"true"
                    href=3D"http://mailman13.u.washington.edu/mailman/lis=
tinfo/imap-protocol"
                    rel=3D"noreferrer" target=3D"_blank">http://mailman13=
.u.washington.edu/mailman/listinfo/imap-protocol</a><br>
                </blockquote>
                <br>
                _______________________________________________<br>
                Imap-protocol mailing list<br>
                <a moz-do-not-send=3D"true"
                  href=3D"mailto:[email protected]"
                  target=3D"_blank">[email protected]</a><br=
>
                <a moz-do-not-send=3D"true"
                  href=3D"http://mailman13.u.washington.edu/mailman/listi=
nfo/imap-protocol"
                  rel=3D"noreferrer" target=3D"_blank">http://mailman13.u=
.washington.edu/mailman/listinfo/imap-protocol</a><br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class=3D"mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap=3D"">_______________________________________________
Imap-protocol mailing list
<a class=3D"moz-txt-link-abbreviated" href=3D"mailto:[email protected]=
ington.edu">[email protected]</a>
<a class=3D"moz-txt-link-freetext" href=3D"http://mailman13.u.washington.=
edu/mailman/listinfo/imap-protocol">http://mailman13.u.washington.edu/mai=
lman/listinfo/imap-protocol</a></pre>
    </blockquote>
    <br>
  </body>
</html>

--------------040909070608050807050203--

--===============4180055672340426726==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

_______________________________________________
Imap-protocol mailing list
[email protected]
http://mailman13.u.washington.edu/mailman/listinfo/imap-protocol
--===============4180055672340426726==--