]> git.g-eek.se Git - interimap.git/commitdiff
Message Sequence Match Data: sequence set come before UIDs.
authorGuilhem Moulin <guilhem@fripost.org>
Sun, 6 Sep 2015 18:51:37 +0000 (20:51 +0200)
committerGuilhem Moulin <guilhem@fripost.org>
Sun, 6 Sep 2015 18:51:37 +0000 (20:51 +0200)
Cf. RFC 7162:

  seq-match-data = "(" known-sequence-set SP known-uid-set ")"

imapsync
lib/Net/IMAP/Sync.pm

index ac6357731b0db3bf2b2058fa5400cc395c85325e..927d2053b7708a1bd54977710819271e7d17118c 100755 (executable)
--- a/imapsync
+++ b/imapsync
@@ -619,10 +619,10 @@ sub delete_mapping($$) {
 }
 
 
-# Create a sample (UIDs, sequence numbers) to use as 3rd and 4th
-# argument of the QRESYNC parameters to the SELECT command.
+# Create a sample (sequence numbers, UIDs) to use as Message Sequence
+# Match Data for the QRESYNC parameter to the SELECT command.
 # QRESYNC [RFC7162] doesn't force the server to remember the MODSEQs of
-# EXPUNGEd messages.  By passing a sample of known UIDs/sequence numbers
+# EXPUNGEd messages.  By passing a sample of known sequence numbers/UIDs
 # we let the server know that the messages have been EXPUNGEd [RFC7162,
 # section 3.2.5.2].
 # The UID set is the largest set of higest UIDs with at most 1024 UIDs,
@@ -660,7 +660,7 @@ sub sample($$$) {
         $uids = ($min == $max ? $min : "$min:$max")
                .(defined $uids ? ','.$uids : '');
     }
-    return ( $uids, ($count - $n + 1).':'.$count );
+    return ( ($count - $n + 1).':'.$count, $uids );
 }
 
 
index ca85a544518aa64972ba12cd263dcd7a3f61fc71..785aa5419efbc0c0870ad8dd9bef4a2c1409eac8 100644 (file)
@@ -482,12 +482,12 @@ sub search($$) {
 }
 
 
-# $self->select($mailbox,  [$UIDs, $seqs])
-# $self->examine($mailbox, [$UIDs, $seqs])
+# $self->select($mailbox,  [$seqs, $UIDs])
+# $self->examine($mailbox, [$seqs, $UIDs])
 #   Issue a SELECT or EXAMINE command for the $mailbox. Upon success,
 #   change the state to SELECTED, otherwise go back to AUTH.
-#   The optional $UIDs and $seqs are passed are 3rd and 4th arguments to
-#   the QRESYNC parameter, respectively.
+#   The optional $seqs and $UIDs are used as Message Sequence Match
+#   Data for the QRESYNC parameter to the SELECT command.
 sub select($$;$$) {
     my $self = shift;
     my $mailbox = shift;
@@ -1278,11 +1278,11 @@ sub _open_mailbox($$) {
 }
 
 
-# $self->_select_or_examine($command, $mailbox, [$UIDs, $seqs])
+# $self->_select_or_examine($command, $mailbox, [$seqs, $UIDs])
 #   Issue a SELECT or EXAMINE command for the $mailbox.  Upon success,
 #   change the state to SELECTED, otherwise go back to AUTH.
-#   The optional $UIDs and $seqs are passed are 3rd and 4th arguments to
-#   the QRESYNC parameter, respectively.
+#   The optional $seqs and $UIDs are used as Message Sequence Match
+#   Data for the QRESYNC parameter to the $command.
 sub _select_or_examine($$$;$$) {
     my $self = shift;
     my $command = shift;