[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