Botan  2.19.1
Crypto and TLS for C++11
Namespaces | Macros | Functions
commoncrypto_hash.cpp File Reference
#include <botan/internal/commoncrypto.h>
#include <botan/hash.h>
#include <unordered_map>
#include <CommonCrypto/CommonCrypto.h>

Go to the source code of this file.

Namespaces

 Botan
 

Macros

#define MAKE_COMMONCRYPTO_HASH_1(id)   MAKE_COMMONCRYPTO_HASH_2(#id, id)
 
#define MAKE_COMMONCRYPTO_HASH_2(name, id)   MAKE_COMMONCRYPTO_HASH_3(name, id, id)
 
#define MAKE_COMMONCRYPTO_HASH_3(name, hash, ctx)
 

Functions

std::unique_ptr< HashFunction > Botan::make_commoncrypto_hash (const std::string &name)
 

Macro Definition Documentation

#define MAKE_COMMONCRYPTO_HASH_1 (   id)    MAKE_COMMONCRYPTO_HASH_2(#id, id)
#define MAKE_COMMONCRYPTO_HASH_2 (   name,
  id 
)    MAKE_COMMONCRYPTO_HASH_3(name, id, id)
#define MAKE_COMMONCRYPTO_HASH_3 (   name,
  hash,
  ctx 
)
Value:
std::unique_ptr<HashFunction>( \
new CommonCrypto_HashFunction<CC_ ## ctx ## _CTX >({ \
CC_ ## hash ## _DIGEST_LENGTH, \
CC_ ## hash ## _BLOCK_BYTES, \
CC_ ## hash ## _Init, \
CC_ ## hash ## _Update, \
CC_ ## hash ## _Final \
}));
std::string name
MechanismType hash

Referenced by Botan::make_commoncrypto_hash().

Variable Documentation

size_t blockSize

Definition at line 26 of file commoncrypto_hash.cpp.

size_t digestLength

Definition at line 25 of file commoncrypto_hash.cpp.

int(* final) (unsigned char *, CTX *)

Definition at line 29 of file commoncrypto_hash.cpp.

int(* init) (CTX *)
CTX m_ctx
digest_config_t m_info

Definition at line 92 of file commoncrypto_hash.cpp.

std::string name
int(* update) (CTX *, const void *, CC_LONG len)