Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Nettle
nettle
Commits
21f197b9
Commit
21f197b9
authored
Sep 03, 2016
by
Niels Möller
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Test for memeql_sec.
parent
1a0a8dce
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
61 additions
and
1 deletion
+61
-1
ChangeLog
ChangeLog
+4
-0
testsuite/.test-rules.make
testsuite/.test-rules.make
+3
-0
testsuite/Makefile.in
testsuite/Makefile.in
+1
-1
testsuite/memeql-test.c
testsuite/memeql-test.c
+53
-0
No files found.
ChangeLog
View file @
21f197b9
...
...
@@ -51,6 +51,10 @@
* memops.h: New header file, generalizing memxor.h.
* testsuite/memeql-test.c (test_main): New test case.
(memeql_sec_for_test): Wrapper to get valgrind to check for
side-channel silence.
2016-08-29 Niels Möller <nisse@lysator.liu.se>
* sexp-format.c (strlen_u8): New helper function.
...
...
testsuite/.test-rules.make
View file @
21f197b9
...
...
@@ -46,6 +46,9 @@ md5-test$(EXEEXT): md5-test.$(OBJEXT)
md5-compat-test$(EXEEXT)
:
md5-compat-test.$(OBJEXT)
$(LINK)
md5-compat-test.
$(OBJEXT)
$(TEST_OBJS)
-o
md5-compat-test
$(EXEEXT)
memeql-test$(EXEEXT)
:
memeql-test.$(OBJEXT)
$(LINK)
memeql-test.
$(OBJEXT)
$(TEST_OBJS)
-o
memeql-test
$(EXEEXT)
memxor-test$(EXEEXT)
:
memxor-test.$(OBJEXT)
$(LINK)
memxor-test.
$(OBJEXT)
$(TEST_OBJS)
-o
memxor-test
$(EXEEXT)
...
...
testsuite/Makefile.in
View file @
21f197b9
...
...
@@ -16,7 +16,7 @@ TS_NETTLE_SOURCES = aes-test.c arcfour-test.c arctwo-test.c \
camellia-test.c chacha-test.c
\
des-test.c des3-test.c des-compat-test.c
\
md2-test.c md4-test.c md5-test.c md5-compat-test.c
\
memxor-test.c gosthash94-test.c
\
memeql-test.c
memxor-test.c gosthash94-test.c
\
ripemd160-test.c
\
salsa20-test.c
\
sha1-test.c sha224-test.c sha256-test.c
\
...
...
testsuite/memeql-test.c
0 → 100644
View file @
21f197b9
#include "testutils.h"
#include "knuth-lfib.h"
#include "memops.h"
#if HAVE_VALGRIND_MEMCHECK_H
# include <valgrind/memcheck.h>
static
int
memeql_sec_for_test
(
const
void
*
a
,
const
void
*
b
,
size_t
n
)
{
int
res
;
/* Makes valgrind trigger on any branches depending on the input
data. */
VALGRIND_MAKE_MEM_UNDEFINED
(
a
,
n
);
VALGRIND_MAKE_MEM_UNDEFINED
(
b
,
n
);
res
=
memeql_sec
(
a
,
b
,
n
);
VALGRIND_MAKE_MEM_DEFINED
(
&
res
,
sizeof
(
res
));
return
res
;
}
#else
#define memeql_sec_for_test memeql_sec
#endif
#define MAX_SIZE 50
void
test_main
(
void
)
{
uint8_t
orig
[
MAX_SIZE
];
uint8_t
a
[
MAX_SIZE
];
uint8_t
b
[
MAX_SIZE
];
struct
knuth_lfib_ctx
random_ctx
;
knuth_lfib_init
(
&
random_ctx
,
11
);
size_t
size
;
for
(
size
=
0
;
size
<
50
;
size
++
)
{
size_t
i
;
uint8_t
bit
;
knuth_lfib_random
(
&
random_ctx
,
size
,
orig
);
memcpy
(
a
,
orig
,
size
);
memcpy
(
b
,
orig
,
size
);
ASSERT
(
memeql_sec_for_test
(
a
,
b
,
size
));
for
(
i
=
0
;
i
<
size
;
i
++
)
for
(
bit
=
0x80
;
bit
;
bit
>>=
1
)
{
b
[
i
]
=
orig
[
i
]
^
bit
;
ASSERT
(
!
memeql_sec_for_test
(
a
,
b
,
size
));
b
[
i
]
=
orig
[
i
];
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment