[tor-commits] [tor/master] Use tor specific headers and memwipe() instead of memset_s(), and build.
nickm at torproject.org
nickm at torproject.org
Sun Dec 20 20:00:26 UTC 2015
commit 5356eba6ca31c881032c028f4797a0b1ede28bae
Author: Yawning Angel <yawning at schwanenlied.me>
Date: Fri Dec 18 22:18:00 2015 +0000
Use tor specific headers and memwipe() instead of memset_s(), and build.
This is where things get tor specific. It's just replacing stdint.h
and memset_s with the tor compat code so going back is trivial...
---
src/ext/include.am | 11 +++++++++++
src/ext/keccak-tiny/keccak-tiny-unrolled.c | 8 +++-----
src/ext/keccak-tiny/keccak-tiny.h | 6 +++---
3 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/src/ext/include.am b/src/ext/include.am
index 47d4c03..b8e59ff 100644
--- a/src/ext/include.am
+++ b/src/ext/include.am
@@ -135,3 +135,14 @@ noinst_HEADERS += $(ED25519_DONNA_HDRS)
LIBED25519_DONNA=src/ext/ed25519/donna/libed25519_donna.a
noinst_LIBRARIES += $(LIBED25519_DONNA)
+src_ext_keccak_tiny_libkeccak_tiny_a_CFLAGS=
+
+src_ext_keccak_tiny_libkeccak_tiny_a_SOURCES= \
+ src/ext/keccak-tiny/keccak-tiny-unrolled.c
+
+LIBKECCAK_TINY_HDRS = \
+ src/ext/keccak-tiny/keccak-tiny.h
+
+LIBKECCAK_TINY=src/ext/keccak-tiny/libkeccak-tiny.a
+noinst_LIBRARIES += $(LIBKECCAK_TINY)
+
diff --git a/src/ext/keccak-tiny/keccak-tiny-unrolled.c b/src/ext/keccak-tiny/keccak-tiny-unrolled.c
index 9ad8186..4b4f51c 100644
--- a/src/ext/keccak-tiny/keccak-tiny-unrolled.c
+++ b/src/ext/keccak-tiny/keccak-tiny-unrolled.c
@@ -8,10 +8,8 @@
*/
#include "keccak-tiny.h"
-#include <stdint.h>
-#include <stdio.h>
-#include <stdlib.h>
#include <string.h>
+#include "crypto.h"
/******** The Keccak-f[1600] permutation ********/
@@ -168,7 +166,7 @@ keccak_finalize(keccak_state *s)
// Xor in the last block.
xorin(s->a, s->block, s->offset);
- memset_s(s->block, sizeof(s->block), 0, sizeof(s->block));
+ memwipe(s->block, 0, sizeof(s->block));
s->finalized = 1;
s->offset = s->rate;
}
@@ -310,7 +308,7 @@ keccak_clone(keccak_state *out, const keccak_state *in)
void
keccak_cleanse(keccak_state *s)
{
- memset_s(s, sizeof(keccak_state), 0, sizeof(keccak_state));
+ memwipe(s, 0, sizeof(keccak_state));
}
/** The sponge-based hash construction. **/
diff --git a/src/ext/keccak-tiny/keccak-tiny.h b/src/ext/keccak-tiny/keccak-tiny.h
index 04044cd..7efea23 100644
--- a/src/ext/keccak-tiny/keccak-tiny.h
+++ b/src/ext/keccak-tiny/keccak-tiny.h
@@ -1,8 +1,8 @@
#ifndef KECCAK_FIPS202_H
#define KECCAK_FIPS202_H
-#define __STDC_WANT_LIB_EXT1__ 1
-#include <stdint.h>
-#include <stdlib.h>
+
+#include <stddef.h>
+#include "torint.h"
#define KECCAK_MAX_RATE 200
More information about the tor-commits
mailing list