]> source.dussan.org Git - rspamd.git/commitdiff
Unify align macro.
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Sun, 8 Feb 2015 22:27:04 +0000 (22:27 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Sun, 8 Feb 2015 22:27:04 +0000 (22:27 +0000)
config.h.in
contrib/blake2/blake2.h
src/libcryptobox/cryptobox.c
test/rspamd_http_test.c

index c1e819fb2caf5eca9fd81666bae24e9765a38938..e45f95f4cf96c0ab55435a0a503b463c63ae0906 100644 (file)
@@ -472,6 +472,14 @@ typedef off_t goffset;
 #include <gmime/gmime.h>
 #endif
 
+#ifndef ALIGN
+#if defined(_MSC_VER)
+# define ALIGN(x) __declspec(align(x))
+#else
+# define ALIGN(x) __attribute__((aligned(x)))
+#endif
+#endif
+
 /* Forwarded declaration */
 struct module_ctx;
 struct rspamd_config;
index 433c429e06560b83a6b5e087206715a882c96cfd..b0c852284c3605af7467192ff9901c94ed264325 100644 (file)
 #include <stddef.h>
 #include <stdint.h>
 
+#ifndef ALIGN
 #if defined(_MSC_VER)
-#define ALIGN(x) __declspec(align(x))
+# define ALIGN(x) __declspec(align(x))
 #else
-#define ALIGN(x) __attribute__((aligned(x)))
+# define ALIGN(x) __attribute__((aligned(x)))
+#endif
 #endif
 
 #if defined(__cplusplus)
index da43a137c6968883a371380739c6bac298a58057..ecc3b5cfcf21f4c8c3939fce759e67f6fd1e4c08 100644 (file)
@@ -141,8 +141,8 @@ void rspamd_cryptobox_encrypt_nm_inplace (guchar *data, gsize len,
                const rspamd_nm_t nm, rspamd_sig_t sig)
 {
        poly1305_state mac_ctx;
-       guchar subkey[CHACHA_BLOCKBYTES];
-       chacha_state s;
+       ALIGN(64) guchar subkey[CHACHA_BLOCKBYTES];
+       ALIGN(64) chacha_state s;
        gsize r;
 
        xchacha_init (&s, (const chacha_key *)nm, (const chacha_iv24 *)nonce, 20);
@@ -164,10 +164,10 @@ gboolean
 rspamd_cryptobox_decrypt_nm_inplace (guchar *data, gsize len,
                const rspamd_nonce_t nonce, const rspamd_nm_t nm, const rspamd_sig_t sig)
 {
-       poly1305_state mac_ctx;
-       guchar subkey[CHACHA_BLOCKBYTES];
+       ALIGN(64) poly1305_state mac_ctx;
+       ALIGN(64) guchar subkey[CHACHA_BLOCKBYTES];
        rspamd_sig_t mac;
-       chacha_state s;
+       ALIGN(64) chacha_state s;
        gsize r;
        gboolean ret = TRUE;
 
index 94a12ee817240f0a80b3b2641e8378574964b0b5..581a4c28408395ca4229191d9cba0598fd1c0c47 100644 (file)
@@ -30,7 +30,7 @@
 
 static const int file_blocks = 8;
 static const int pconns = 100;
-static const int ntests = 100;
+static const int ntests = 300;
 
 static void
 rspamd_server_error (struct rspamd_http_connection_entry *conn_ent,