#pragma once /** * @brief WireGuard key 最大长度 */ constexpr auto WG_KEY_MAX = (64); /** * @brief 操作系统最大网卡数 */ #define NET_CARD_MAX (32) /** * @brief IP 字符串最大长度(支持IPv6) */ #define MAX_IP_LEN (48) /** * @brief IP 字符串最小长度 */ #define MIN_IP_LEN (7) /** * @brief 网卡名称字符串最大长度(支持IPv6) */ #define MAX_NETCARD_NAME (64) /** * @brief 协议加密类型 * */ typedef enum { CRYPTO_NONE = 0, ///< 不加密 CRYPTO_BASE64 = 1, ///< BASE64 字符串编码 CRYPTO_AES128 = 2, ///< AES 128位秘钥 加密 CRYPTO_3DES = 3, ///< 3DES 加密 CRYPTO_AES256 = 4, ///< AES 256 位秘钥加密 CRYPTO_MAX, } PROTO_CRYPTO_TYPE; /** * @brief 日志等级 * */ enum LOG_LEVEL { LOG_TRACE = 0, ///< TRACE 日志等级 LOG_DEBUG, ///< DEBUG 日志等级 LOG_INFO, ///< INFO 日志等级 LOG_WARN, ///< WARN 日志等级 LOG_ERROR, ///< ERROR 日志等级 LOG_CRITICAL, ///< CRITICAL 日志等级 LOG_OFF ///< 关闭日志 }; /** * @brief Hash 算法类型 * */ typedef enum { HASH_MD2 = 0, ///< MD2 HASH 算法 HASH_MD4, ///< MD4 HASH 算法 HASH_MD5, ///< MD5 HASH 算法 HASH_SHA1, ///< SHA1 HASH 算法 HASH_SHA256, ///< SHA256 HASH 算法 HASH_SHA384, ///< SHA384 HASH 算法 HASH_SHA512 ///< SHA512 HASH 算法 } HASH_TYPE; typedef enum { CHK_SYSTEM_INIT, CHK_WIREGUARD_CONFIG, CHK_WIREGUARD_SERVICE, CHK_WG_INTERFACE_PRIVATE, CHK_MAX } CHECK_FUNCTION;