9#ifndef BOTAN_SECURE_QUEUE_H_
10#define BOTAN_SECURE_QUEUE_H_
12#include <botan/data_src.h>
13#include <botan/filter.h>
25 std::string
name()
const override {
return "Queue"; }
27 void write(
const uint8_t[],
size_t)
override;
29 size_t read(uint8_t[],
size_t)
override;
30 size_t peek(uint8_t[],
size_t,
size_t = 0)
const override;
68 class SecureQueueNode* m_head;
69 class SecureQueueNode* m_tail;
virtual size_t get_bytes_read() const =0
virtual size_t peek(uint8_t out[], size_t length, size_t peek_offset) const BOTAN_WARN_UNUSED_RESULT=0
virtual size_t read(uint8_t out[], size_t length) BOTAN_WARN_UNUSED_RESULT=0
virtual bool end_of_data() const =0
virtual void write(const uint8_t input[], size_t length)=0
Filter & operator=(const Filter &)=delete
bool check_available(size_t n) override
std::string name() const override
bool attachable() override
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
#define BOTAN_FUTURE_INTERNAL_HEADER(hdr)