32 #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
33 #define ARCH_LITTLE_ENDIAN
35 #define ARCH_BIG_ENDIAN
38 #if defined(__UINT64_TYPE__) && !defined(NATIVE_64BITS)
50 #ifdef ARCH_LITTLE_ENDIAN
115 #define CX_LAST (1 << 0)
120 #define CX_SIG_MODE (1 << 1)
125 #define CX_MASK_SIGCRYPT (3 << 1)
126 #define CX_ENCRYPT (2 << 1)
127 #define CX_DECRYPT (0 << 1)
128 #define CX_SIGN (CX_SIG_MODE | CX_ENCRYPT)
129 #define CX_VERIFY (CX_SIG_MODE | CX_DECRYPT)
134 #define CX_MASK_PAD (7 << 3)
135 #define CX_PAD_NONE (0 << 3)
136 #define CX_PAD_ISO9797M1 (1 << 3)
137 #define CX_PAD_ISO9797M2 (2 << 3)
138 #define CX_PAD_PKCS1_1o5 (3 << 3)
139 #define CX_PAD_PKCS1_PSS (4 << 3)
140 #define CX_PAD_PKCS1_OAEP (5 << 3)
145 #define CX_MASK_CHAIN (7 << 6)
146 #define CX_CHAIN_ECB (0 << 6)
147 #define CX_CHAIN_CBC (1 << 6)
148 #define CX_CHAIN_CTR (2 << 6)
149 #define CX_CHAIN_CFB (3 << 6)
150 #define CX_CHAIN_OFB (4 << 6)
155 #define CX_MASK_ECC_VARIANT (7 << 6)
156 #define CX_NO_CANONICAL (1 << 6)
161 #define CX_MASK_RND (7 << 9)
162 #define CX_RND_PRNG (1 << 9)
163 #define CX_RND_TRNG (2 << 9)
164 #define CX_RND_RFC6979 (3 << 9)
165 #define CX_RND_PROVIDED (4 << 9)
170 #define CX_MASK_EC (7 << 12)
171 #define CX_ECSCHNORR_BIP0340 (0 << 12)
172 #define CX_ECDH_POINT (1 << 12)
173 #define CX_ECDH_X (2 << 12)
174 #define CX_ECSCHNORR_ISO14888_XY (3 << 12)
175 #define CX_ECSCHNORR_ISO14888_X (4 << 12)
176 #define CX_ECSCHNORR_BSI03111 (5 << 12)
177 #define CX_ECSCHNORR_LIBSECP (6 << 12)
178 #define CX_ECSCHNORR_Z (7 << 12)
183 #define CX_NO_REINIT (1 << 15)
struct uint64_s uint64bits_t
Similar to libc iovec type.
64-bit types, native or by-hands, depending on target and/or compiler support.
uint32_t l
32 least significant bits
uint32_t h
32 most significant bits