aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/3rdparty/botan/src/lib/filters/filters.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/3rdparty/botan/src/lib/filters/filters.h')
-rw-r--r--src/libs/3rdparty/botan/src/lib/filters/filters.h227
1 files changed, 0 insertions, 227 deletions
diff --git a/src/libs/3rdparty/botan/src/lib/filters/filters.h b/src/libs/3rdparty/botan/src/lib/filters/filters.h
deleted file mode 100644
index b4aee12078..0000000000
--- a/src/libs/3rdparty/botan/src/lib/filters/filters.h
+++ /dev/null
@@ -1,227 +0,0 @@
-/*
-* Filters
-* (C) 1999-2007,2015 Jack Lloyd
-*
-* Botan is released under the Simplified BSD License (see license.txt)
-*/
-
-#ifndef BOTAN_FILTERS_H_
-#define BOTAN_FILTERS_H_
-
-#include <botan/basefilt.h>
-#include <botan/key_filt.h>
-#include <botan/data_snk.h>
-#include <botan/pipe.h>
-
-#if defined(BOTAN_HAS_STREAM_CIPHER)
- #include <botan/stream_cipher.h>
-#endif
-
-#if defined(BOTAN_HAS_HASH)
- #include <botan/hash.h>
-#endif
-
-#if defined(BOTAN_HAS_MAC)
- #include <botan/mac.h>
-#endif
-
-#if defined(BOTAN_HAS_CODEC_FILTERS)
- #include <botan/b64_filt.h>
- #include <botan/hex_filt.h>
-#endif
-
-namespace Botan {
-
-#if defined(BOTAN_HAS_STREAM_CIPHER)
-
-/**
-* Stream Cipher Filter
-*/
-class BOTAN_PUBLIC_API(2,0) StreamCipher_Filter final : public Keyed_Filter
- {
- public:
-
- std::string name() const override { return m_cipher->name(); }
-
- /**
- * Write input data
- * @param input data
- * @param input_len length of input in bytes
- */
- void write(const uint8_t input[], size_t input_len) override;
-
- bool valid_iv_length(size_t iv_len) const override
- { return m_cipher->valid_iv_length(iv_len); }
-
- /**
- * Set the initialization vector for this filter.
- * @param iv the initialization vector to set
- */
- void set_iv(const InitializationVector& iv) override
- {
- m_cipher->set_iv(iv.begin(), iv.length());
- }
-
- /**
- * Set the key of this filter.
- * @param key the key to set
- */
- void set_key(const SymmetricKey& key) override { m_cipher->set_key(key); }
-
- Key_Length_Specification key_spec() const override { return m_cipher->key_spec(); }
-
- /**
- * Construct a stream cipher filter.
- * @param cipher a cipher object to use
- */
- explicit StreamCipher_Filter(StreamCipher* cipher);
-
- /**
- * Construct a stream cipher filter.
- * @param cipher a cipher object to use
- * @param key the key to use inside this filter
- */
- StreamCipher_Filter(StreamCipher* cipher, const SymmetricKey& key);
-
- /**
- * Construct a stream cipher filter.
- * @param cipher the name of the desired cipher
- */
- explicit StreamCipher_Filter(const std::string& cipher);
-
- /**
- * Construct a stream cipher filter.
- * @param cipher the name of the desired cipher
- * @param key the key to use inside this filter
- */
- StreamCipher_Filter(const std::string& cipher, const SymmetricKey& key);
- private:
- secure_vector<uint8_t> m_buffer;
- std::unique_ptr<StreamCipher> m_cipher;
- };
-#endif
-
-#if defined(BOTAN_HAS_HASH)
-
-/**
-* Hash Filter.
-*/
-class BOTAN_PUBLIC_API(2,0) Hash_Filter final : public Filter
- {
- public:
- void write(const uint8_t input[], size_t len) override { m_hash->update(input, len); }
- void end_msg() override;
-
- std::string name() const override { return m_hash->name(); }
-
- /**
- * Construct a hash filter.
- * @param hash the hash function to use
- * @param len the output length of this filter. Leave the default
- * value 0 if you want to use the full output of the hashfunction
- * hash. Otherwise, specify a smaller value here so that the
- * output of the hash algorithm will be cut off.
- */
- Hash_Filter(HashFunction* hash, size_t len = 0) :
- m_hash(hash), m_out_len(len) {}
-
- /**
- * Construct a hash filter.
- * @param request the name of the hash algorithm to use
- * @param len the output length of this filter. Leave the default
- * value 0 if you want to use the full output of the hashfunction
- * hash. Otherwise, specify a smaller value here so that the
- * output of the hash algorithm will be cut off.
- */
- Hash_Filter(const std::string& request, size_t len = 0);
-
- private:
- std::unique_ptr<HashFunction> m_hash;
- const size_t m_out_len;
- };
-#endif
-
-#if defined(BOTAN_HAS_MAC)
-
-/**
-* MessageAuthenticationCode Filter.
-*/
-class BOTAN_PUBLIC_API(2,0) MAC_Filter final : public Keyed_Filter
- {
- public:
- void write(const uint8_t input[], size_t len) override { m_mac->update(input, len); }
- void end_msg() override;
-
- std::string name() const override { return m_mac->name(); }
-
- /**
- * Set the key of this filter.
- * @param key the key to set
- */
- void set_key(const SymmetricKey& key) override { m_mac->set_key(key); }
-
- Key_Length_Specification key_spec() const override { return m_mac->key_spec(); }
-
- /**
- * Construct a MAC filter. The MAC key will be left empty.
- * @param mac the MAC to use
- * @param out_len the output length of this filter. Leave the default
- * value 0 if you want to use the full output of the
- * MAC. Otherwise, specify a smaller value here so that the
- * output of the MAC will be cut off.
- */
- MAC_Filter(MessageAuthenticationCode* mac,
- size_t out_len = 0) :
- m_mac(mac),
- m_out_len(out_len)
- {
- }
-
- /**
- * Construct a MAC filter.
- * @param mac the MAC to use
- * @param key the MAC key to use
- * @param out_len the output length of this filter. Leave the default
- * value 0 if you want to use the full output of the
- * MAC. Otherwise, specify a smaller value here so that the
- * output of the MAC will be cut off.
- */
- MAC_Filter(MessageAuthenticationCode* mac,
- const SymmetricKey& key,
- size_t out_len = 0) :
- m_mac(mac),
- m_out_len(out_len)
- {
- m_mac->set_key(key);
- }
-
- /**
- * Construct a MAC filter. The MAC key will be left empty.
- * @param mac the name of the MAC to use
- * @param len the output length of this filter. Leave the default
- * value 0 if you want to use the full output of the
- * MAC. Otherwise, specify a smaller value here so that the
- * output of the MAC will be cut off.
- */
- MAC_Filter(const std::string& mac, size_t len = 0);
-
- /**
- * Construct a MAC filter.
- * @param mac the name of the MAC to use
- * @param key the MAC key to use
- * @param len the output length of this filter. Leave the default
- * value 0 if you want to use the full output of the
- * MAC. Otherwise, specify a smaller value here so that the
- * output of the MAC will be cut off.
- */
- MAC_Filter(const std::string& mac, const SymmetricKey& key,
- size_t len = 0);
- private:
- std::unique_ptr<MessageAuthenticationCode> m_mac;
- const size_t m_out_len;
- };
-#endif
-
-}
-
-#endif