mirror of
				https://github.com/cuberite/polarssl.git
				synced 2025-11-04 04:32:24 -05:00 
			
		
		
		
	Merge remote-tracking branch 'public/pr/1970' into development
This commit is contained in:
		
						commit
						c86993e33c
					
				@ -1,5 +1,14 @@
 | 
			
		||||
mbed TLS ChangeLog (Sorted per branch, date)
 | 
			
		||||
 | 
			
		||||
= mbed TLS x.x.x branch released xxxx-xx-xx
 | 
			
		||||
 | 
			
		||||
Bugfix
 | 
			
		||||
   * Fix a bug in the update function for SSL ticket keys which previously
 | 
			
		||||
     invalidated keys of a lifetime of less than a 1s. Fixes #1968.
 | 
			
		||||
 | 
			
		||||
Changes
 | 
			
		||||
   * Add tests for session resumption in DTLS.
 | 
			
		||||
 | 
			
		||||
= mbed TLS 2.13.1 branch released 2018-09-06
 | 
			
		||||
 | 
			
		||||
API Changes
 | 
			
		||||
 | 
			
		||||
@ -97,7 +97,7 @@ static int ssl_ticket_update_keys( mbedtls_ssl_ticket_context *ctx )
 | 
			
		||||
        uint32_t current_time = (uint32_t) mbedtls_time( NULL );
 | 
			
		||||
        uint32_t key_time = ctx->keys[ctx->active].generation_time;
 | 
			
		||||
 | 
			
		||||
        if( current_time > key_time &&
 | 
			
		||||
        if( current_time >= key_time &&
 | 
			
		||||
            current_time - key_time < ctx->ticket_lifetime )
 | 
			
		||||
        {
 | 
			
		||||
            return( 0 );
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										160
									
								
								tests/ssl-opt.sh
									
									
									
									
									
								
							
							
						
						
									
										160
									
								
								tests/ssl-opt.sh
									
									
									
									
									
								
							@ -1504,6 +1504,71 @@ run_test    "Session resume using tickets: openssl client" \
 | 
			
		||||
            -s "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
# Tests for Session Tickets with DTLS
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using tickets, DTLS: basic" \
 | 
			
		||||
            "$P_SRV debug_level=3 dtls=1 tickets=1" \
 | 
			
		||||
            "$P_CLI debug_level=3 dtls=1 tickets=1 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -c "client hello, adding session ticket extension" \
 | 
			
		||||
            -s "found session ticket extension" \
 | 
			
		||||
            -s "server hello, adding session ticket extension" \
 | 
			
		||||
            -c "found session_ticket extension" \
 | 
			
		||||
            -c "parse new session ticket" \
 | 
			
		||||
            -S "session successfully restored from cache" \
 | 
			
		||||
            -s "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using tickets, DTLS: cache disabled" \
 | 
			
		||||
            "$P_SRV debug_level=3 dtls=1 tickets=1 cache_max=0" \
 | 
			
		||||
            "$P_CLI debug_level=3 dtls=1 tickets=1 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -c "client hello, adding session ticket extension" \
 | 
			
		||||
            -s "found session ticket extension" \
 | 
			
		||||
            -s "server hello, adding session ticket extension" \
 | 
			
		||||
            -c "found session_ticket extension" \
 | 
			
		||||
            -c "parse new session ticket" \
 | 
			
		||||
            -S "session successfully restored from cache" \
 | 
			
		||||
            -s "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using tickets, DTLS: timeout" \
 | 
			
		||||
            "$P_SRV debug_level=3 dtls=1 tickets=1 cache_max=0 ticket_timeout=1" \
 | 
			
		||||
            "$P_CLI debug_level=3 dtls=1 tickets=1 reconnect=1 reco_delay=2" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -c "client hello, adding session ticket extension" \
 | 
			
		||||
            -s "found session ticket extension" \
 | 
			
		||||
            -s "server hello, adding session ticket extension" \
 | 
			
		||||
            -c "found session_ticket extension" \
 | 
			
		||||
            -c "parse new session ticket" \
 | 
			
		||||
            -S "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -S "a session has been resumed" \
 | 
			
		||||
            -C "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using tickets, DTLS: openssl server" \
 | 
			
		||||
            "$O_SRV -dtls1" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=1 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -c "client hello, adding session ticket extension" \
 | 
			
		||||
            -c "found session_ticket extension" \
 | 
			
		||||
            -c "parse new session ticket" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using tickets, DTLS: openssl client" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=1" \
 | 
			
		||||
            "( $O_CLI -dtls1 -sess_out $SESSION; \
 | 
			
		||||
               $O_CLI -dtls1 -sess_in $SESSION; \
 | 
			
		||||
               rm -f $SESSION )" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -s "found session ticket extension" \
 | 
			
		||||
            -s "server hello, adding session ticket extension" \
 | 
			
		||||
            -S "session successfully restored from cache" \
 | 
			
		||||
            -s "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
# Tests for Session Resume based on session-ID and cache
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache: tickets enabled on client" \
 | 
			
		||||
@ -1599,6 +1664,101 @@ run_test    "Session resume using cache: openssl server" \
 | 
			
		||||
            -C "parse new session ticket" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
# Tests for Session Resume based on session-ID and cache, DTLS
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: tickets enabled on client" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=0" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=1 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -c "client hello, adding session ticket extension" \
 | 
			
		||||
            -s "found session ticket extension" \
 | 
			
		||||
            -S "server hello, adding session ticket extension" \
 | 
			
		||||
            -C "found session_ticket extension" \
 | 
			
		||||
            -C "parse new session ticket" \
 | 
			
		||||
            -s "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: tickets enabled on server" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=1" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=0 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -C "client hello, adding session ticket extension" \
 | 
			
		||||
            -S "found session ticket extension" \
 | 
			
		||||
            -S "server hello, adding session ticket extension" \
 | 
			
		||||
            -C "found session_ticket extension" \
 | 
			
		||||
            -C "parse new session ticket" \
 | 
			
		||||
            -s "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: cache_max=0" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=0 cache_max=0" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=0 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -S "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -S "a session has been resumed" \
 | 
			
		||||
            -C "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: cache_max=1" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=0 cache_max=1" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=0 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -s "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: timeout > delay" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=0" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=0 reconnect=1 reco_delay=0" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -s "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: timeout < delay" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=0 cache_timeout=1" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=0 reconnect=1 reco_delay=2" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -S "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -S "a session has been resumed" \
 | 
			
		||||
            -C "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: no timeout" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=0 cache_timeout=0" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=0 reconnect=1 reco_delay=2" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -s "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: openssl client" \
 | 
			
		||||
            "$P_SRV dtls=1 debug_level=3 tickets=0" \
 | 
			
		||||
            "( $O_CLI -dtls1 -sess_out $SESSION; \
 | 
			
		||||
               $O_CLI -dtls1 -sess_in $SESSION; \
 | 
			
		||||
               rm -f $SESSION )" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -s "found session ticket extension" \
 | 
			
		||||
            -S "server hello, adding session ticket extension" \
 | 
			
		||||
            -s "session successfully restored from cache" \
 | 
			
		||||
            -S "session successfully restored from ticket" \
 | 
			
		||||
            -s "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
run_test    "Session resume using cache, DTLS: openssl server" \
 | 
			
		||||
            "$O_SRV -dtls1" \
 | 
			
		||||
            "$P_CLI dtls=1 debug_level=3 tickets=0 reconnect=1" \
 | 
			
		||||
            0 \
 | 
			
		||||
            -C "found session_ticket extension" \
 | 
			
		||||
            -C "parse new session ticket" \
 | 
			
		||||
            -c "a session has been resumed"
 | 
			
		||||
 | 
			
		||||
# Tests for Max Fragment Length extension
 | 
			
		||||
 | 
			
		||||
if [ "$MAX_CONTENT_LEN" -lt "4096" ]; then
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user