# CassAuthenticator

### struct CassAuthenticator

An authenticator. 

### Public Functions

### void cass_authenticator_address(const [CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, [CassInet](https://cpp-rs-driver.docs.scylladb.com/stable/api/struct.CassInet.md#_CPPv48CassInet) \*address)

Gets the IP address of the host being authenticated.

**Warning:** This function is not yet implemented.

* **Parameters:**
  * **auth** – **[in]** 
  * **address** – **[out]** 

### const char \*cass_authenticator_hostname(const [CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, size_t \*length)

Gets the hostname of the host being authenticated.

**Warning:** This function is not yet implemented.

* **Parameters:**
  * **auth** – **[in]** 
  * **length** – **[out]** 
* **Returns:**
  A null-terminated string. 

### const char \*cass_authenticator_class_name(const [CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, size_t \*length)

Gets the class name for the server-side IAuthentication implementation.

**Warning:** This function is not yet implemented.

* **Parameters:**
  * **auth** – **[in]** 
  * **length** – **[out]** 
* **Returns:**
  A null-terminated string. 

### void \*cass_authenticator_exchange_data([CassAuthenticator](#_CPPv417CassAuthenticator) \*auth)

Gets the user data created during the authenticator exchange. This is set using [cass_authenticator_set_exchange_data()](#struct_cass_authenticator_1aeb9905fef0aa1cdbc8f92503e9286665).

**Warning:** This function is not yet implemented.

#### SEE ALSO
[cass_authenticator_set_exchange_data()](#struct_cass_authenticator_1aeb9905fef0aa1cdbc8f92503e9286665)

* **Parameters:**
  **auth** – **[in]** 
* **Returns:**
  User specified exchange data previously set by [cass_authenticator_set_exchange_data()](#struct_cass_authenticator_1aeb9905fef0aa1cdbc8f92503e9286665).

### void cass_authenticator_set_exchange_data([CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, void \*exchange_data)

Sets the user data to be used during the authenticator exchange.

**Warning:** This function is not yet implemented.

#### SEE ALSO
[cass_authenticator_exchange_data()](#struct_cass_authenticator_1a70bfabb1da78889d6b0fc5b07de1179f)

* **Parameters:**
  * **auth** – **[in]** 
  * **exchange_data** – 

### char \*cass_authenticator_response([CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, size_t size)

Gets a response token buffer of the provided size.

**Warning:** This function is not yet implemented.

* **Parameters:**
  * **auth** – **[in]** 
  * **size** – **[in]** 
* **Returns:**
  A buffer to copy the response token. 

### void cass_authenticator_set_response([CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, const char \*response, size_t response_size)

Sets the response token.

**Warning:** This function is not yet implemented.

* **Parameters:**
  * **auth** – **[in]** 
  * **response** – **[in]** 
  * **response_size** – **[in]** 

### void cass_authenticator_set_error([CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, const char \*message)

Sets an error for the authenticator exchange.

**Warning:** This function is not yet implemented.

* **Parameters:**
  * **auth** – **[in]** 
  * **message** – **[in]** 

### void cass_authenticator_set_error_n([CassAuthenticator](#_CPPv417CassAuthenticator) \*auth, const char \*message, size_t message_length)

Same as [cass_authenticator_set_error()](#struct_cass_authenticator_1ac925d19d2b4f988e9a428c8f6a4a9455), but with lengths for string parameters.

**Warning:** This function is not yet implemented.

#### SEE ALSO
[cass_authenticator_set_error()](#struct_cass_authenticator_1ac925d19d2b4f988e9a428c8f6a4a9455)

* **Parameters:**
  * **auth** – **[in]** 
  * **message** – **[in]** 
  * **message_length** –
