ssl/d1_lib.c:640: error: INTEGER_OVERFLOW_L2
  ([1, +oo] - 8):unsigned64 by call to `PACKET_copy_bytes`.
Showing all 20 steps of the trace


ssl/d1_lib.c:593:14: Call
591.           clearpkt = 1;
592.   
593.           if (!PACKET_buf_init(&pkt, buf, n)) {
                    ^
594.               SSLerr(SSL_F_DTLS1_LISTEN, ERR_R_INTERNAL_ERROR);
595.               return -1;

ssl/packet_locl.h:110:8: Parameter `pkt->remaining`
  108.    * is being used.
  109.    */
  110.   __owur static inline int PACKET_buf_init(PACKET *pkt, unsigned char *buf,
                ^
  111.                                            size_t len)
  112.   {

ssl/d1_lib.c:618:14: Call
616.   
617.           /* Get the record header */
618.           if (!PACKET_get_1(&pkt, &rectype)
                    ^
619.               || !PACKET_get_1(&pkt, &versmajor)) {
620.               SSLerr(SSL_F_DTLS1_LISTEN, SSL_R_LENGTH_MISMATCH);

ssl/packet_locl.h:267:8: Parameter `pkt->remaining`
  265.   
  266.   /* Get 1 byte from |pkt| and store the value in |*data| */
  267.   __owur static inline int PACKET_get_1(PACKET *pkt, unsigned int *data)
                ^
  268.   {
  269.       if (!PACKET_peek_1(pkt, data))

ssl/packet_locl.h:269:10: Call
  267.   __owur static inline int PACKET_get_1(PACKET *pkt, unsigned int *data)
  268.   {
  269.       if (!PACKET_peek_1(pkt, data))
                  ^
  270.           return 0;
  271.   

ssl/packet_locl.h:256:8: Parameter `pkt->remaining`
    254.   
    255.   /* Peek ahead at 1 byte from |pkt| and store the value in |*data| */
    256.   __owur static inline int PACKET_peek_1(const PACKET *pkt, unsigned int *data)
                  ^
    257.   {
    258.       if (!PACKET_remaining(pkt))

ssl/d1_lib.c:619:17: Call
617.           /* Get the record header */
618.           if (!PACKET_get_1(&pkt, &rectype)
619.               || !PACKET_get_1(&pkt, &versmajor)) {
                       ^
620.               SSLerr(SSL_F_DTLS1_LISTEN, SSL_R_LENGTH_MISMATCH);
621.               goto end;

ssl/packet_locl.h:267:8: Parameter `pkt->remaining`
  265.   
  266.   /* Get 1 byte from |pkt| and store the value in |*data| */
  267.   __owur static inline int PACKET_get_1(PACKET *pkt, unsigned int *data)
                ^
  268.   {
  269.       if (!PACKET_peek_1(pkt, data))

ssl/packet_locl.h:269:10: Call
  267.   __owur static inline int PACKET_get_1(PACKET *pkt, unsigned int *data)
  268.   {
  269.       if (!PACKET_peek_1(pkt, data))
                  ^
  270.           return 0;
  271.   

ssl/packet_locl.h:256:8: Parameter `pkt->remaining`
    254.   
    255.   /* Peek ahead at 1 byte from |pkt| and store the value in |*data| */
    256.   __owur static inline int PACKET_peek_1(const PACKET *pkt, unsigned int *data)
                  ^
    257.   {
    258.       if (!PACKET_remaining(pkt))

ssl/d1_lib.c:638:14: Call
636.           }
637.   
638.           if (!PACKET_forward(&pkt, 1)
                    ^
639.               /* Save the sequence number: 64 bits, with top 2 bytes = epoch */
640.               || !PACKET_copy_bytes(&pkt, seq, SEQ_NUM_SIZE)

ssl/packet_locl.h:440:8: Parameter `len`
  438.   
  439.   /* Move the current reading position forward |len| bytes */
  440.   __owur static inline int PACKET_forward(PACKET *pkt, size_t len)
                ^
  441.   {
  442.       if (PACKET_remaining(pkt) < len)

ssl/d1_lib.c:640:17: Call
638.           if (!PACKET_forward(&pkt, 1)
639.               /* Save the sequence number: 64 bits, with top 2 bytes = epoch */
640.               || !PACKET_copy_bytes(&pkt, seq, SEQ_NUM_SIZE)
                       ^
641.               || !PACKET_get_length_prefixed_2(&pkt, &msgpkt)
642.               || PACKET_remaining(&pkt) != 0) {

ssl/packet_locl.h:359:8: Parameter `len`
  357.    * The caller is responsible for ensuring that |data| can hold |len| bytes.
  358.    */
  359.   __owur static inline int PACKET_copy_bytes(PACKET *pkt, unsigned char *data,
                ^
  360.                                              size_t len)
  361.   {

ssl/packet_locl.h:365:5: Call
  363.           return 0;
  364.   
  365.       packet_forward(pkt, len);
             ^
  366.   
  367.       return 1;

ssl/packet_locl.h:80:1: <LHS trace>
78.   
79.   /* Internal unchecked shorthand; don't use outside this file. */
80. > static inline void packet_forward(PACKET *pkt, size_t len)
81.   {
82.       pkt->curr += len;

ssl/packet_locl.h:80:1: Parameter `pkt->remaining`
    78.   
    79.   /* Internal unchecked shorthand; don't use outside this file. */
    80. > static inline void packet_forward(PACKET *pkt, size_t len)
    81.   {
    82.       pkt->curr += len;

ssl/packet_locl.h:80:1: <RHS trace>
78.   
79.   /* Internal unchecked shorthand; don't use outside this file. */
80. > static inline void packet_forward(PACKET *pkt, size_t len)
81.   {
82.       pkt->curr += len;

ssl/packet_locl.h:80:1: Parameter `len`
    78.   
    79.   /* Internal unchecked shorthand; don't use outside this file. */
    80. > static inline void packet_forward(PACKET *pkt, size_t len)
    81.   {
    82.       pkt->curr += len;

ssl/packet_locl.h:83:5: Binary operation: ([1, +oo] - 8):unsigned64 by call to `PACKET_copy_bytes` 
    81.   {
    82.       pkt->curr += len;
    83.       pkt->remaining -= len;
              ^
    84.   }
    85.   
