| Kea 3.0.2-git

isc::dns::TSIGContext::TSIGContextImpl Struct Reference

## Public Member Functions
| TSIGContextImpl (const TSIGKey &key, TSIGError error=TSIGError::NOERROR())
HMACPtr | createHMAC ()
void | digestDNSMessage (HMACPtr hmac, uint16_t qid, const void *data, size_t data_len) const
void | digestPreviousMAC (HMACPtr hmac)
void | digestTSIGVariables (HMACPtr hmac, uint16_t rrclass, uint32_t rrttl, uint64_t time_signed, uint16_t fudge, uint16_t error, uint16_t otherlen, const void *otherdata, bool time_variables_only) const
TSIGError | postVerifyUpdate (TSIGError error, const void *digest, uint16_t digest_len)

## Public Attributes
size_t | digest_len_
TSIGError | error_
HMACPtr | hmac_
const TSIGKey | key_
int | last_sig_dist_
vector< uint8_t > | previous_digest_
uint64_t | previous_timesigned_
State | state_

## Detailed Description

Definition at line 51 of file tsig.cc.

## Constructor & Destructor Documentation

## ◆ TSIGContextImpl()

isc::dns::TSIGContext::TSIGContextImpl::TSIGContextImpl | ( | const TSIGKey & | key,
|  | TSIGError | error = TSIGError::NOERROR() )
| inline

Definition at line 52 of file tsig.cc.

References createHMAC(), isc::cryptolink::deleteHMAC(), digest_len_, error_, isc::cryptolink::CryptoLink::getCryptoLink(), hmac_, isc::dns::TSIGContext::INIT, key_, last_sig_dist_, isc::dns::TSIGError::NOERROR(), previous_timesigned_, and state_.

Here is the call graph for this function:

## Member Function Documentation

## ◆ createHMAC()

HMACPtr isc::dns::TSIGContext::TSIGContextImpl::createHMAC | ( |  | ) |
| inline

Definition at line 118 of file tsig.cc.

References createHMAC(), isc::cryptolink::deleteHMAC(), isc::cryptolink::CryptoLink::getCryptoLink(), hmac_, and key_.

Referenced by TSIGContextImpl(), and createHMAC().

Here is the call graph for this function:

## ◆ digestDNSMessage()

void isc::dns::TSIGContext::TSIGContextImpl::digestDNSMessage | ( | HMACPtr | hmac,
|  | uint16_t | qid,
|  | const void * | data,
|  | size_t | data_len ) const

Definition at line 240 of file tsig.cc.

References isc::util::OutputBuffer::getData(), isc::util::OutputBuffer::getLength(), isc::util::readUint16(), isc::util::OutputBuffer::writeData(), and isc::util::OutputBuffer::writeUint16().

Here is the call graph for this function:

## ◆ digestPreviousMAC()

void isc::dns::TSIGContext::TSIGContextImpl::digestPreviousMAC | ( | HMACPtr | hmac | ) |

Definition at line 165 of file tsig.cc.

References isc::util::OutputBuffer::getData(), isc::util::OutputBuffer::getLength(), isc_throw_assert, previous_digest_, isc::util::OutputBuffer::writeData(), and isc::util::OutputBuffer::writeUint16().

Here is the call graph for this function:

## ◆ digestTSIGVariables()

void isc::dns::TSIGContext::TSIGContextImpl::digestTSIGVariables | ( | HMACPtr | hmac,
|  | uint16_t | rrclass,
|  | uint32_t | rrttl,
|  | uint64_t | time_signed,
|  | uint16_t | fudge,
|  | uint16_t | error,
|  | uint16_t | otherlen,
|  | const void * | otherdata,
|  | bool | time_variables_only ) const

Definition at line 187 of file tsig.cc.

References isc::util::OutputBuffer::getData(), isc::util::OutputBuffer::getLength(), key_, isc::util::OutputBuffer::writeUint16(), and isc::util::OutputBuffer::writeUint32().

Here is the call graph for this function:

## ◆ postVerifyUpdate()

TSIGError isc::dns::TSIGContext::TSIGContextImpl::postVerifyUpdate | ( | TSIGError | error,
|  | const void * | digest,
|  | uint16_t | digest_len )
| inline

Definition at line 97 of file tsig.cc.

References isc::cryptolink::digest(), error_, isc::dns::TSIGContext::INIT, isc::dns::TSIGError::NOERROR(), previous_digest_, isc::dns::TSIGContext::RECEIVED_REQUEST, isc::dns::TSIGContext::SENT_REQUEST, state_, and isc::dns::TSIGContext::VERIFIED_RESPONSE.

Here is the call graph for this function:

## Member Data Documentation

## ◆ digest_len_

size_t isc::dns::TSIGContext::TSIGContextImpl::digest_len_

Definition at line 156 of file tsig.cc.

Referenced by TSIGContextImpl().

## ◆ error_

TSIGError isc::dns::TSIGContext::TSIGContextImpl::error_

Definition at line 154 of file tsig.cc.

Referenced by TSIGContextImpl(), and postVerifyUpdate().

## ◆ hmac_

HMACPtr isc::dns::TSIGContext::TSIGContextImpl::hmac_

Definition at line 157 of file tsig.cc.

Referenced by TSIGContextImpl(), and createHMAC().

## ◆ key_

const TSIGKey isc::dns::TSIGContext::TSIGContextImpl::key_

Definition at line 152 of file tsig.cc.

Referenced by TSIGContextImpl(), createHMAC(), and digestTSIGVariables().

## ◆ last_sig_dist_

int isc::dns::TSIGContext::TSIGContextImpl::last_sig_dist_

Definition at line 161 of file tsig.cc.

Referenced by TSIGContextImpl().

## ◆ previous_digest_

vector<uint8_t> isc::dns::TSIGContext::TSIGContextImpl::previous_digest_

Definition at line 153 of file tsig.cc.

Referenced by digestPreviousMAC(), and postVerifyUpdate().

## ◆ previous_timesigned_

uint64_t isc::dns::TSIGContext::TSIGContextImpl::previous_timesigned_

Definition at line 155 of file tsig.cc.

Referenced by TSIGContextImpl().

## ◆ state_

State isc::dns::TSIGContext::TSIGContextImpl::state_

Definition at line 151 of file tsig.cc.

Referenced by TSIGContextImpl(), and postVerifyUpdate().

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

- tsig.cc