mirror of
				https://github.com/cuberite/polarssl.git
				synced 2025-11-04 04:32:24 -05:00 
			
		
		
		
	Add CCM test for calling finish without any input.
Signed-off-by: Mateusz Starzyk <mateusz.starzyk@mobica.com>
This commit is contained in:
		
							parent
							
								
									8fb1754e1a
								
							
						
					
					
						commit
						e0f5227550
					
				@ -1645,3 +1645,15 @@ mbedtls_ccm_incomplete_update:MBEDTLS_CIPHER_ID_AES:MBEDTLS_CCM_STAR_DECRYPT:"b5
 | 
			
		||||
CCM* decrypt, full update and overflow NIST VADT AES-192 #14 (P=24, N=13, A=13, T=16)
 | 
			
		||||
depends_on:MBEDTLS_AES_C
 | 
			
		||||
mbedtls_ccm_full_update_and_overflow:MBEDTLS_CIPHER_ID_AES:MBEDTLS_CCM_STAR_DECRYPT:"b5f43f3ae38a6165f0f990abe9ee50cd9ad7e847a0a51731":"3726c1aaf85ee8099a7ebd3268700e07d4b3f292c65bba34":"13501aebda19a9bf1b5ffaa42a":"ead4c45ff9db54f9902a6de181"
 | 
			
		||||
 | 
			
		||||
CCM encrypt, instant finish NIST VADT AES-192 #14 (P=24, N=13, A=13, T=16)
 | 
			
		||||
mbedtls_ccm_instant_finish:MBEDTLS_CIPHER_ID_AES:MBEDTLS_CCM_ENCRYPT:"b5f43f3ae38a6165f0f990abe9ee50cd9ad7e847a0a51731":"13501aebda19a9bf1b5ffaa42a"
 | 
			
		||||
 | 
			
		||||
CCM decrypt, instant finish NIST VADT AES-192 #14 (P=24, N=13, A=13, T=16)
 | 
			
		||||
mbedtls_ccm_instant_finish:MBEDTLS_CIPHER_ID_AES:MBEDTLS_CCM_DECRYPT:"b5f43f3ae38a6165f0f990abe9ee50cd9ad7e847a0a51731":"13501aebda19a9bf1b5ffaa42a"
 | 
			
		||||
 | 
			
		||||
CCM* encrypt, instant finish NIST VADT AES-192 #14 (P=24, N=13, A=13, T=16)
 | 
			
		||||
mbedtls_ccm_instant_finish:MBEDTLS_CIPHER_ID_AES:MBEDTLS_CCM_STAR_ENCRYPT:"b5f43f3ae38a6165f0f990abe9ee50cd9ad7e847a0a51731":"13501aebda19a9bf1b5ffaa42a"
 | 
			
		||||
 | 
			
		||||
CCM* decrypt, instant finish NIST VADT AES-192 #14 (P=24, N=13, A=13, T=16)
 | 
			
		||||
mbedtls_ccm_instant_finish:MBEDTLS_CIPHER_ID_AES:MBEDTLS_CCM_STAR_DECRYPT:"b5f43f3ae38a6165f0f990abe9ee50cd9ad7e847a0a51731":"13501aebda19a9bf1b5ffaa42a"
 | 
			
		||||
 | 
			
		||||
@ -682,3 +682,27 @@ exit:
 | 
			
		||||
    mbedtls_ccm_free( &ctx );
 | 
			
		||||
}
 | 
			
		||||
/* END_CASE */
 | 
			
		||||
 | 
			
		||||
/* Finish without passing any auth data or plaintext/ciphertext input */
 | 
			
		||||
/* BEGIN_CASE */
 | 
			
		||||
void mbedtls_ccm_instant_finish( int cipher_id, int mode,
 | 
			
		||||
                                 data_t * key, data_t * iv )
 | 
			
		||||
{
 | 
			
		||||
    mbedtls_ccm_context ctx;
 | 
			
		||||
    uint8_t *output = NULL;
 | 
			
		||||
 | 
			
		||||
    mbedtls_ccm_init( &ctx );
 | 
			
		||||
    TEST_EQUAL( mbedtls_ccm_setkey( &ctx, cipher_id, key->x, key->len * 8 ), 0 );
 | 
			
		||||
    TEST_EQUAL( 0, mbedtls_ccm_starts( &ctx, mode, iv->x, iv->len ) );
 | 
			
		||||
    // use hardcoded values for add length, msg length and tag length.
 | 
			
		||||
    // They are not a part of this test
 | 
			
		||||
    TEST_EQUAL( 0, mbedtls_ccm_set_lengths( &ctx, 16, 16, 16 ) );
 | 
			
		||||
 | 
			
		||||
    ASSERT_ALLOC( output, 16 );
 | 
			
		||||
    TEST_EQUAL( MBEDTLS_ERR_CCM_BAD_SEQUENCE, mbedtls_ccm_finish( &ctx, output, 16 ) );
 | 
			
		||||
 | 
			
		||||
exit:
 | 
			
		||||
    mbedtls_free( output );
 | 
			
		||||
    mbedtls_ccm_free( &ctx );
 | 
			
		||||
}
 | 
			
		||||
/* END_CASE */
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user