ssl/d1_lib.c:691: error: INTEGER_OVERFLOW_L2
  ([2, +oo] - 32):unsigned64 by call to `PACKET_forward`.
Showing all 26 steps of the trace


ssl/d1_lib.c:642:17: Call
640.               || !PACKET_get_net_3(&msgpkt, &fragoff)
641.               || !PACKET_get_net_3(&msgpkt, &fraglen)
642.               || !PACKET_get_sub_packet(&msgpkt, &msgpayload, fraglen)
                       ^
643.               || PACKET_remaining(&msgpkt) != 0) {
644.               SSLerr(SSL_F_DTLSV1_LISTEN, SSL_R_LENGTH_MISMATCH);

ssl/packet_locl.h:162:8: Parameter `subpkt->remaining`
  160.    * original |pkt|, so data wrapped by |pkt| must outlive the |subpkt|.
  161.    */
  162.   __owur static ossl_inline int PACKET_get_sub_packet(PACKET *pkt,
                ^
  163.                                                       PACKET *subpkt,
  164.                                                       size_t len)

ssl/packet_locl.h:166:10: Call
  164.                                                       size_t len)
  165.   {
  166.       if (!PACKET_peek_sub_packet(pkt, subpkt, len))
                  ^
  167.           return 0;
  168.   

ssl/packet_locl.h:147:8: Parameter `subpkt->remaining`
    145.    * the original |pkt|, so data wrapped by |pkt| must outlive the |subpkt|.
    146.    */
    147.   __owur static ossl_inline int PACKET_peek_sub_packet(const PACKET *pkt,
                  ^
    148.                                                        PACKET *subpkt,
    149.                                                        size_t len)

ssl/d1_lib.c:677:14: Call
675.                               s->msg_callback_arg);
676.   
677.           if (!PACKET_get_net_2(&msgpayload, &clientvers)) {
                    ^
678.               SSLerr(SSL_F_DTLSV1_LISTEN, SSL_R_LENGTH_MISMATCH);
679.               goto end;

ssl/packet_locl.h:192:8: Parameter `pkt->remaining`
  190.   /* Equivalent of n2s */
  191.   /* Get 2 bytes in network order from |pkt| and store the value in |*data| */
  192.   __owur static ossl_inline int PACKET_get_net_2(PACKET *pkt,
                ^
  193.                                                  unsigned int *data)
  194.   {

ssl/packet_locl.h:195:10: Call
  193.                                                  unsigned int *data)
  194.   {
  195.       if (!PACKET_peek_net_2(pkt, data))
                  ^
  196.           return 0;
  197.   

ssl/packet_locl.h:178:8: Parameter `pkt->remaining`
    176.    * |*data|
    177.    */
    178.   __owur static ossl_inline int PACKET_peek_net_2(const PACKET *pkt,
                  ^
    179.                                                   unsigned int *data)
    180.   {

ssl/d1_lib.c:691:14: Call
689.           }
690.   
691.           if (!PACKET_forward(&msgpayload, SSL3_RANDOM_SIZE)
                    ^
692.               || !PACKET_get_length_prefixed_1(&msgpayload, &session)
693.               || !PACKET_get_length_prefixed_1(&msgpayload, &cookiepkt)) {

ssl/packet_locl.h:456:8: Parameter `len`
  454.   
  455.   /* Move the current reading position forward |len| bytes */
  456.   __owur static ossl_inline int PACKET_forward(PACKET *pkt, size_t len)
                ^
  457.   {
  458.       if (PACKET_remaining(pkt) < len)

ssl/d1_lib.c:642:17: Call
640.               || !PACKET_get_net_3(&msgpkt, &fragoff)
641.               || !PACKET_get_net_3(&msgpkt, &fraglen)
642.               || !PACKET_get_sub_packet(&msgpkt, &msgpayload, fraglen)
                       ^
643.               || PACKET_remaining(&msgpkt) != 0) {
644.               SSLerr(SSL_F_DTLSV1_LISTEN, SSL_R_LENGTH_MISMATCH);

ssl/packet_locl.h:162:8: Parameter `subpkt->remaining`
  160.    * original |pkt|, so data wrapped by |pkt| must outlive the |subpkt|.
  161.    */
  162.   __owur static ossl_inline int PACKET_get_sub_packet(PACKET *pkt,
                ^
  163.                                                       PACKET *subpkt,
  164.                                                       size_t len)

ssl/packet_locl.h:166:10: Call
  164.                                                       size_t len)
  165.   {
  166.       if (!PACKET_peek_sub_packet(pkt, subpkt, len))
                  ^
  167.           return 0;
  168.   

ssl/packet_locl.h:147:8: Parameter `subpkt->remaining`
    145.    * the original |pkt|, so data wrapped by |pkt| must outlive the |subpkt|.
    146.    */
    147.   __owur static ossl_inline int PACKET_peek_sub_packet(const PACKET *pkt,
                  ^
    148.                                                        PACKET *subpkt,
    149.                                                        size_t len)

ssl/d1_lib.c:677:14: Call
675.                               s->msg_callback_arg);
676.   
677.           if (!PACKET_get_net_2(&msgpayload, &clientvers)) {
                    ^
678.               SSLerr(SSL_F_DTLSV1_LISTEN, SSL_R_LENGTH_MISMATCH);
679.               goto end;

ssl/packet_locl.h:192:8: Parameter `pkt->remaining`
  190.   /* Equivalent of n2s */
  191.   /* Get 2 bytes in network order from |pkt| and store the value in |*data| */
  192.   __owur static ossl_inline int PACKET_get_net_2(PACKET *pkt,
                ^
  193.                                                  unsigned int *data)
  194.   {

ssl/packet_locl.h:195:10: Call
  193.                                                  unsigned int *data)
  194.   {
  195.       if (!PACKET_peek_net_2(pkt, data))
                  ^
  196.           return 0;
  197.   

ssl/packet_locl.h:178:8: Parameter `pkt->remaining`
    176.    * |*data|
    177.    */
    178.   __owur static ossl_inline int PACKET_peek_net_2(const PACKET *pkt,
                  ^
    179.                                                   unsigned int *data)
    180.   {

ssl/d1_lib.c:691:14: Call
689.           }
690.   
691.           if (!PACKET_forward(&msgpayload, SSL3_RANDOM_SIZE)
                    ^
692.               || !PACKET_get_length_prefixed_1(&msgpayload, &session)
693.               || !PACKET_get_length_prefixed_1(&msgpayload, &cookiepkt)) {

ssl/packet_locl.h:456:8: Parameter `len`
  454.   
  455.   /* Move the current reading position forward |len| bytes */
  456.   __owur static ossl_inline int PACKET_forward(PACKET *pkt, size_t len)
                ^
  457.   {
  458.       if (PACKET_remaining(pkt) < len)

ssl/packet_locl.h:461:5: Call
  459.           return 0;
  460.   
  461.       packet_forward(pkt, len);
             ^
  462.   
  463.       return 1;

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

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

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

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

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