#include <filters.h>
|
virtual void | send (const uint8_t in[], size_t length) |
|
void | send (uint8_t in) |
|
void | send (const secure_vector< uint8_t > &in) |
|
void | send (const std::vector< uint8_t > &in) |
|
void | send (const secure_vector< uint8_t > &in, size_t length) |
|
void | send (const std::vector< uint8_t > &in, size_t length) |
|
Construct a MAC filter. The MAC key will be left empty.
- Parameters
-
mac | the MAC to use |
out_len | the output length of this filter. Leave the default value 0 if you want to use the full output of the MAC. Otherwise, specify a smaller value here so that the output of the MAC will be cut off. |
Definition at line 158 of file filters.h.
Construct a MAC filter.
- Parameters
-
mac | the MAC to use |
key | the MAC key to use |
out_len | the output length of this filter. Leave the default value 0 if you want to use the full output of the MAC. Otherwise, specify a smaller value here so that the output of the MAC will be cut off. |
Definition at line 174 of file filters.h.
References m_mac.
Botan::MAC_Filter::MAC_Filter |
( |
const std::string & |
mac, |
|
|
size_t |
len = 0 |
|
) |
| |
Construct a MAC filter. The MAC key will be left empty.
- Parameters
-
mac | the name of the MAC to use |
len | the output length of this filter. Leave the default value 0 if you want to use the full output of the MAC. Otherwise, specify a smaller value here so that the output of the MAC will be cut off. |
Definition at line 66 of file algo_filt.cpp.
static std::unique_ptr< MessageAuthenticationCode > create_or_throw(const std::string &algo_spec, const std::string &provider="")
Botan::MAC_Filter::MAC_Filter |
( |
const std::string & |
mac, |
|
|
const SymmetricKey & |
key, |
|
|
size_t |
len = 0 |
|
) |
| |
Construct a MAC filter.
- Parameters
-
mac | the name of the MAC to use |
key | the MAC key to use |
len | the output length of this filter. Leave the default value 0 if you want to use the full output of the MAC. Otherwise, specify a smaller value here so that the output of the MAC will be cut off. |
Definition at line 72 of file algo_filt.cpp.
static std::unique_ptr< MessageAuthenticationCode > create_or_throw(const std::string &algo_spec, const std::string &provider="")
virtual bool Botan::Filter::attachable |
( |
| ) |
|
|
inlinevirtualinherited |
void Botan::MAC_Filter::end_msg |
( |
| ) |
|
|
overridevirtual |
Notify that the current message is finished; flush buffers and do end-of-message processing (if any).
Reimplemented from Botan::Filter.
Definition at line 79 of file algo_filt.cpp.
References Botan::Filter::send().
81 secure_vector<uint8_t> output = m_mac->final();
83 send(output, std::min<size_t>(m_out_len, output.size()));
virtual void send(const uint8_t in[], size_t length)
std::string Botan::MAC_Filter::name |
( |
| ) |
const |
|
inlineoverridevirtual |
- Returns
- descriptive name for this filter
Implements Botan::Filter.
Definition at line 140 of file filters.h.
References m_mac.
140 {
return m_mac->name(); }
void Botan::Filter::send |
( |
const uint8_t |
in[], |
|
|
size_t |
length |
|
) |
| |
|
protectedvirtualinherited |
- Parameters
-
in | some input for the filter |
length | the length of in |
Definition at line 27 of file filter.cpp.
References Botan::Filter::write().
Referenced by Botan::Hex_Encoder::end_msg(), Botan::Base64_Encoder::end_msg(), Botan::Hex_Decoder::end_msg(), Botan::Base64_Decoder::end_msg(), Botan::Hash_Filter::end_msg(), end_msg(), Botan::StreamCipher_Filter::write(), Botan::Hex_Decoder::write(), and Botan::Base64_Decoder::write().
32 bool nothing_attached =
true;
33 for(
size_t j = 0; j != total_ports(); ++j)
36 if(m_write_queue.size())
37 m_next[j]->
write(m_write_queue.data(), m_write_queue.size());
38 m_next[j]->write(input, length);
39 nothing_attached =
false;
43 m_write_queue += std::make_pair(input, length);
45 m_write_queue.clear();
virtual void write(const uint8_t input[], size_t length)=0
void Botan::Filter::send |
( |
uint8_t |
in | ) |
|
|
inlineprotectedinherited |
void Botan::Filter::send |
( |
const std::vector< uint8_t > & |
in | ) |
|
|
inlineprotectedinherited |
void Botan::Filter::send |
( |
const secure_vector< uint8_t > & |
in, |
|
|
size_t |
length |
|
) |
| |
|
inlineprotectedinherited |
- Parameters
-
in | some input for the filter |
length | the number of bytes of in to send |
Definition at line 81 of file filter.h.
83 send(in.data(), length);
virtual void send(const uint8_t in[], size_t length)
void Botan::Filter::send |
( |
const std::vector< uint8_t > & |
in, |
|
|
size_t |
length |
|
) |
| |
|
inlineprotectedinherited |
- Parameters
-
in | some input for the filter |
length | the number of bytes of in to send |
Definition at line 90 of file filter.h.
92 send(in.data(), length);
virtual void send(const uint8_t in[], size_t length)
virtual void Botan::Filter::start_msg |
( |
| ) |
|
|
inlinevirtualinherited |
Start a new message. Must be closed by end_msg() before another message can be started.
Definition at line 40 of file filter.h.
virtual bool Botan::Keyed_Filter::valid_iv_length |
( |
size_t |
length | ) |
const |
|
inlinevirtualinherited |
bool Botan::Keyed_Filter::valid_keylength |
( |
size_t |
length | ) |
const |
|
inlineinherited |
Check whether a key length is valid for this filter
- Parameters
-
length | the key length to be checked for validity |
- Returns
- true if the key length is valid, false otherwise
Definition at line 42 of file key_filt.h.
bool valid_keylength(size_t length) const
virtual Key_Length_Specification key_spec() const =0
void Botan::MAC_Filter::write |
( |
const uint8_t |
input[], |
|
|
size_t |
length |
|
) |
| |
|
inlineoverridevirtual |
Write a portion of a message to this filter.
- Parameters
-
input | the input as a byte array |
length | the length of the byte array input |
Implements Botan::Filter.
Definition at line 137 of file filters.h.
References m_mac.
137 { m_mac->update(input, len); }
The documentation for this class was generated from the following files: