Contains common definitions for the Quantum Secure Cryptographic (QSC) library. More...
#include <assert.h>#include <errno.h>#include <limits.h>#include <stdbool.h>#include <stddef.h>#include <stdint.h>Go to the source code of this file.
Macros | |
| #define | QSC_CPLUSPLUS_ENABLED_START |
| #define | QSC_CPLUSPLUS_ENABLED_END |
| #define | QSC_ASSERT(expr) |
| #define | QSC_PRAGMA_STR(x) |
| The stringify function. | |
| #define | QSC_NO_INLINE |
| Tells the compiler not to inline a function. | |
| #define | QSC_SYSTEM_SOCKETS_BERKELEY |
| Defined when using Berkeley sockets. | |
| #define | QSC_ATTRIBUTE(a) |
| #define | QSC_EXPORT_API |
| API export macro for Microsoft compilers when importing from a DLL. | |
| #define | QSC_SYSTEM_IS_X86 |
| Defined when the target system is 32-bit. | |
| #define | QSC_SIZE_MAX UINT32_MAX |
| The maximum integer size for a 32-bit system. | |
| #define | QSC_SYSTEM_IS_LITTLE_ENDIAN |
| Defined if the system is little endian. | |
| #define | QSC_SYSTEM_MAX_NAME 260ULL |
| The maximum system name length supported by the system. | |
| #define | QSC_SYSTEM_MAX_PATH 260ULL |
| The maximum path length supported by the system. | |
| #define | QSC_SYSTEM_SECMEMALLOC_DEFAULT 4096ULL |
| Default secure memory buffer allocation size (in bytes). | |
| #define | QSC_SYSTEM_SECMEMALLOC_MIN 16ULL |
| Minimum secure memory allocation size (in bytes). | |
| #define | QSC_SYSTEM_SECMEMALLOC_MAX 131072ULL |
| Maximum secure memory allocation size (in bytes). | |
| #define | QSC_SYSTEM_SECMEMALLOC_MAXKB 512ULL |
| Maximum secure memory allocation in kilobytes. | |
| #define | QSC_SYSTEM_OPTIMIZE_IGNORE |
| Compiler hint to disable optimization in MSVC. | |
| #define | QSC_SYSTEM_OPTIMIZE_RESUME |
| Compiler hint to resume optimization in MSVC. | |
| #define | QSC_SYSTEM_CONDITION_IGNORE(x) |
| A macro to disable a specific warning condition. | |
| #define | QSC_SYSTEM_CONDITION_RESUME(x) |
| A macro to re-enable a specific warning condition. | |
| #define | QSC_ALIGN(x) |
| Macro for aligning data to 'x' bytes using GCC/Clang. | |
| #define | QSC_SIMD_ALIGNMENT 8 |
| Alignment value for enabled intrinsic. | |
| #define | QSC_SIMD_ALIGN |
| Macro to align data on supported intrinsics size. | |
| #define | QSC_STATUS_SUCCESS 0LL |
| Function return value indicating successful operation. | |
| #define | QSC_STATUS_FAILURE -1LL |
| Function return value indicating failed operation. | |
| #define | QSC_EDDH_RFC_7748_COMPLIANT |
| #define | QSC_EDDH_S1EC25519 |
| Enable the EDDH S1EC25519 parameter set. | |
| #define | QSC_KYBER_S5K4P1024 |
| Enable the Kyber S5K4P1024 parameter set. | |
| #define | QSC_HQC_S5N7333 |
| Enable the HQC S5N57637 parameter set. | |
| #define | QSC_MCELIECE_S5N6688T128 |
| Enable the McEliece S5-N6688T128 parameter set. | |
| #define | QSC_DILITHIUM_S5P87 |
| Enable the Dilithium S5P87 parameter set. | |
| #define | QSC_ECDSA_S5P521 |
| Enable the ECDSA S1P521 (NIST P-521) parameter set. | |
| #define | QSC_EDDSA_S1EC25519 |
| Enable the EDDSA S1EC25519 parameter set. | |
| #define | QSC_FALCON_S5SHAKE256F1024 |
| Enable the Falcon S5SHAKE256F1024 parameter set. | |
| #define | QSC_SPHINCSPLUS_S5S256SHAKERS |
| Enable the SphincsPlus S5S256SHAKERS robust small parameter set. | |
Typedefs | |
| typedef int | errno_t |
Contains common definitions for the Quantum Secure Cryptographic (QSC) library.
This file provides common macros, type definitions, compiler/OS/architecture detection, API export macros, alignment macros, secure memory allocation definitions, and other utility macros. These definitions are used throughout the QSC library to ensure portability and performance.
| #define QSC_ASSERT | ( | expr | ) |
| #define QSC_PRAGMA_STR | ( | x | ) |
The stringify function.