aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/stream
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/stream')
-rw-r--r--src/lib/stream/stream_utils.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/lib/stream/stream_utils.h b/src/lib/stream/stream_utils.h
new file mode 100644
index 000000000..7503029f6
--- /dev/null
+++ b/src/lib/stream/stream_utils.h
@@ -0,0 +1,33 @@
+/*
+* Stream Cipher Utility Header
+* (C) 2015 Jack Lloyd
+*
+* Botan is released under the Simplified BSD License (see license.txt)
+*/
+
+#ifndef BOTAN_STREAM_CIPHER_UTIL_H__
+#define BOTAN_STREAM_CIPHER_UTIL_H__
+
+#include <botan/algo_registry.h>
+#include <botan/loadstor.h>
+#include <botan/rotate.h>
+#include <botan/internal/xor_buf.h>
+#include <algorithm>
+
+namespace Botan {
+
+#define BOTAN_REGISTER_STREAM_CIPHER(name, maker) BOTAN_REGISTER_T(StreamCipher, name, maker)
+#define BOTAN_REGISTER_STREAM_CIPHER_NOARGS(name) BOTAN_REGISTER_T_NOARGS(StreamCipher, name)
+
+#define BOTAN_REGISTER_STREAM_CIPHER_1LEN(name, def) BOTAN_REGISTER_T_1LEN(StreamCipher, name, def)
+
+#define BOTAN_REGISTER_STREAM_CIPHER_NAMED_NOARGS(type, name) BOTAN_REGISTER_NAMED_T(StreamCipher, name, type, make_new_T<type>)
+#define BOTAN_REGISTER_STREAM_CIPHER_NAMED_1LEN(type, name, def) \
+ BOTAN_REGISTER_NAMED_T(StreamCipher, name, type, (make_new_T_1len<type,def>))
+
+#define BOTAN_REGISTER_STREAM_CIPHER_NOARGS_IF(cond, type, name, provider) \
+ BOTAN_COND_REGISTER_NAMED_T_NOARGS(cond, StreamCipher, type, name, provider)
+
+}
+
+#endif