MySQL 8.0.39
Source Code Documentation
keyring_proxy::Keyring_proxy_imp Class Reference

A class that implements proxy keyring component services and calls keyring plugin APIs underneath. More...

Static Public Member Functions

static mysql_service_status_t generate (const char *data_id, const char *auth_id, const char *data_type, size_t data_size) noexcept
 Generate data and store in keyring. More...
 
static mysql_service_status_t init (my_h_keyring_keys_metadata_iterator *forward_iterator) noexcept
 Forward iterator initialization. More...
 
static mysql_service_status_t deinit (my_h_keyring_keys_metadata_iterator forward_iterator) noexcept
 Iterator deinitialization. More...
 
static mysql_service_status_t is_valid (my_h_keyring_keys_metadata_iterator forward_iterator) noexcept
 Validity of iterator. More...
 
static mysql_service_status_t next (my_h_keyring_keys_metadata_iterator forward_iterator) noexcept
 
static mysql_service_status_t get_length (my_h_keyring_keys_metadata_iterator forward_iterator, size_t *data_id_length, size_t *auth_id_length) noexcept
 Fetch metadata for current key pointed by iterator and move the iterator forward. More...
 
static mysql_service_status_t get (my_h_keyring_keys_metadata_iterator forward_iterator, char *data_id, size_t data_id_length, char *auth_id, size_t auth_id_length) noexcept
 Fetch metadata for current key pointed by iterator and move the iterator forward. More...
 
static mysql_service_status_t reader_init (const char *data_id, const char *auth_id, my_h_keyring_reader_object *reader_object) noexcept
 Initialize reader. More...
 
static mysql_service_status_t reader_deinit (my_h_keyring_reader_object reader_object) noexcept
 Deinitialize reader. More...
 
static mysql_service_status_t fetch_length (my_h_keyring_reader_object reader_object, size_t *data_size, size_t *data_type_size) noexcept
 Fetch length of the data. More...
 
static mysql_service_status_t fetch (my_h_keyring_reader_object reader_object, unsigned char *data_buffer, size_t data_buffer_length, size_t *data_size, char *data_type, size_t data_type_buffer_length, size_t *data_type_size) noexcept
 Fetches data from keyring. More...
 
static mysql_service_status_t store (const char *data_id, const char *auth_id, const unsigned char *data, size_t data_size, const char *data_type) noexcept
 Store data in keyring. More...
 
static mysql_service_status_t remove (const char *data_id, const char *auth_id) noexcept
 Remove data from keyring. More...
 
static mysql_service_status_t keyring_status () noexcept
 Keyring status. More...
 

Detailed Description

A class that implements proxy keyring component services and calls keyring plugin APIs underneath.

Methods assume that keyring access check has been performed.

Member Function Documentation

◆ deinit()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::deinit ( my_h_keyring_keys_metadata_iterator  forward_iterator)
inlinestaticnoexcept

Iterator deinitialization.

Note: forward_iterator should not be used after call to deinit

Parameters
[in,out]forward_iteratormetadata iterator
Returns
Status of the operation
Return values
trueSuccess
falseFailure

◆ fetch()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::fetch ( my_h_keyring_reader_object  reader_object,
unsigned char *  data_buffer,
size_t  data_buffer_length,
size_t *  data_size,
char *  data_type,
size_t  data_type_buffer_length,
size_t *  data_type_size 
)
inlinestaticnoexcept

Fetches data from keyring.

Parameters
[in]reader_objectreader object
[out]data_bufferOut buffer for data
[in]data_buffer_lengthLength of out buffer
[out]data_sizeSize of fetched data
[out]data_typeData type buffer
[in]data_type_buffer_lengthDatatype buffer length
[in]data_type_sizeSize of data type buffer
Returns
status of the operation
Return values
trueSuccess
falseFailure

◆ fetch_length()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::fetch_length ( my_h_keyring_reader_object  reader_object,
size_t *  data_size,
size_t *  data_type_size 
)
inlinestaticnoexcept

Fetch length of the data.

Parameters
[in]reader_objectreader object
[out]data_sizeSize of fetched data
[out]data_type_sizeSize of data type
Returns
status of the operation
Return values
trueSuccess
falseFailure

◆ generate()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::generate ( const char *  data_id,
const char *  auth_id,
const char *  data_type,
size_t  data_size 
)
inlinestaticnoexcept

Generate data and store in keyring.

Parameters
[in]data_idData Identifier
[in]auth_idAuthorization ID
[in]data_typeType of data. Assumed null terminated.
[in]data_sizeSize of the data to be generated
Returns
status of the operation
Return values
trueSuccess - Key generated and stored in keyring.
falseFailure

◆ get()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::get ( my_h_keyring_keys_metadata_iterator  forward_iterator,
char *  data_id,
size_t  data_id_length,
char *  auth_id,
size_t  auth_id_length 
)
inlinestaticnoexcept

Fetch metadata for current key pointed by iterator and move the iterator forward.

Parameters
[in]forward_iteratorforward_iterator metadata iterator
[out]data_idID information of current data
[in]data_id_lengthLength of data_id buffer
[out]auth_idOwner of the key
[in]auth_id_lengthLength of auth_id buffer
Returns
Status of the operation
Return values
trueSuccess
falseFailure

◆ get_length()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::get_length ( my_h_keyring_keys_metadata_iterator  forward_iterator,
size_t *  data_id_length,
size_t *  auth_id_length 
)
inlinestaticnoexcept

Fetch metadata for current key pointed by iterator and move the iterator forward.

Parameters
[in]forward_iteratorforward_iterator metadata iterator
[out]data_id_lengthID information of current data
[out]auth_id_lengthOwner of the key
Returns
Status of the operation
Return values
trueSuccess
falseFailure

◆ init()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::init ( my_h_keyring_keys_metadata_iterator forward_iterator)
inlinestaticnoexcept

Forward iterator initialization.

Parameters
[out]forward_iteratormetadata iterator
Returns
Status of the operation
Return values
trueSuccess
falseFailure

◆ is_valid()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::is_valid ( my_h_keyring_keys_metadata_iterator  forward_iterator)
inlinestaticnoexcept

Validity of iterator.

Parameters
[in]forward_iteratorMetadata iterator handle
Returns
always returns true

◆ keyring_status()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::keyring_status ( )
inlinestaticnoexcept

Keyring status.

Returns
status whether keyring is active or not

◆ next()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::next ( my_h_keyring_keys_metadata_iterator  forward_iterator)
inlinestaticnoexcept
Parameters
[in,out]forward_iteratorIterator object
Returns
status of next operation
Return values
trueSuccess
falseEnd of iterator

◆ reader_deinit()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::reader_deinit ( my_h_keyring_reader_object  reader_object)
inlinestaticnoexcept

Deinitialize reader.

Parameters
[in]reader_objectReader object
Returns
status of the operation
Return values
trueSuccess
falseFailure

◆ reader_init()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::reader_init ( const char *  data_id,
const char *  auth_id,
my_h_keyring_reader_object reader_object 
)
inlinestaticnoexcept

Initialize reader.

Parameters
[in]data_idData Identifier
[in]auth_idAuthorization ID
[out]reader_objectReader object
Returns
status of the operation
Return values
trueSuccess
falseFailure

◆ remove()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::remove ( const char *  data_id,
const char *  auth_id 
)
inlinestaticnoexcept

Remove data from keyring.

Parameters
[in]data_idData Identifier
[in]auth_idAuthorization ID
Returns
status of the operation
Return values
trueSuccess - Key removed successfully or key not present.
falseFailure

◆ store()

static mysql_service_status_t keyring_proxy::Keyring_proxy_imp::store ( const char *  data_id,
const char *  auth_id,
const unsigned char *  data,
size_t  data_size,
const char *  data_type 
)
inlinestaticnoexcept

Store data in keyring.

Parameters
[in]data_idData Identifier
[in]auth_idAuthorization ID
[in]dataData to be stored
[in]data_sizeSize of data to be stored
[in]data_typeType of data
Returns
status of the operation
Return values
trueSuccess
falseFailure

The documentation for this class was generated from the following file: