annotate libgaim/tests/test_cipher.c @ 15044:7236b72de90b

[gaim-migrate @ 17828] copy/paste fix... committer: Tailor Script <tailor@pidgin.im>
author Gary Kramlich <grim@reaperworld.com>
date Mon, 27 Nov 2006 03:58:00 +0000
parents 603960420450
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15043
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 #include <glib.h>
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 #include <check.h>
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 #include <stdlib.h>
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 #include <string.h>
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 #undef HAVE_DBUS
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 #include "../cipher.h"
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 #include "../signal.h"
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 /******************************************************************************
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 * MD4 Tests
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 *****************************************************************************/
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 #define MD4_TEST(data, digest) { \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15 GaimCipher *cipher = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 GaimCipherContext *context = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
17 gchar cdigest[33]; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18 gchar *sdigest = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 gboolean ret = FALSE; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
20 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21 cipher = gaim_ciphers_find_cipher("md4"); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22 context = gaim_cipher_context_new(cipher, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 gaim_cipher_context_append(context, (guchar *)(data), strlen((data))); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25 ret = gaim_cipher_context_digest_to_str(context, sizeof(cdigest), cdigest, \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26 NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28 fail_unless(ret == TRUE, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30 fail_unless(strcmp((digest), cdigest) == 0, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32 gaim_cipher_context_destroy(context); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
33 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
34
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
35 START_TEST(test_md4_empty_string) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36 MD4_TEST("", "31d6cfe0d16ae931b73c59d7e0c089c0");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
37 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
38 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
39
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
40 START_TEST(test_md4_a) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
41 MD4_TEST("a", "bde52cb31de33e46245e05fbdbd6fb24");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
45 START_TEST(test_md4_abc) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
46 MD4_TEST("abc", "a448017aaf21d8525fc10ae87aa6729d");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
47 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
48 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
49
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
50 START_TEST(test_md4_message_digest) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
51 MD4_TEST("message digest", "d9130a8164549fe818874806e1c7014b");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
52 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
53 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
54
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
55 START_TEST(test_md4_a_to_z) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
56 MD4_TEST("abcdefghijklmnopqrstuvwxyz",
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
57 "d79e1c308aa5bbcdeea8ed63df412da9");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
58 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
59 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
60
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
61 START_TEST(test_md4_A_to_Z_a_to_z_0_to_9) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
62 MD4_TEST("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
63 "043f8582f241db351ce627e153e7f0e4");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
64 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
65 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
66
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
67 START_TEST(test_md4_1_to_0_8_times) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
68 MD4_TEST("123456789012345678901234567890123456789012345678901234567890"
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
69 "12345678901234567890",
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
70 "e33b4ddc9c38f2199c3e7b164fcc0536");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
71 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
72 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
73
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
74
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
75 /******************************************************************************
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
76 * MD5 Tests
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
77 *****************************************************************************/
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
78 #define MD5_TEST(data, digest) { \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
79 GaimCipher *cipher = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
80 GaimCipherContext *context = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
81 gchar cdigest[33]; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
82 gchar *sdigest = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
83 gboolean ret = FALSE; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
84 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
85 cipher = gaim_ciphers_find_cipher("md5"); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
86 context = gaim_cipher_context_new(cipher, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
87 gaim_cipher_context_append(context, (guchar *)(data), strlen((data))); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
88 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
89 ret = gaim_cipher_context_digest_to_str(context, sizeof(cdigest), cdigest, \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
90 NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
91 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
92 fail_unless(ret == TRUE, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
93 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
94 fail_unless(strcmp((digest), cdigest) == 0, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
95 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
96 gaim_cipher_context_destroy(context); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
97 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
98
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
99 START_TEST(test_md5_empty_string) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
100 MD5_TEST("", "d41d8cd98f00b204e9800998ecf8427e");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
101 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
102 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
103
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
104 START_TEST(test_md5_a) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
105 MD5_TEST("a", "0cc175b9c0f1b6a831c399e269772661");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
106 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
107 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
108
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
109 START_TEST(test_md5_abc) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
110 MD5_TEST("abc", "900150983cd24fb0d6963f7d28e17f72");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
111 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
112 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
113
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
114 START_TEST(test_md5_message_digest) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
115 MD5_TEST("message digest", "f96b697d7cb7938d525a2f31aaf161d0");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
116 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
117 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
118
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
119 START_TEST(test_md5_a_to_z) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
120 MD5_TEST("abcdefghijklmnopqrstuvwxyz",
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
121 "c3fcd3d76192e4007dfb496cca67e13b");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
122 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
123 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
124
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
125 START_TEST(test_md5_A_to_Z_a_to_z_0_to_9) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
126 MD5_TEST("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
127 "d174ab98d277d9f5a5611c2c9f419d9f");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
128 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
129 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
130
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
131 START_TEST(test_md5_1_to_0_8_times) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
132 MD5_TEST("123456789012345678901234567890123456789012345678901234567890"
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
133 "12345678901234567890",
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
134 "57edf4a22be3c955ac49da2e2107b67a");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
135 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
136 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
137
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
138 /******************************************************************************
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
139 * SHA-1 Tests
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
140 *****************************************************************************/
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
141 #define SHA1_TEST(data, digest) { \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
142 GaimCipher *cipher = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
143 GaimCipherContext *context = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
144 gchar cdigest[41]; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
145 gchar *sdigest = NULL; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
146 gboolean ret = FALSE; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
147 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
148 cipher = gaim_ciphers_find_cipher("sha1"); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
149 context = gaim_cipher_context_new(cipher, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
150 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
151 if((data)) { \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
152 gaim_cipher_context_append(context, (guchar *)(data), strlen((data))); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
153 } else { \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
154 gint j; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
155 guchar buff[1000]; \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
156 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
157 memset(buff, 'a', 1000); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
158 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
159 for(j = 0; j < 1000; j++) \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
160 gaim_cipher_context_append(context, buff, 1000); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
161 } \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
162 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
163 ret = gaim_cipher_context_digest_to_str(context, sizeof(cdigest), cdigest, \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
164 NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
165 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
166 fail_unless(ret == TRUE, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
167 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
168 fail_unless(strcmp((digest), cdigest) == 0, NULL); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
169 \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
170 gaim_cipher_context_destroy(context); \
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
171 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
172
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
173 START_TEST(test_sha1_a) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
174 SHA1_TEST("a", "86f7e437faa5a7fce15d1ddcb9eaeaea377667b8");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
175 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
176 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
177
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
178 START_TEST(test_sha1_abc) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
179 SHA1_TEST("abc", "a9993e364706816aba3e25717850c26c9cd0d89d");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
180 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
181 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
182
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
183 START_TEST(test_sha1_abcd_gibberish) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
184 SHA1_TEST("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq",
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
185 "84983e441c3bd26ebaae4aa1f95129e5e54670f1");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
186 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
187 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
188
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
189 START_TEST(test_sha1_1000_as_1000_times) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
190 SHA1_TEST(NULL, "34aa973cd4c4daa4f61eeb2bdbad27316534016f");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
191 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
192 END_TEST
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
193
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
194 /******************************************************************************
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
195 * Suite
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
196 *****************************************************************************/
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
197 Suite *
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
198 cipher_suite(void) {
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
199 Suite *s = suite_create("Cipher Suite");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
200 TCase *tc = NULL;
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
201
15044
7236b72de90b [gaim-migrate @ 17828]
Gary Kramlich <grim@reaperworld.com>
parents: 15043
diff changeset
202 /* md4 tests */
15043
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
203 tc = tcase_create("MD4");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
204 tcase_add_test(tc, test_md4_empty_string);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
205 tcase_add_test(tc, test_md4_a);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
206 tcase_add_test(tc, test_md4_abc);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
207 tcase_add_test(tc, test_md4_message_digest);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
208 tcase_add_test(tc, test_md4_a_to_z);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
209 tcase_add_test(tc, test_md4_A_to_Z_a_to_z_0_to_9);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
210 tcase_add_test(tc, test_md4_1_to_0_8_times);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
211 suite_add_tcase(s, tc);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
212
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
213 /* md5 tests */
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
214 tc = tcase_create("MD5");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
215 tcase_add_test(tc, test_md5_empty_string);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
216 tcase_add_test(tc, test_md5_a);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
217 tcase_add_test(tc, test_md5_abc);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
218 tcase_add_test(tc, test_md5_message_digest);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
219 tcase_add_test(tc, test_md5_a_to_z);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
220 tcase_add_test(tc, test_md5_A_to_Z_a_to_z_0_to_9);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
221 tcase_add_test(tc, test_md5_1_to_0_8_times);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
222 suite_add_tcase(s, tc);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
223
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
224 /* sha1 tests */
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
225 tc = tcase_create("SHA1");
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
226 tcase_add_test(tc, test_sha1_a);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
227 tcase_add_test(tc, test_sha1_abc);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
228 tcase_add_test(tc, test_sha1_abcd_gibberish);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
229 tcase_add_test(tc, test_sha1_1000_as_1000_times);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
230 suite_add_tcase(s, tc);
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
231
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
232 return s;
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
233 }
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
234
603960420450 [gaim-migrate @ 17827]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
235