ssl/record/rec_layer_d1.c:357: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - [1, 17728]):unsigned32 by call to `dtls1_process_record`.
Showing all 12 steps of the trace


ssl/record/rec_layer_d1.c:344:1: Parameter `s->rlayer.rrec.length`
342.   
343.   
344. > int dtls1_process_buffered_records(SSL *s)
345.   {
346.       pitem *item;

ssl/record/rec_layer_d1.c:357:18: Call
355.           while (pqueue_peek(s->rlayer.d->unprocessed_rcds.q)) {
356.               dtls1_get_unprocessed_record(s);
357.               if (!dtls1_process_record(s))
                        ^
358.                   return (0);
359.               if (dtls1_buffer_record(s, &(s->rlayer.d->processed_rcds),

ssl/record/ssl3_record.c:1218:1: Parameter `s->rlayer.rrec.length`
  1216.   }
  1217.   
  1218. > int dtls1_process_record(SSL *s)
  1219.   {
  1220.       int i, al;

ssl/record/ssl3_record.c:1257:5: Assignment
  1255.       /* decrypt in place in 'rr->input' */
  1256.       rr->data = rr->input;
  1257.       rr->orig_len = rr->length;
              ^
  1258.   
  1259.       enc_err = s->method->ssl3_enc->enc(s, 0);

ssl/record/ssl3_record.c:1314:13: Call
  1312.                */
  1313.               mac = mac_tmp;
  1314.               ssl3_cbc_copy_mac(mac_tmp, rr, mac_size);
                      ^
  1315.               rr->length -= mac_size;
  1316.           } else {

ssl/record/ssl3_record.c:1141:1: Parameter `md_size`
    1139.   #define CBC_MAC_ROTATE_IN_PLACE
    1140.   
    1141. > void ssl3_cbc_copy_mac(unsigned char *out,
    1142.                          const SSL3_RECORD *rec, unsigned md_size)
    1143.   {

ssl/record/ssl3_record.c:1203:26: Call
    1201.           ((volatile unsigned char *)rotated_mac)[rotate_offset ^ 32];
    1202.           out[j++] = rotated_mac[rotate_offset++];
    1203.           rotate_offset &= constant_time_lt(rotate_offset, md_size);
                                     ^
    1204.       }
    1205.   #else

include/internal/constant_time_locl.h:138:1: <LHS trace>
136.   }
137.   
138. > static inline unsigned int constant_time_lt(unsigned int a, unsigned int b)
139.   {
140.       return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));

include/internal/constant_time_locl.h:138:1: Parameter `a`
      136.   }
      137.   
      138. > static inline unsigned int constant_time_lt(unsigned int a, unsigned int b)
      139.   {
      140.       return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));

include/internal/constant_time_locl.h:138:1: <RHS trace>
136.   }
137.   
138. > static inline unsigned int constant_time_lt(unsigned int a, unsigned int b)
139.   {
140.       return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));

include/internal/constant_time_locl.h:138:1: Parameter `b`
      136.   }
      137.   
      138. > static inline unsigned int constant_time_lt(unsigned int a, unsigned int b)
      139.   {
      140.       return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));

include/internal/constant_time_locl.h:140:12: Binary operation: ([0, +oo] - [1, 17728]):unsigned32 by call to `dtls1_process_record` 
      138.   static inline unsigned int constant_time_lt(unsigned int a, unsigned int b)
      139.   {
      140.       return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));
                        ^
      141.   }
      142.   
