| /* BEGIN_HEADER */ |
| #include "mbedtls/crc.h" |
| /* END_HEADER */ |
| |
| /* BEGIN_DEPENDENCIES |
| * depends_on:MBEDTLS_CRC_C |
| * END_DEPENDENCIES |
| */ |
| |
| /* BEGIN_CASE */ |
| void compute_crc( data_t *input, unsigned int crc ) |
| { |
| uint16_t result = mbedtls_crc_update( 0, input->x, input->len ); |
| uint32_t len = input->len; |
| TEST_ASSERT( crc == result ); |
| |
| result = 0; |
| while( len > 0 ) |
| { |
| uint8_t cur_len = ( len > 8 ? 8 : len ); |
| result = mbedtls_crc_update( result, &input->x[ input->len - len ], cur_len ); |
| len -= cur_len; |
| } |
| TEST_ASSERT( crc == result ); |
| } |
| /* END_CASE */ |