19 #ifndef GRPC_CORE_TSI_ALTS_ZERO_COPY_FRAME_PROTECTOR_ALTS_IOVEC_RECORD_PROTOCOL_H 20 #define GRPC_CORE_TSI_ALTS_ZERO_COPY_FRAME_PROTECTOR_ALTS_IOVEC_RECORD_PROTOCOL_H 94 char** error_details);
115 char** error_details);
136 size_t unprotected_vec_length,
iovec_t protected_frame,
137 char** error_details);
159 const iovec_t* protected_vec,
size_t protected_vec_length,
160 iovec_t unprotected_data,
char** error_details);
189 char** error_details);
grpc_status_code alts_iovec_record_protocol_create(gsec_aead_crypter *crypter, size_t overflow_size, bool is_client, bool is_integrity_only, bool is_protect, alts_iovec_record_protocol **rp, char **error_details)
This method creates an alts_iovec_record_protocol instance, given a gsec_aead_crypter instance...
Definition: alts_iovec_record_protocol.cc:427
grpc_status_code alts_iovec_record_protocol_integrity_only_unprotect(alts_iovec_record_protocol *rp, const iovec_t *protected_vec, size_t protected_vec_length, iovec_t header, iovec_t tag, char **error_details)
This method performs integrity-only unprotect operation on a alts_iovec_record_protocol instance...
Definition: alts_iovec_record_protocol.cc:241
void alts_iovec_record_protocol_destroy(alts_iovec_record_protocol *rp)
This method destroys an alts_iovec_record_protocol instance by de-allocating all of its occupied memo...
Definition: alts_iovec_record_protocol.cc:470
size_t alts_iovec_record_protocol_max_unprotected_data_size(const alts_iovec_record_protocol *rp, size_t max_protected_frame_size)
This method returns maximum allowed unprotected data size, given maximum protected frame size...
Definition: alts_iovec_record_protocol.cc:175
constexpr size_t kZeroCopyFrameLengthFieldSize
Definition: alts_iovec_record_protocol.h:29
constexpr size_t kZeroCopyFrameMessageTypeFieldSize
Definition: alts_iovec_record_protocol.h:30
bool is_protect
Definition: alts_iovec_record_protocol.cc:36
constexpr size_t kAltsRecordProtocolFrameLimit
Definition: alts_iovec_record_protocol.h:36
Definition: alts_iovec_record_protocol.cc:31
constexpr size_t kZeroCopyFrameHeaderSize
Definition: alts_iovec_record_protocol.h:31
grpc_status_code alts_iovec_record_protocol_privacy_integrity_unprotect(alts_iovec_record_protocol *rp, iovec_t header, const iovec_t *protected_vec, size_t protected_vec_length, iovec_t unprotected_data, char **error_details)
This method performs privacy-integrity unprotect operation on a alts_iovec_record_protocol instance g...
Definition: alts_iovec_record_protocol.cc:355
bool is_integrity_only
Definition: alts_iovec_record_protocol.cc:35
size_t alts_iovec_record_protocol_get_tag_length(const alts_iovec_record_protocol *rp)
This method gets the length of record protocol frame tag.
Definition: alts_iovec_record_protocol.cc:167
constexpr size_t kZeroCopyFrameMessageType
Definition: alts_iovec_record_protocol.h:28
gsec_aead_crypter * crypter
Definition: alts_iovec_record_protocol.cc:33
constexpr size_t kAltsRecordProtocolRekeyFrameLimit
Definition: alts_iovec_record_protocol.h:35
size_t alts_iovec_record_protocol_get_header_length()
This method gets the length of record protocol frame header.
Definition: alts_iovec_record_protocol.cc:163
grpc_status_code
Definition: status.h:26
grpc_status_code alts_iovec_record_protocol_privacy_integrity_protect(alts_iovec_record_protocol *rp, const iovec_t *unprotected_vec, size_t unprotected_vec_length, iovec_t protected_frame, char **error_details)
This method performs privacy-integrity protect operation on a alts_iovec_record_protocol instance...
Definition: alts_iovec_record_protocol.cc:289
grpc_status_code alts_iovec_record_protocol_integrity_only_protect(alts_iovec_record_protocol *rp, const iovec_t *unprotected_vec, size_t unprotected_vec_length, iovec_t header, iovec_t tag, char **error_details)
This method performs integrity-only protect operation on a alts_iovec_record_protocol instance...
Definition: alts_iovec_record_protocol.cc:186