aboutsummaryrefslogtreecommitdiff
path: root/contrib/ntp/sntp/tests
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ntp/sntp/tests')
-rw-r--r--contrib/ntp/sntp/tests/Makefile.am26
-rw-r--r--contrib/ntp/sntp/tests/Makefile.in24
-rw-r--r--contrib/ntp/sntp/tests/crypto.c114
-rw-r--r--contrib/ntp/sntp/tests/keyFile.c6
-rw-r--r--contrib/ntp/sntp/tests/packetHandling.c5
-rw-r--r--contrib/ntp/sntp/tests/packetProcessing.c39
-rw-r--r--contrib/ntp/sntp/tests/run-crypto.c24
-rw-r--r--contrib/ntp/sntp/tests/run-keyFile.c8
-rw-r--r--contrib/ntp/sntp/tests/run-kodDatabase.c8
-rw-r--r--contrib/ntp/sntp/tests/run-kodFile.c8
-rw-r--r--contrib/ntp/sntp/tests/run-networking.c8
-rw-r--r--contrib/ntp/sntp/tests/run-packetHandling.c8
-rw-r--r--contrib/ntp/sntp/tests/run-packetProcessing.c46
-rw-r--r--contrib/ntp/sntp/tests/run-t-log.c8
-rw-r--r--contrib/ntp/sntp/tests/run-utilities.c8
-rw-r--r--contrib/ntp/sntp/tests/testconf.yml9
16 files changed, 284 insertions, 65 deletions
diff --git a/contrib/ntp/sntp/tests/Makefile.am b/contrib/ntp/sntp/tests/Makefile.am
index f7e48154dac8..0a0d2800bd08 100644
--- a/contrib/ntp/sntp/tests/Makefile.am
+++ b/contrib/ntp/sntp/tests/Makefile.am
@@ -21,11 +21,12 @@ DISTCLEANFILES = \
testLogfile2.log \
$(NULL)
-std_unity_list = \
- $(srcdir)/../unity/auto/generate_test_runner.rb \
+std_unity_list = \
+ $(abs_top_srcdir)/unity/auto/generate_test_runner.rb \
+ $(abs_srcdir)/testconf.yml \
$(NULL)
-run_unity = cd $(srcdir) && ruby ../unity/auto/generate_test_runner.rb
+run_unity = ruby $(std_unity_list)
# Use EXTRA_PROGRAMS for test files that are under development but
# not production-ready
@@ -69,6 +70,7 @@ EXTRA_DIST = \
data/kod-test-blanks \
data/kod-test-correct \
data/kod-test-empty \
+ testconf.yml \
$(NULL)
CLEANFILES += \
@@ -187,31 +189,31 @@ test_log_SOURCES = \
$(srcdir)/run-kodFile.c: $(srcdir)/kodFile.c $(std_unity_list)
- $(run_unity) kodFile.c run-kodFile.c
+ $(run_unity) $< $@
$(srcdir)/run-keyFile.c: $(srcdir)/keyFile.c $(std_unity_list)
- $(run_unity) keyFile.c run-keyFile.c
+ $(run_unity) $< $@
$(srcdir)/run-kodDatabase.c: $(srcdir)/kodDatabase.c $(std_unity_list)
- $(run_unity) kodDatabase.c run-kodDatabase.c
+ $(run_unity) $< $@
$(srcdir)/run-networking.c: $(srcdir)/networking.c $(std_unity_list)
- $(run_unity) networking.c run-networking.c
+ $(run_unity) $< $@
$(srcdir)/run-packetProcessing.c: $(srcdir)/packetProcessing.c $(std_unity_list)
- $(run_unity) packetProcessing.c run-packetProcessing.c
+ $(run_unity) $< $@
$(srcdir)/run-packetHandling.c: $(srcdir)/packetHandling.c $(std_unity_list)
- $(run_unity) packetHandling.c run-packetHandling.c
+ $(run_unity) $< $@
$(srcdir)/run-utilities.c: $(srcdir)/utilities.c $(std_unity_list)
- $(run_unity) utilities.c run-utilities.c
+ $(run_unity) $< $@
$(srcdir)/run-crypto.c: $(srcdir)/crypto.c $(std_unity_list)
- $(run_unity) crypto.c run-crypto.c
+ $(run_unity) $< $@
$(srcdir)/run-t-log.c: $(srcdir)/t-log.c $(std_unity_list)
- $(run_unity) t-log.c run-t-log.c
+ $(run_unity) $< $@
#$(srcdir)/../version.c: $(srcdir)/../version.c
diff --git a/contrib/ntp/sntp/tests/Makefile.in b/contrib/ntp/sntp/tests/Makefile.in
index d5a1fecd1d4b..bd776d88374a 100644
--- a/contrib/ntp/sntp/tests/Makefile.in
+++ b/contrib/ntp/sntp/tests/Makefile.in
@@ -749,10 +749,11 @@ DISTCLEANFILES = \
$(NULL)
std_unity_list = \
- $(srcdir)/../unity/auto/generate_test_runner.rb \
+ $(abs_top_srcdir)/unity/auto/generate_test_runner.rb \
+ $(abs_srcdir)/testconf.yml \
$(NULL)
-run_unity = cd $(srcdir) && ruby ../unity/auto/generate_test_runner.rb
+run_unity = ruby $(std_unity_list)
noinst_HEADERS = \
sntptest.h \
$(NULL)
@@ -772,6 +773,7 @@ EXTRA_DIST = \
data/kod-test-blanks \
data/kod-test-correct \
data/kod-test-empty \
+ testconf.yml \
$(NULL)
@@ -1499,31 +1501,31 @@ uninstall-am:
$(srcdir)/run-kodFile.c: $(srcdir)/kodFile.c $(std_unity_list)
- $(run_unity) kodFile.c run-kodFile.c
+ $(run_unity) $< $@
$(srcdir)/run-keyFile.c: $(srcdir)/keyFile.c $(std_unity_list)
- $(run_unity) keyFile.c run-keyFile.c
+ $(run_unity) $< $@
$(srcdir)/run-kodDatabase.c: $(srcdir)/kodDatabase.c $(std_unity_list)
- $(run_unity) kodDatabase.c run-kodDatabase.c
+ $(run_unity) $< $@
$(srcdir)/run-networking.c: $(srcdir)/networking.c $(std_unity_list)
- $(run_unity) networking.c run-networking.c
+ $(run_unity) $< $@
$(srcdir)/run-packetProcessing.c: $(srcdir)/packetProcessing.c $(std_unity_list)
- $(run_unity) packetProcessing.c run-packetProcessing.c
+ $(run_unity) $< $@
$(srcdir)/run-packetHandling.c: $(srcdir)/packetHandling.c $(std_unity_list)
- $(run_unity) packetHandling.c run-packetHandling.c
+ $(run_unity) $< $@
$(srcdir)/run-utilities.c: $(srcdir)/utilities.c $(std_unity_list)
- $(run_unity) utilities.c run-utilities.c
+ $(run_unity) $< $@
$(srcdir)/run-crypto.c: $(srcdir)/crypto.c $(std_unity_list)
- $(run_unity) crypto.c run-crypto.c
+ $(run_unity) $< $@
$(srcdir)/run-t-log.c: $(srcdir)/t-log.c $(std_unity_list)
- $(run_unity) t-log.c run-t-log.c
+ $(run_unity) $< $@
check-libsntp: ../libsntp.a
@echo stamp > $@
diff --git a/contrib/ntp/sntp/tests/crypto.c b/contrib/ntp/sntp/tests/crypto.c
index fb2dc62981f3..64c784dc74b0 100644
--- a/contrib/ntp/sntp/tests/crypto.c
+++ b/contrib/ntp/sntp/tests/crypto.c
@@ -5,17 +5,25 @@
#include "sntptest.h"
#include "crypto.h"
+#define CMAC "AES128CMAC"
+
#define MD5_LENGTH 16
#define SHA1_LENGTH 20
+#define CMAC_LENGTH 16
void test_MakeMd5Mac(void);
void test_MakeSHA1Mac(void);
+void test_MakeCMac(void);
void test_VerifyCorrectMD5(void);
void test_VerifySHA1(void);
+void test_VerifyCMAC(void);
void test_VerifyFailure(void);
void test_PacketSizeNotMultipleOfFourBytes(void);
+void VerifyLocalCMAC(struct key *cmac);
+void VerifyOpenSSLCMAC(struct key *cmac);
+
void
test_MakeMd5Mac(void)
@@ -31,8 +39,9 @@ test_MakeMd5Mac(void)
md5.key_id = 10;
md5.key_len = 6;
memcpy(&md5.key_seq, "md5seq", md5.key_len);
- memcpy(&md5.type, "MD5", 4);
-
+ strlcpy(md5.typen, "MD5", sizeof(md5.typen));
+ md5.typei = keytype_from_text(md5.typen, NULL);
+
TEST_ASSERT_EQUAL(MD5_LENGTH,
make_mac(PKT_DATA, PKT_LEN, MD5_LENGTH, &md5, actual));
@@ -57,7 +66,8 @@ test_MakeSHA1Mac(void)
sha1.key_id = 20;
sha1.key_len = 7;
memcpy(&sha1.key_seq, "sha1seq", sha1.key_len);
- memcpy(&sha1.type, "SHA1", 5);
+ strlcpy(sha1.typen, "SHA1", sizeof(sha1.typen));
+ sha1.typei = keytype_from_text(sha1.typen, NULL);
TEST_ASSERT_EQUAL(SHA1_LENGTH,
make_mac(PKT_DATA, PKT_LEN, SHA1_LENGTH, &sha1, actual));
@@ -73,6 +83,38 @@ test_MakeSHA1Mac(void)
void
+test_MakeCMac(void)
+{
+#ifdef OPENSSL
+
+ const char* PKT_DATA = "abcdefgh0123";
+ const int PKT_LEN = strlen(PKT_DATA);
+ const char* EXPECTED_DIGEST =
+ "\xdd\x35\xd5\xf5\x14\x23\xd9\xd6"
+ "\x38\x5d\x29\x80\xfe\x51\xb9\x6b";
+ char actual[CMAC_LENGTH];
+
+ struct key cmac;
+ cmac.next = NULL;
+ cmac.key_id = 30;
+ cmac.key_len = CMAC_LENGTH;
+ memcpy(&cmac.key_seq, "aes-128-cmac-seq", cmac.key_len);
+ memcpy(&cmac.typen, CMAC, strlen(CMAC) + 1);
+
+ TEST_ASSERT_EQUAL(CMAC_LENGTH,
+ make_mac(PKT_DATA, PKT_LEN, CMAC_LENGTH, &cmac, actual));
+
+ TEST_ASSERT_EQUAL_MEMORY(EXPECTED_DIGEST, actual, CMAC_LENGTH);
+
+#else
+
+ TEST_IGNORE_MESSAGE("OpenSSL not found, skipping...");
+
+#endif /* OPENSSL */
+}
+
+
+void
test_VerifyCorrectMD5(void)
{
const char* PKT_DATA =
@@ -87,7 +129,8 @@ test_VerifyCorrectMD5(void)
md5.key_id = 0;
md5.key_len = 6;
memcpy(&md5.key_seq, "md5key", md5.key_len);
- memcpy(&md5.type, "MD5", 4);
+ strlcpy(md5.typen, "MD5", sizeof(md5.typen));
+ md5.typei = keytype_from_text(md5.typen, NULL);
TEST_ASSERT_TRUE(auth_md5(PKT_DATA, PKT_LEN, MD5_LENGTH, &md5));
}
@@ -110,7 +153,8 @@ test_VerifySHA1(void)
sha1.key_id = 0;
sha1.key_len = 7;
memcpy(&sha1.key_seq, "sha1key", sha1.key_len);
- memcpy(&sha1.type, "SHA1", 5);
+ strlcpy(sha1.typen, "SHA1", sizeof(sha1.typen));
+ sha1.typei = keytype_from_text(sha1.typen, NULL);
TEST_ASSERT_TRUE(auth_md5(PKT_DATA, PKT_LEN, SHA1_LENGTH, &sha1));
@@ -121,6 +165,60 @@ test_VerifySHA1(void)
#endif /* OPENSSL */
}
+
+void
+test_VerifyCMAC(void)
+{
+ const char* PKT_DATA =
+ "sometestdata" /* Data */
+ "\0\0\0\0" /* Key-ID (unused) */
+ "\x4e\x0c\xf0\xe2\xc7\x8e\xbb\xbf" /* MAC */
+ "\x79\xfc\x87\xc7\x8b\xb7\x4a\x0b";
+ const int PKT_LEN = 12;
+ struct key cmac;
+
+ cmac.next = NULL;
+ cmac.key_id = 0;
+ cmac.key_len = CMAC_LENGTH;
+ memcpy(&cmac.key_seq, "aes-128-cmac-key", cmac.key_len);
+ memcpy(&cmac.typen, CMAC, strlen(CMAC) + 1);
+
+ VerifyOpenSSLCMAC(&cmac);
+ VerifyLocalCMAC(&cmac);
+}
+
+
+void
+VerifyOpenSSLCMAC(struct key *cmac)
+{
+#ifdef OPENSSL
+
+ /* XXX: HMS: auth_md5 must be renamed/incorrect. */
+ // TEST_ASSERT_TRUE(auth_md5(PKT_DATA, PKT_LEN, CMAC_LENGTH, cmac));
+ TEST_IGNORE_MESSAGE("VerifyOpenSSLCMAC needs to be implemented, skipping...");
+
+#else
+
+ TEST_IGNORE_MESSAGE("OpenSSL not found, skipping...");
+
+#endif /* OPENSSL */
+ return;
+}
+
+
+void
+VerifyLocalCMAC(struct key *cmac)
+{
+
+ /* XXX: HMS: auth_md5 must be renamed/incorrect. */
+ // TEST_ASSERT_TRUE(auth_md5(PKT_DATA, PKT_LEN, CMAC_LENGTH, cmac));
+
+ TEST_IGNORE_MESSAGE("Hook in the local AES-128-CMAC check!");
+
+ return;
+}
+
+
void
test_VerifyFailure(void)
{
@@ -139,7 +237,8 @@ test_VerifyFailure(void)
md5.key_id = 0;
md5.key_len = 6;
memcpy(&md5.key_seq, "md5key", md5.key_len);
- memcpy(&md5.type, "MD5", 4);
+ strlcpy(md5.typen, "MD5", sizeof(md5.typen));
+ md5.typei = keytype_from_text(md5.typen, NULL);
TEST_ASSERT_FALSE(auth_md5(PKT_DATA, PKT_LEN, MD5_LENGTH, &md5));
}
@@ -157,7 +256,8 @@ test_PacketSizeNotMultipleOfFourBytes(void)
md5.key_id = 10;
md5.key_len = 6;
memcpy(&md5.key_seq, "md5seq", md5.key_len);
- memcpy(&md5.type, "MD5", 4);
+ strlcpy(md5.typen, "MD5", sizeof(md5.typen));
+ md5.typei = keytype_from_text(md5.typen, NULL);
TEST_ASSERT_EQUAL(0, make_mac(PKT_DATA, PKT_LEN, MD5_LENGTH, &md5, actual));
}
diff --git a/contrib/ntp/sntp/tests/keyFile.c b/contrib/ntp/sntp/tests/keyFile.c
index 395ca0dc10e8..af5acc703b0a 100644
--- a/contrib/ntp/sntp/tests/keyFile.c
+++ b/contrib/ntp/sntp/tests/keyFile.c
@@ -32,9 +32,9 @@ CompareKeys(
expected.key_len, actual.key_len);
return FALSE;
}
- if (strcmp(expected.type, actual.type) != 0) {
+ if (strcmp(expected.typen, actual.typen) != 0) {
printf("Expected key_type: %s but was: %s\n",
- expected.type, actual.type);
+ expected.typen, actual.typen);
return FALSE;
}
@@ -59,7 +59,7 @@ CompareKeysAlternative(
temp.key_id = key_id;
temp.key_len = key_len;
- strlcpy(temp.type, type, sizeof(temp.type));
+ strlcpy(temp.typen, type, sizeof(temp.typen));
memcpy(temp.key_seq, key_seq, key_len);
return CompareKeys(temp, actual);
diff --git a/contrib/ntp/sntp/tests/packetHandling.c b/contrib/ntp/sntp/tests/packetHandling.c
index 595efa3b129a..6787eeaa2fe9 100644
--- a/contrib/ntp/sntp/tests/packetHandling.c
+++ b/contrib/ntp/sntp/tests/packetHandling.c
@@ -84,7 +84,8 @@ test_GenerateAuthenticatedPacket(void)
testkey.key_id = 30;
testkey.key_len = 9;
memcpy(testkey.key_seq, "123456789", testkey.key_len);
- memcpy(testkey.type, "MD5", 3);
+ strlcpy(testkey.typen, "MD5", sizeof(testkey.typen));
+ testkey.typei = keytype_from_text(testkey.typen, NULL);
GETTIMEOFDAY(&xmt, NULL);
xmt.tv_sec += JAN_1970;
@@ -106,7 +107,7 @@ test_GenerateAuthenticatedPacket(void)
TEST_ASSERT_EQUAL(testkey.key_id, ntohl(testpkt.exten[0]));
TEST_ASSERT_EQUAL(MAX_MD5_LEN - 4, /* Remove the key_id, only keep the mac. */
- make_mac(&testpkt, LEN_PKT_NOMAC, MAX_MD5_LEN, &testkey, expected_mac));
+ make_mac(&testpkt, LEN_PKT_NOMAC, MAX_MD5_LEN-4, &testkey, expected_mac));
TEST_ASSERT_EQUAL_MEMORY(expected_mac, (char*)&testpkt.exten[1], MAX_MD5_LEN -4);
}
diff --git a/contrib/ntp/sntp/tests/packetProcessing.c b/contrib/ntp/sntp/tests/packetProcessing.c
index 660b5b6e20f1..910c561721c3 100644
--- a/contrib/ntp/sntp/tests/packetProcessing.c
+++ b/contrib/ntp/sntp/tests/packetProcessing.c
@@ -5,6 +5,9 @@
#include "ntp_stdlib.h"
#include "unity.h"
+#define CMAC "AES128CMAC"
+#define CMAC_LENGTH 16
+
const char * Version = "stub unit test Version string";
@@ -35,6 +38,7 @@ void test_AcceptNoSentPacketBroadcastMode(void);
void test_CorrectUnauthenticatedPacket(void);
void test_CorrectAuthenticatedPacketMD5(void);
void test_CorrectAuthenticatedPacketSHA1(void);
+void test_CorrectAuthenticatedPacketCMAC(void);
/* [Bug 2998] There are some issues whith the definition of 'struct pkt'
* when AUTOKEY is undefined -- the formal struct is too small to hold
@@ -76,7 +80,7 @@ PrepareAuthenticationTest(
key_ptr->next = NULL;
key_ptr->key_id = key_id;
key_ptr->key_len = key_len;
- memcpy(key_ptr->type, "MD5", 3);
+ memcpy(key_ptr->typen, type, strlen(type) + 1);
TEST_ASSERT_TRUE(key_len < sizeof(key_ptr->key_seq));
@@ -231,7 +235,7 @@ test_AuthenticatedPacketInvalid(void)
testpkt.p.exten[0] = htonl(50);
int mac_len = make_mac(&testpkt.p, pkt_len,
- MAX_MD5_LEN, key_ptr,
+ MAX_MD5_LEN - KEY_MAC_LEN, key_ptr,
&testpkt.p.exten[1]);
pkt_len += 4 + mac_len;
@@ -259,9 +263,9 @@ test_AuthenticatedPacketUnknownKey(void)
testpkt.p.exten[0] = htonl(50);
int mac_len = make_mac(&testpkt.p, pkt_len,
- MAX_MD5_LEN, key_ptr,
+ MAX_MD5_LEN - KEY_MAC_LEN, key_ptr,
&testpkt.p.exten[1]);
- pkt_len += 4 + mac_len;
+ pkt_len += KEY_MAC_LEN + mac_len;
TEST_ASSERT_EQUAL(SERVER_AUTH_FAIL,
process_pkt(&testpkt.p, &testsock, pkt_len,
@@ -424,10 +428,10 @@ test_CorrectAuthenticatedPacketMD5(void)
/* Prepare the packet. */
testpkt.p.exten[0] = htonl(10);
int mac_len = make_mac(&testpkt.p, pkt_len,
- MAX_MD5_LEN, key_ptr,
+ MAX_MD5_LEN - KEY_MAC_LEN, key_ptr,
&testpkt.p.exten[1]);
- pkt_len += 4 + mac_len;
+ pkt_len += KEY_MAC_LEN + mac_len;
TEST_ASSERT_EQUAL(pkt_len,
process_pkt(&testpkt.p, &testsock, pkt_len,
@@ -446,6 +450,28 @@ test_CorrectAuthenticatedPacketSHA1(void)
/* Prepare the packet. */
testpkt.p.exten[0] = htonl(20);
int mac_len = make_mac(&testpkt.p, pkt_len,
+ MAX_MDG_LEN, key_ptr,
+ &testpkt.p.exten[1]);
+
+ pkt_len += KEY_MAC_LEN + mac_len;
+
+ TEST_ASSERT_EQUAL(pkt_len,
+ process_pkt(&testpkt.p, &testsock, pkt_len,
+ MODE_SERVER, &testspkt.p, "UnitTest"));
+}
+
+
+void
+test_CorrectAuthenticatedPacketCMAC(void)
+{
+ PrepareAuthenticationTest(30, CMAC_LENGTH, CMAC, "abcdefghijklmnop");
+ TEST_ASSERT_TRUE(ENABLED_OPT(AUTHENTICATION));
+
+ int pkt_len = LEN_PKT_NOMAC;
+
+ /* Prepare the packet. */
+ testpkt.p.exten[0] = htonl(30);
+ int mac_len = make_mac(&testpkt.p, pkt_len,
MAX_MAC_LEN, key_ptr,
&testpkt.p.exten[1]);
@@ -455,3 +481,4 @@ test_CorrectAuthenticatedPacketSHA1(void)
process_pkt(&testpkt.p, &testsock, pkt_len,
MODE_SERVER, &testspkt.p, "UnitTest"));
}
+
diff --git a/contrib/ntp/sntp/tests/run-crypto.c b/contrib/ntp/sntp/tests/run-crypto.c
index 8b2a73528f4a..0d4e94d5536c 100644
--- a/contrib/ntp/sntp/tests/run-crypto.c
+++ b/contrib/ntp/sntp/tests/run-crypto.c
@@ -32,12 +32,21 @@ extern void setUp(void);
extern void tearDown(void);
extern void test_MakeMd5Mac(void);
extern void test_MakeSHA1Mac(void);
+extern void test_MakeCMac(void);
extern void test_VerifyCorrectMD5(void);
extern void test_VerifySHA1(void);
+extern void test_VerifyCMAC(void);
extern void test_VerifyFailure(void);
extern void test_PacketSizeNotMultipleOfFourBytes(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -53,13 +62,16 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("crypto.c");
- RUN_TEST(test_MakeMd5Mac, 12);
- RUN_TEST(test_MakeSHA1Mac, 13);
- RUN_TEST(test_VerifyCorrectMD5, 14);
- RUN_TEST(test_VerifySHA1, 15);
- RUN_TEST(test_VerifyFailure, 16);
- RUN_TEST(test_PacketSizeNotMultipleOfFourBytes, 17);
+ RUN_TEST(test_MakeMd5Mac, 15);
+ RUN_TEST(test_MakeSHA1Mac, 16);
+ RUN_TEST(test_MakeCMac, 17);
+ RUN_TEST(test_VerifyCorrectMD5, 18);
+ RUN_TEST(test_VerifySHA1, 19);
+ RUN_TEST(test_VerifyCMAC, 20);
+ RUN_TEST(test_VerifyFailure, 21);
+ RUN_TEST(test_PacketSizeNotMultipleOfFourBytes, 22);
return (UnityEnd());
}
diff --git a/contrib/ntp/sntp/tests/run-keyFile.c b/contrib/ntp/sntp/tests/run-keyFile.c
index 862910903f9c..6c1848e660e2 100644
--- a/contrib/ntp/sntp/tests/run-keyFile.c
+++ b/contrib/ntp/sntp/tests/run-keyFile.c
@@ -38,6 +38,13 @@ extern void test_ReadKeyFileWithComments(void);
extern void test_ReadKeyFileWithInvalidHex(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -53,6 +60,7 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("keyFile.c");
RUN_TEST(test_ReadEmptyKeyFile, 12);
RUN_TEST(test_ReadASCIIKeys, 13);
diff --git a/contrib/ntp/sntp/tests/run-kodDatabase.c b/contrib/ntp/sntp/tests/run-kodDatabase.c
index f655a6adb850..0d86ee30fbf0 100644
--- a/contrib/ntp/sntp/tests/run-kodDatabase.c
+++ b/contrib/ntp/sntp/tests/run-kodDatabase.c
@@ -41,6 +41,13 @@ extern void test_AddDuplicate(void);
extern void test_DeleteEntry(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -56,6 +63,7 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("kodDatabase.c");
RUN_TEST(test_SingleEntryHandling, 14);
RUN_TEST(test_MultipleEntryHandling, 15);
diff --git a/contrib/ntp/sntp/tests/run-kodFile.c b/contrib/ntp/sntp/tests/run-kodFile.c
index 3943550391e9..07a32d724a55 100644
--- a/contrib/ntp/sntp/tests/run-kodFile.c
+++ b/contrib/ntp/sntp/tests/run-kodFile.c
@@ -39,6 +39,13 @@ extern void test_WriteFileWithSingleEntry(void);
extern void test_WriteFileWithMultipleEntries(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -54,6 +61,7 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("kodFile.c");
RUN_TEST(test_ReadEmptyFile, 19);
RUN_TEST(test_ReadCorrectFile, 20);
diff --git a/contrib/ntp/sntp/tests/run-networking.c b/contrib/ntp/sntp/tests/run-networking.c
index 70caaa034fea..0083ec392aee 100644
--- a/contrib/ntp/sntp/tests/run-networking.c
+++ b/contrib/ntp/sntp/tests/run-networking.c
@@ -31,6 +31,13 @@ extern void setUp(void);
extern void tearDown(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -46,6 +53,7 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("networking.c");
return (UnityEnd());
diff --git a/contrib/ntp/sntp/tests/run-packetHandling.c b/contrib/ntp/sntp/tests/run-packetHandling.c
index bc20d7f48ba4..4cca13b530a0 100644
--- a/contrib/ntp/sntp/tests/run-packetHandling.c
+++ b/contrib/ntp/sntp/tests/run-packetHandling.c
@@ -47,6 +47,13 @@ extern void test_HandleKodRate(void);
extern void test_HandleCorrectPacket(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -62,6 +69,7 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("packetHandling.c");
RUN_TEST(test_GenerateUnauthenticatedPacket, 17);
RUN_TEST(test_GenerateAuthenticatedPacket, 18);
diff --git a/contrib/ntp/sntp/tests/run-packetProcessing.c b/contrib/ntp/sntp/tests/run-packetProcessing.c
index 38f855273c66..50144ed36977 100644
--- a/contrib/ntp/sntp/tests/run-packetProcessing.c
+++ b/contrib/ntp/sntp/tests/run-packetProcessing.c
@@ -48,8 +48,16 @@ extern void test_AcceptNoSentPacketBroadcastMode(void);
extern void test_CorrectUnauthenticatedPacket(void);
extern void test_CorrectAuthenticatedPacketMD5(void);
extern void test_CorrectAuthenticatedPacketSHA1(void);
+extern void test_CorrectAuthenticatedPacketCMAC(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -65,25 +73,27 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("packetProcessing.c");
- RUN_TEST(test_TooShortLength, 20);
- RUN_TEST(test_LengthNotMultipleOfFour, 21);
- RUN_TEST(test_TooShortExtensionFieldLength, 22);
- RUN_TEST(test_UnauthenticatedPacketReject, 23);
- RUN_TEST(test_CryptoNAKPacketReject, 24);
- RUN_TEST(test_AuthenticatedPacketInvalid, 25);
- RUN_TEST(test_AuthenticatedPacketUnknownKey, 26);
- RUN_TEST(test_ServerVersionTooOld, 27);
- RUN_TEST(test_ServerVersionTooNew, 28);
- RUN_TEST(test_NonWantedMode, 29);
- RUN_TEST(test_KoDRate, 30);
- RUN_TEST(test_KoDDeny, 31);
- RUN_TEST(test_RejectUnsyncedServer, 32);
- RUN_TEST(test_RejectWrongResponseServerMode, 33);
- RUN_TEST(test_AcceptNoSentPacketBroadcastMode, 34);
- RUN_TEST(test_CorrectUnauthenticatedPacket, 35);
- RUN_TEST(test_CorrectAuthenticatedPacketMD5, 36);
- RUN_TEST(test_CorrectAuthenticatedPacketSHA1, 37);
+ RUN_TEST(test_TooShortLength, 23);
+ RUN_TEST(test_LengthNotMultipleOfFour, 24);
+ RUN_TEST(test_TooShortExtensionFieldLength, 25);
+ RUN_TEST(test_UnauthenticatedPacketReject, 26);
+ RUN_TEST(test_CryptoNAKPacketReject, 27);
+ RUN_TEST(test_AuthenticatedPacketInvalid, 28);
+ RUN_TEST(test_AuthenticatedPacketUnknownKey, 29);
+ RUN_TEST(test_ServerVersionTooOld, 30);
+ RUN_TEST(test_ServerVersionTooNew, 31);
+ RUN_TEST(test_NonWantedMode, 32);
+ RUN_TEST(test_KoDRate, 33);
+ RUN_TEST(test_KoDDeny, 34);
+ RUN_TEST(test_RejectUnsyncedServer, 35);
+ RUN_TEST(test_RejectWrongResponseServerMode, 36);
+ RUN_TEST(test_AcceptNoSentPacketBroadcastMode, 37);
+ RUN_TEST(test_CorrectUnauthenticatedPacket, 38);
+ RUN_TEST(test_CorrectAuthenticatedPacketMD5, 39);
+ RUN_TEST(test_CorrectAuthenticatedPacketSHA1, 40);
+ RUN_TEST(test_CorrectAuthenticatedPacketCMAC, 41);
return (UnityEnd());
}
diff --git a/contrib/ntp/sntp/tests/run-t-log.c b/contrib/ntp/sntp/tests/run-t-log.c
index 8d1234570f68..3532c4e0ed66 100644
--- a/contrib/ntp/sntp/tests/run-t-log.c
+++ b/contrib/ntp/sntp/tests/run-t-log.c
@@ -33,6 +33,13 @@ extern void testOpenLogfileTest(void);
extern void testWriteInCustomLogfile(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -48,6 +55,7 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("t-log.c");
RUN_TEST(testChangePrognameInMysyslog, 10);
RUN_TEST(testOpenLogfileTest, 11);
diff --git a/contrib/ntp/sntp/tests/run-utilities.c b/contrib/ntp/sntp/tests/run-utilities.c
index 7c2237bbe159..0f388451763a 100644
--- a/contrib/ntp/sntp/tests/run-utilities.c
+++ b/contrib/ntp/sntp/tests/run-utilities.c
@@ -41,6 +41,13 @@ extern void test_LfpOutputBinaryFormat(void);
extern void test_LfpOutputDecimalFormat(void);
+//=======Suite Setup=====
+static void suite_setup(void)
+{
+extern int change_logfile(const char*, int);
+change_logfile("stderr", 0);
+}
+
//=======Test Reset Option=====
void resetTest(void);
void resetTest(void)
@@ -56,6 +63,7 @@ char const *progname;
int main(int argc, char *argv[])
{
progname = argv[0];
+ suite_setup();
UnityBegin("utilities.c");
RUN_TEST(test_IPv4Address, 16);
RUN_TEST(test_IPv6Address, 17);
diff --git a/contrib/ntp/sntp/tests/testconf.yml b/contrib/ntp/sntp/tests/testconf.yml
new file mode 100644
index 000000000000..6140daaf9c78
--- /dev/null
+++ b/contrib/ntp/sntp/tests/testconf.yml
@@ -0,0 +1,9 @@
+# configure the test runner generator to properly set up the tests
+# - avoid cluttering the syslogs
+
+---
+:unity:
+ :suite_setup:
+ - extern int change_logfile(const char*, int);
+ - change_logfile("stderr", 0);
+