• M
    Make sure we trigger retransmits in DTLS testing · f9ad0abb
    Matt Caswell 提交于
    During a DTLS handshake we may need to periodically handle timeouts in the
    DTLS timer to ensure retransmits due to lost packets are performed. However,
    one peer will always complete a handshake before the other. The DTLS timer
    stops once the handshake has finished so any handshake messages lost after
    that point will not automatically get retransmitted simply by calling
    DTLSv1_handle_timeout(). However attempting an SSL_read implies a
    DTLSv1_handle_timeout() and additionally will process records received from
    the peer. If those records are themselves retransmits then we know that the
    peer has not completed its handshake yet and a retransmit of our final
    flight automatically occurs.
    Reviewed-by: NPaul Dale <paul.dale@oracle.com>
    (Merged from https://github.com/openssl/openssl/pull/8047)
    
    (cherry picked from commit 80c455d5ae405e855391e298a2bf8a24629dd95d)
    f9ad0abb
dtlstest.c 10.9 KB