/*
  * This implementation should follow RFC 4341
- *
- * BUGS:
- * - sequence number wrapping
  */
 
 #include "../ccid.h"
                /* go through this ack vector */
                while (veclen--) {
                        const u8 rl = *vector & DCCP_ACKVEC_LEN_MASK;
-                       u64 ackno_end_rl;
+                       u64 ackno_end_rl = SUB48(ackno, rl);
 
-                       dccp_set_seqno(&ackno_end_rl, ackno - rl);
                        ccid2_pr_debug("ackvec start:%llu end:%llu\n",
                                       (unsigned long long)ackno,
                                       (unsigned long long)ackno_end_rl);
                        if (done)
                                break;
 
-
-                       dccp_set_seqno(&ackno, ackno_end_rl - 1);
+                       ackno = SUB48(ackno_end_rl, 1);
                        vector++;
                }
                if (done)