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


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

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

ssl/record/ssl3_record.c:1358:1: Parameter `s->rlayer.rrec.length`
  1356.   }
  1357.   
  1358. > int dtls1_process_record(SSL *s)
  1359.   {
  1360.       int i, al;

ssl/record/ssl3_record.c:1454:13: Call
  1452.                */
  1453.               mac = mac_tmp;
  1454.               ssl3_cbc_copy_mac(mac_tmp, rr, mac_size);
                      ^
  1455.               rr->length -= mac_size;
  1456.           } else {

ssl/record/ssl3_record.c:1281:1: <LHS trace>
1279.   #define CBC_MAC_ROTATE_IN_PLACE
1280.   
1281. > void ssl3_cbc_copy_mac(unsigned char *out,
1282.                          const SSL3_RECORD *rec, unsigned md_size)
1283.   {

ssl/record/ssl3_record.c:1281:1: Parameter `rec->length`
    1279.   #define CBC_MAC_ROTATE_IN_PLACE
    1280.   
    1281. > void ssl3_cbc_copy_mac(unsigned char *out,
    1282.                          const SSL3_RECORD *rec, unsigned md_size)
    1283.   {

ssl/record/ssl3_record.c:1294:5: Assignment
    1292.        * mac_end is the index of |rec->data| just after the end of the MAC.
    1293.        */
    1294.       unsigned mac_end = rec->length;
                ^
    1295.       unsigned mac_start = mac_end - md_size;
    1296.       /*

ssl/record/ssl3_record.c:1281:1: <RHS trace>
1279.   #define CBC_MAC_ROTATE_IN_PLACE
1280.   
1281. > void ssl3_cbc_copy_mac(unsigned char *out,
1282.                          const SSL3_RECORD *rec, unsigned md_size)
1283.   {

ssl/record/ssl3_record.c:1281:1: Parameter `md_size`
    1279.   #define CBC_MAC_ROTATE_IN_PLACE
    1280.   
    1281. > void ssl3_cbc_copy_mac(unsigned char *out,
    1282.                          const SSL3_RECORD *rec, unsigned md_size)
    1283.   {

ssl/record/ssl3_record.c:1295:5: Binary operation: ([0, 17728] - [0, 17728]):unsigned32 by call to `dtls1_process_record` 
    1293.        */
    1294.       unsigned mac_end = rec->length;
    1295.       unsigned mac_start = mac_end - md_size;
                ^
    1296.       /*
    1297.        * scan_start contains the number of bytes that we can ignore because the
