Lines Matching refs:transform
498 mbedtls_ssl_transform *transform = ssl->transform_negotiate; in mbedtls_ssl_derive_keys() local
503 cipher_info = mbedtls_cipher_info_from_type( transform->ciphersuite_info->cipher ); in mbedtls_ssl_derive_keys()
507 transform->ciphersuite_info->cipher ) ); in mbedtls_ssl_derive_keys()
511 md_info = mbedtls_md_info_from_type( transform->ciphersuite_info->mac ); in mbedtls_ssl_derive_keys()
515 transform->ciphersuite_info->mac ) ); in mbedtls_ssl_derive_keys()
543 transform->ciphersuite_info->mac == MBEDTLS_MD_SHA384 ) in mbedtls_ssl_derive_keys()
678 transform->keylen = cipher_info->key_bitlen / 8; in mbedtls_ssl_derive_keys()
683 transform->maclen = 0; in mbedtls_ssl_derive_keys()
685 transform->ivlen = 12; in mbedtls_ssl_derive_keys()
686 transform->fixed_ivlen = 4; in mbedtls_ssl_derive_keys()
689 transform->minlen = transform->ivlen - transform->fixed_ivlen in mbedtls_ssl_derive_keys()
690 + ( transform->ciphersuite_info->flags & in mbedtls_ssl_derive_keys()
696 if( ( ret = mbedtls_md_setup( &transform->md_ctx_enc, md_info, 1 ) ) != 0 || in mbedtls_ssl_derive_keys()
697 ( ret = mbedtls_md_setup( &transform->md_ctx_dec, md_info, 1 ) ) != 0 ) in mbedtls_ssl_derive_keys()
704 transform->maclen = mbedtls_md_get_size( md_info ); in mbedtls_ssl_derive_keys()
713 transform->maclen = MBEDTLS_SSL_TRUNCATED_HMAC_LEN; in mbedtls_ssl_derive_keys()
717 transform->ivlen = cipher_info->iv_size; in mbedtls_ssl_derive_keys()
721 transform->minlen = transform->maclen; in mbedtls_ssl_derive_keys()
733 transform->minlen = transform->maclen in mbedtls_ssl_derive_keys()
739 transform->minlen = transform->maclen in mbedtls_ssl_derive_keys()
741 - transform->maclen % cipher_info->block_size; in mbedtls_ssl_derive_keys()
754 transform->minlen += transform->ivlen; in mbedtls_ssl_derive_keys()
766 transform->keylen, transform->minlen, transform->ivlen, in mbedtls_ssl_derive_keys()
767 transform->maclen ) ); in mbedtls_ssl_derive_keys()
775 key1 = keyblk + transform->maclen * 2; in mbedtls_ssl_derive_keys()
776 key2 = keyblk + transform->maclen * 2 + transform->keylen; in mbedtls_ssl_derive_keys()
779 mac_dec = keyblk + transform->maclen; in mbedtls_ssl_derive_keys()
784 iv_copy_len = ( transform->fixed_ivlen ) ? in mbedtls_ssl_derive_keys()
785 transform->fixed_ivlen : transform->ivlen; in mbedtls_ssl_derive_keys()
786 memcpy( transform->iv_enc, key2 + transform->keylen, iv_copy_len ); in mbedtls_ssl_derive_keys()
787 memcpy( transform->iv_dec, key2 + transform->keylen + iv_copy_len, in mbedtls_ssl_derive_keys()
795 key1 = keyblk + transform->maclen * 2 + transform->keylen; in mbedtls_ssl_derive_keys()
796 key2 = keyblk + transform->maclen * 2; in mbedtls_ssl_derive_keys()
798 mac_enc = keyblk + transform->maclen; in mbedtls_ssl_derive_keys()
804 iv_copy_len = ( transform->fixed_ivlen ) ? in mbedtls_ssl_derive_keys()
805 transform->fixed_ivlen : transform->ivlen; in mbedtls_ssl_derive_keys()
806 memcpy( transform->iv_dec, key1 + transform->keylen, iv_copy_len ); in mbedtls_ssl_derive_keys()
807 memcpy( transform->iv_enc, key1 + transform->keylen + iv_copy_len, in mbedtls_ssl_derive_keys()
820 if( transform->maclen > sizeof transform->mac_enc ) in mbedtls_ssl_derive_keys()
826 memcpy( transform->mac_enc, mac_enc, transform->maclen ); in mbedtls_ssl_derive_keys()
827 memcpy( transform->mac_dec, mac_dec, transform->maclen ); in mbedtls_ssl_derive_keys()
835 mbedtls_md_hmac_starts( &transform->md_ctx_enc, mac_enc, transform->maclen ); in mbedtls_ssl_derive_keys()
836 mbedtls_md_hmac_starts( &transform->md_ctx_dec, mac_dec, transform->maclen ); in mbedtls_ssl_derive_keys()
852 if( ( ret = mbedtls_ssl_hw_record_init( ssl, key1, key2, transform->keylen, in mbedtls_ssl_derive_keys()
853 transform->iv_enc, transform->iv_dec, in mbedtls_ssl_derive_keys()
856 transform->maclen ) ) != 0 ) in mbedtls_ssl_derive_keys()
869 transform->maclen, transform->keylen, in mbedtls_ssl_derive_keys()
874 if( ( ret = mbedtls_cipher_setup( &transform->cipher_ctx_enc, in mbedtls_ssl_derive_keys()
881 if( ( ret = mbedtls_cipher_setup( &transform->cipher_ctx_dec, in mbedtls_ssl_derive_keys()
888 if( ( ret = mbedtls_cipher_setkey( &transform->cipher_ctx_enc, key1, in mbedtls_ssl_derive_keys()
896 if( ( ret = mbedtls_cipher_setkey( &transform->cipher_ctx_dec, key2, in mbedtls_ssl_derive_keys()
907 if( ( ret = mbedtls_cipher_set_padding_mode( &transform->cipher_ctx_enc, in mbedtls_ssl_derive_keys()
914 if( ( ret = mbedtls_cipher_set_padding_mode( &transform->cipher_ctx_dec, in mbedtls_ssl_derive_keys()
944 memset( &transform->ctx_deflate, 0, sizeof( transform->ctx_deflate ) ); in mbedtls_ssl_derive_keys()
945 memset( &transform->ctx_inflate, 0, sizeof( transform->ctx_inflate ) ); in mbedtls_ssl_derive_keys()
947 if( deflateInit( &transform->ctx_deflate, in mbedtls_ssl_derive_keys()
949 inflateInit( &transform->ctx_inflate ) != Z_OK ) in mbedtls_ssl_derive_keys()
4954 if( ssl->transform ) in ssl_handshake_wrapup_free_hs_transform()
4956 mbedtls_ssl_transform_free( ssl->transform ); in ssl_handshake_wrapup_free_hs_transform()
4957 mbedtls_free( ssl->transform ); in ssl_handshake_wrapup_free_hs_transform()
4959 ssl->transform = ssl->transform_negotiate; in ssl_handshake_wrapup_free_hs_transform()
5268 static void ssl_transform_init( mbedtls_ssl_transform *transform ) in ssl_transform_init() argument
5270 memset( transform, 0, sizeof(mbedtls_ssl_transform) ); in ssl_transform_init()
5272 mbedtls_cipher_init( &transform->cipher_ctx_enc ); in ssl_transform_init()
5273 mbedtls_cipher_init( &transform->cipher_ctx_dec ); in ssl_transform_init()
5275 mbedtls_md_init( &transform->md_ctx_enc ); in ssl_transform_init()
5276 mbedtls_md_init( &transform->md_ctx_dec ); in ssl_transform_init()
5523 if( ssl->transform ) in ssl_session_reset_int()
5525 mbedtls_ssl_transform_free( ssl->transform ); in ssl_session_reset_int()
5526 mbedtls_free( ssl->transform ); in ssl_session_reset_int()
5527 ssl->transform = NULL; in ssl_session_reset_int()
6224 const mbedtls_ssl_transform *transform = ssl->transform_out; in mbedtls_ssl_get_record_expansion() local
6231 if( transform == NULL ) in mbedtls_ssl_get_record_expansion()
6234 switch( mbedtls_cipher_get_cipher_mode( &transform->cipher_ctx_enc ) ) in mbedtls_ssl_get_record_expansion()
6239 transform_expansion = transform->minlen; in mbedtls_ssl_get_record_expansion()
6243 transform_expansion = transform->maclen in mbedtls_ssl_get_record_expansion()
6244 + mbedtls_cipher_get_block_size( &transform->cipher_ctx_enc ); in mbedtls_ssl_get_record_expansion()
6918 void mbedtls_ssl_transform_free( mbedtls_ssl_transform *transform ) in mbedtls_ssl_transform_free() argument
6920 if( transform == NULL ) in mbedtls_ssl_transform_free()
6924 deflateEnd( &transform->ctx_deflate ); in mbedtls_ssl_transform_free()
6925 inflateEnd( &transform->ctx_inflate ); in mbedtls_ssl_transform_free()
6928 mbedtls_cipher_free( &transform->cipher_ctx_enc ); in mbedtls_ssl_transform_free()
6929 mbedtls_cipher_free( &transform->cipher_ctx_dec ); in mbedtls_ssl_transform_free()
6931 mbedtls_md_free( &transform->md_ctx_enc ); in mbedtls_ssl_transform_free()
6932 mbedtls_md_free( &transform->md_ctx_dec ); in mbedtls_ssl_transform_free()
6934 mbedtls_zeroize( transform, sizeof( mbedtls_ssl_transform ) ); in mbedtls_ssl_transform_free()
7077 if( ssl->transform ) in mbedtls_ssl_free()
7079 mbedtls_ssl_transform_free( ssl->transform ); in mbedtls_ssl_free()
7080 mbedtls_free( ssl->transform ); in mbedtls_ssl_free()