diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/ouroboros/config.h.in | 4 | ||||
| -rw-r--r-- | include/ouroboros/hash.h | 27 | ||||
| -rw-r--r-- | include/ouroboros/ipcp.h | 17 | 
3 files changed, 34 insertions, 14 deletions
| diff --git a/include/ouroboros/config.h.in b/include/ouroboros/config.h.in index 0957ee4d..881410eb 100644 --- a/include/ouroboros/config.h.in +++ b/include/ouroboros/config.h.in @@ -37,6 +37,10 @@  #define IPCP_NORMAL_EXEC       "@IPCP_NORMAL_TARGET@"  #define IPCP_LOCAL_EXEC        "@IPCP_LOCAL_TARGET@"  #cmakedefine HAVE_ROBUST_MUTEX +#cmakedefine HAVE_SYS_RANDOM +#cmakedefine HAVE_LIBGCRYPT +#cmakedefine HAVE_OPENSSL +#cmakedefine HAVE_NETMAP  #define AP_MAX_FLOWS           2048  #define AP_RES_FDS             64  #define AP_MAX_FQUEUES         64 diff --git a/include/ouroboros/hash.h b/include/ouroboros/hash.h index 456a93f3..6d3f98a3 100644 --- a/include/ouroboros/hash.h +++ b/include/ouroboros/hash.h @@ -25,11 +25,30 @@  #define OUROBOROS_LIB_HASH_H  #include <ouroboros/endian.h> -#include <ouroboros/ipcp.h> -#include <ouroboros/crc32.h> -#include <ouroboros/md5.h> -#include <ouroboros/sha3.h> +#ifdef HAVE_LIBGCRYPT +#include <gcrypt.h> +#endif +#include <stdint.h> + +/* Hash algorithms */ +enum hash_algo { +#ifdef HAVE_LIBGCRYPT +        HASH_CRC32    = GCRY_MD_CRC32, +        HASH_MD5      = GCRY_MD_MD5, +        HASH_SHA3_224 = GCRY_MD_SHA3_224, +        HASH_SHA3_256 = GCRY_MD_SHA3_256, +        HASH_SHA3_384 = GCRY_MD_SHA3_384, +        HASH_SHA3_512 = GCRY_MD_SHA3_512 +#else +        HASH_CRC32 = 0, +        HASH_MD5, +        HASH_SHA3_224, +        HASH_SHA3_256, +        HASH_SHA3_384, +        HASH_SHA3_512 +#endif +};  #define HASH_FMT "%02x%02x%02x%02x"  #define HASH_VAL(hash)                                    \ diff --git a/include/ouroboros/ipcp.h b/include/ouroboros/ipcp.h index 1b775a63..7c34cc7d 100644 --- a/include/ouroboros/ipcp.h +++ b/include/ouroboros/ipcp.h @@ -52,22 +52,19 @@ enum pol_routing {          LINK_STATE = 0  }; -/* Hash algorithms */ -enum hash_algo { -        HASH_CRC32 = 0, -        HASH_MD5, -        HASH_SHA3_224, -        HASH_SHA3_256, -        HASH_SHA3_384, -        HASH_SHA3_512 +enum pol_dir_hash { +        DIR_HASH_SHA3_224 = 0, +        DIR_HASH_SHA3_256, +        DIR_HASH_SHA3_384, +        DIR_HASH_SHA3_512  };  #define DIF_NAME_SIZE 256  /* Info reported back to the IRMd about the DIF on enrollment */  struct dif_info { -        char           dif_name[DIF_NAME_SIZE]; -        enum hash_algo dir_hash_algo; +        char              dif_name[DIF_NAME_SIZE]; +        enum pol_dir_hash dir_hash_algo;  };  /* Structure to configure the first IPCP */ | 
