Lines Matching refs:prf

6852 static psa_status_t psa_tls12_prf_set_seed(psa_tls12_prf_key_derivation_t *prf,
6856 if (prf->state != PSA_TLS12_PRF_STATE_INIT) {
6861 prf->seed = mbedtls_calloc(1, data_length);
6862 if (prf->seed == NULL) {
6866 memcpy(prf->seed, data, data_length);
6867 prf->seed_length = data_length;
6870 prf->state = PSA_TLS12_PRF_STATE_SEED_SET;
6875 static psa_status_t psa_tls12_prf_set_key(psa_tls12_prf_key_derivation_t *prf,
6879 if (prf->state != PSA_TLS12_PRF_STATE_SEED_SET &&
6880 prf->state != PSA_TLS12_PRF_STATE_OTHER_KEY_SET) {
6885 prf->secret = mbedtls_calloc(1, data_length);
6886 if (prf->secret == NULL) {
6890 memcpy(prf->secret, data, data_length);
6891 prf->secret_length = data_length;
6894 prf->state = PSA_TLS12_PRF_STATE_KEY_SET;
6899 static psa_status_t psa_tls12_prf_set_label(psa_tls12_prf_key_derivation_t *prf,
6903 if (prf->state != PSA_TLS12_PRF_STATE_KEY_SET) {
6908 prf->label = mbedtls_calloc(1, data_length);
6909 if (prf->label == NULL) {
6913 memcpy(prf->label, data, data_length);
6914 prf->label_length = data_length;
6917 prf->state = PSA_TLS12_PRF_STATE_LABEL_SET;
6922 static psa_status_t psa_tls12_prf_input(psa_tls12_prf_key_derivation_t *prf,
6929 return psa_tls12_prf_set_seed(prf, data, data_length);
6931 return psa_tls12_prf_set_key(prf, data, data_length);
6933 return psa_tls12_prf_set_label(prf, data, data_length);
6943 psa_tls12_prf_key_derivation_t *prf,
6948 const size_t pms_len = (prf->state == PSA_TLS12_PRF_STATE_OTHER_KEY_SET ?
6949 4 + data_length + prf->other_secret_length :
6980 if (prf->state == PSA_TLS12_PRF_STATE_OTHER_KEY_SET) {
6981 *cur++ = MBEDTLS_BYTE_1(prf->other_secret_length);
6982 *cur++ = MBEDTLS_BYTE_0(prf->other_secret_length);
6983 if (prf->other_secret_length != 0) {
6984 memcpy(cur, prf->other_secret, prf->other_secret_length);
6985 mbedtls_platform_zeroize(prf->other_secret, prf->other_secret_length);
6986 cur += prf->other_secret_length;
7000 status = psa_tls12_prf_set_key(prf, pms, (size_t) (cur - pms));
7007 psa_tls12_prf_key_derivation_t *prf,
7011 if (prf->state != PSA_TLS12_PRF_STATE_SEED_SET) {
7016 prf->other_secret = mbedtls_calloc(1, data_length);
7017 if (prf->other_secret == NULL) {
7021 memcpy(prf->other_secret, data, data_length);
7022 prf->other_secret_length = data_length;
7024 prf->other_secret_length = 0;
7027 prf->state = PSA_TLS12_PRF_STATE_OTHER_KEY_SET;
7033 psa_tls12_prf_key_derivation_t *prf,
7040 return psa_tls12_prf_psk_to_ms_set_key(prf,
7044 return psa_tls12_prf_psk_to_ms_set_other_key(prf,
7049 return psa_tls12_prf_input(prf, step, data, data_length);