projects
/
BearSSL
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added general-purpose API for AEAD algorithms, and GCM implementation.
[BearSSL]
/
src
/
inner.h
diff --git
a/src/inner.h
b/src/inner.h
index
3cafa42
..
fb7f4a4
100644
(file)
--- a/
src/inner.h
+++ b/
src/inner.h
@@
-157,10
+157,12
@@
* GCC versions from 4.4 to 4.8 (inclusive) must use a special #pragma
* to activate extra opcodes before including the relevant intrinsic
* headers. But these don't work with Clang (which does not need them
* GCC versions from 4.4 to 4.8 (inclusive) must use a special #pragma
* to activate extra opcodes before including the relevant intrinsic
* headers. But these don't work with Clang (which does not need them
- * either).
+ * either). We also need that #pragma for GCC 4.9 in order to work
+ * around a compiler bug (it tends to blow up on ghash_pclmul code
+ * otherwise).
*/
#if BR_AES_X86NI_GCC && !defined BR_AES_X86NI_GCC_OLD
*/
#if BR_AES_X86NI_GCC && !defined BR_AES_X86NI_GCC_OLD
-#if __GNUC__ == 4 && __GNUC_MINOR__ >= 4 && __GNUC_MINOR__ <=
8
&& !__clang__
+#if __GNUC__ == 4 && __GNUC_MINOR__ >= 4 && __GNUC_MINOR__ <=
9
&& !__clang__
#define BR_AES_X86NI_GCC_OLD 1
#endif
#endif
#define BR_AES_X86NI_GCC_OLD 1
#endif
#endif
@@
-507,8
+509,8
@@
void br_sha2small_round(const unsigned char *buf, uint32_t *val);
*/
void br_tls_phash(void *dst, size_t len,
const br_hash_class *dig,
*/
void br_tls_phash(void *dst, size_t len,
const br_hash_class *dig,
- const void *secret, size_t secret_len,
-
const char *label, const void *seed, size_t seed_len
);
+ const void *secret, size_t secret_len,
const char *label,
+
size_t seed_num, const br_tls_prf_seed_chunk *seed
);
/*
* Copy all configured hash implementations from a multihash context
/*
* Copy all configured hash implementations from a multihash context