mirror of
				https://github.com/cuberite/polarssl.git
				synced 2025-10-30 19:20:40 -04:00 
			
		
		
		
	Refactoring after CR and new unit test #3175
Signed-off-by: Victor Krasnoshchok <ct3da21164@protonmail.ch>
This commit is contained in:
		
							parent
							
								
									e79812ed4d
								
							
						
					
					
						commit
						b3129ba119
					
				| @ -466,25 +466,32 @@ int mbedtls_entropy_update_nv_seed( mbedtls_entropy_context *ctx ) | |||||||
| #if defined(MBEDTLS_FS_IO) | #if defined(MBEDTLS_FS_IO) | ||||||
| int mbedtls_entropy_write_seed_file( mbedtls_entropy_context *ctx, const char *path ) | int mbedtls_entropy_write_seed_file( mbedtls_entropy_context *ctx, const char *path ) | ||||||
| { | { | ||||||
|     int ret; |     int ret = 0; | ||||||
|     FILE *f = NULL; |     FILE *f = NULL; | ||||||
|     unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE]; |     unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE]; | ||||||
| 
 | 
 | ||||||
|     if( ( ret = mbedtls_entropy_func( ctx, buf, MBEDTLS_ENTROPY_BLOCK_SIZE ) ) != 0 ) |     if( ( ret = mbedtls_entropy_func( ctx, buf, MBEDTLS_ENTROPY_BLOCK_SIZE ) ) != 0 ) | ||||||
|         goto exit; |  | ||||||
| 
 |  | ||||||
|     ret = MBEDTLS_ERR_ENTROPY_FILE_IO_ERROR; |  | ||||||
|     if( ( f = fopen( path, "wb" ) ) != NULL ) |  | ||||||
|     { |     { | ||||||
|         if( fwrite( buf, 1, MBEDTLS_ENTROPY_BLOCK_SIZE, f ) != MBEDTLS_ENTROPY_BLOCK_SIZE ) |         ret = MBEDTLS_ERR_ENTROPY_SOURCE_FAILED; | ||||||
|             goto exit; |         goto exit; | ||||||
|         ret = 0; |     } | ||||||
|  | 
 | ||||||
|  |     if( ( f = fopen( path, "wb" ) ) == NULL ) | ||||||
|  |     { | ||||||
|  |         ret = MBEDTLS_ERR_ENTROPY_FILE_IO_ERROR; | ||||||
|  |         goto exit; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     if( fwrite( buf, 1, MBEDTLS_ENTROPY_BLOCK_SIZE, f ) != MBEDTLS_ENTROPY_BLOCK_SIZE ) | ||||||
|  |     { | ||||||
|  |         ret = MBEDTLS_ERR_ENTROPY_FILE_IO_ERROR; | ||||||
|  |         goto exit; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| exit: | exit: | ||||||
|     mbedtls_platform_zeroize( buf, sizeof( buf ) ); |     mbedtls_platform_zeroize( buf, sizeof( buf ) ); | ||||||
| 
 | 
 | ||||||
|     if( f ) |     if( f != NULL ) | ||||||
|         fclose( f ); |         fclose( f ); | ||||||
| 
 | 
 | ||||||
|     return( ret ); |     return( ret ); | ||||||
|  | |||||||
| @ -7,6 +7,9 @@ entropy_seed_file:"data_files/entropy_seed":0 | |||||||
| Entropy write/update seed file: nonexistent | Entropy write/update seed file: nonexistent | ||||||
| entropy_seed_file:"no_such_dir/file":MBEDTLS_ERR_ENTROPY_FILE_IO_ERROR | entropy_seed_file:"no_such_dir/file":MBEDTLS_ERR_ENTROPY_FILE_IO_ERROR | ||||||
| 
 | 
 | ||||||
|  | Entropy write/update seed file: base NV seed file | ||||||
|  | entropy_write_base_seed_file:0 | ||||||
|  | 
 | ||||||
| Entropy no sources | Entropy no sources | ||||||
| entropy_no_sources: | entropy_no_sources: | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -149,6 +149,21 @@ exit: | |||||||
| } | } | ||||||
| /* END_CASE */ | /* END_CASE */ | ||||||
| 
 | 
 | ||||||
|  | /* BEGIN_CASE depends_on:MBEDTLS_ENTROPY_NV_SEED:MBEDTLS_FS_IO */ | ||||||
|  | void entropy_write_base_seed_file( int ret ) | ||||||
|  | { | ||||||
|  |     mbedtls_entropy_context ctx; | ||||||
|  | 
 | ||||||
|  |     mbedtls_entropy_init( &ctx ); | ||||||
|  | 
 | ||||||
|  |     TEST_ASSERT( mbedtls_entropy_write_seed_file( &ctx, MBEDTLS_PLATFORM_STD_NV_SEED_FILE ) == ret ); | ||||||
|  |     TEST_ASSERT( mbedtls_entropy_update_seed_file( &ctx, MBEDTLS_PLATFORM_STD_NV_SEED_FILE ) == ret ); | ||||||
|  | 
 | ||||||
|  | exit: | ||||||
|  |     mbedtls_entropy_free( &ctx ); | ||||||
|  | } | ||||||
|  | /* END_CASE */ | ||||||
|  | 
 | ||||||
| /* BEGIN_CASE */ | /* BEGIN_CASE */ | ||||||
| void entropy_no_sources( ) | void entropy_no_sources( ) | ||||||
| { | { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Victor Krasnoshchok
						Victor Krasnoshchok