Botan
1.11.15
|
#include <out_buf.h>
Public Member Functions | |
void | add (class SecureQueue *) |
size_t | get_bytes_read (Pipe::message_id) const |
Pipe::message_id | message_count () const |
Output_Buffers () | |
size_t | peek (byte[], size_t, size_t, Pipe::message_id) const |
size_t | read (byte[], size_t, Pipe::message_id) |
size_t | remaining (Pipe::message_id) const |
void | retire () |
~Output_Buffers () |
Definition at line 117 of file out_buf.cpp.
{ offset = 0; }
Definition at line 125 of file out_buf.cpp.
{ for(size_t j = 0; j != buffers.size(); ++j) delete buffers[j]; }
void Botan::Output_Buffers::add | ( | class SecureQueue * | queue | ) |
Definition at line 64 of file out_buf.cpp.
References BOTAN_ASSERT.
{ BOTAN_ASSERT(queue, "queue was provided"); BOTAN_ASSERT(buffers.size() < buffers.max_size(), "Room was available in container"); buffers.push_back(queue); }
size_t Botan::Output_Buffers::get_bytes_read | ( | Pipe::message_id | msg | ) | const |
Definition at line 53 of file out_buf.cpp.
References Botan::SecureQueue::get_bytes_read(), and q.
Referenced by Botan::Pipe::get_bytes_read().
{ SecureQueue* q = get(msg); if (q) return q->get_bytes_read(); return 0; }
Definition at line 109 of file out_buf.cpp.
Referenced by Botan::Pipe::message_count().
{
return (offset + buffers.size());
}
size_t Botan::Output_Buffers::peek | ( | byte | output[], |
size_t | length, | ||
size_t | stream_offset, | ||
Pipe::message_id | msg | ||
) | const |
Definition at line 29 of file out_buf.cpp.
References Botan::SecureQueue::peek(), and q.
Referenced by Botan::Pipe::peek().
{ SecureQueue* q = get(msg); if(q) return q->peek(output, length, stream_offset); return 0; }
size_t Botan::Output_Buffers::read | ( | byte | output[], |
size_t | length, | ||
Pipe::message_id | msg | ||
) |
Definition at line 17 of file out_buf.cpp.
References q, and Botan::SecureQueue::read().
Referenced by Botan::Pipe::read().
{ SecureQueue* q = get(msg); if(q) return q->read(output, length); return 0; }
size_t Botan::Output_Buffers::remaining | ( | Pipe::message_id | msg | ) | const |
Definition at line 42 of file out_buf.cpp.
References q, and Botan::SecureQueue::size().
Referenced by Botan::Pipe::remaining().
{ SecureQueue* q = get(msg); if(q) return q->size(); return 0; }
void Botan::Output_Buffers::retire | ( | ) |
Definition at line 77 of file out_buf.cpp.
Referenced by Botan::Pipe::end_msg().
{ for(size_t i = 0; i != buffers.size(); ++i) if(buffers[i] && buffers[i]->size() == 0) { delete buffers[i]; buffers[i] = nullptr; } while(buffers.size() && !buffers[0]) { buffers.pop_front(); offset = offset + Pipe::message_id(1); } }