libdecaf
|
A reference to a block of data, which (when accessed through this base class) is const. More...
Public Member Functions | |
Block () | |
Null initialization. | |
Block (const char *data) DECAF_NOEXCEPT | |
Init from C string. | |
Block (const unsigned char *data, size_t size, bool zero_on_destroy=false) DECAF_NOEXCEPT | |
Unowned init. | |
Block (const std::string &s) | |
Block from std::string. | |
template<class alloc > | |
Block (const std::vector< unsigned char, alloc > &s) | |
Block from std::vector. | |
const unsigned char * | data () const DECAF_NOEXCEPT |
Get const data. | |
const unsigned char & | operator[] (size_t off) const |
Subscript. | |
size_t | size () const DECAF_NOEXCEPT |
Get the size. | |
std::string | get_string () const |
Convert to C++ string. | |
Block | slice (size_t off, size_t length) const |
Slice the buffer. | |
decaf_bool_t | contents_equal (const Block &b) const DECAF_NOEXCEPT |
Content-wise comparison; constant-time if they are the same length. | |
operator SecureBuffer () const | |
Create new block from this. | |
void | zeroize () DECAF_NOEXCEPT |
Securely set the buffer to 0. | |
void | debug_print_hex (const char *name=NULL) |
Debugging print in hex. | |
A reference to a block of data, which (when accessed through this base class) is const.