MCPcopy Create free account
hub / github.com/arvidn/libtorrent / crypto_reset

Method crypto_reset

src/receive_buffer.cpp:288–309  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

286}
287
288void crypto_receive_buffer::crypto_reset(int packet_size)
289{
290 TORRENT_ASSERT(packet_finished());
291 TORRENT_ASSERT(crypto_packet_finished());
292 TORRENT_ASSERT(m_recv_pos == INT_MAX || m_recv_pos == m_connection_buffer.pos());
293 TORRENT_ASSERT(m_recv_pos == INT_MAX || m_connection_buffer.pos_at_end());
294
295 if (packet_size == 0)
296 {
297 if (m_recv_pos != INT_MAX)
298 m_connection_buffer.cut(0, m_packet_size);
299 m_recv_pos = INT_MAX;
300 }
301 else
302 {
303 if (m_recv_pos == INT_MAX)
304 m_packet_size = m_connection_buffer.packet_size();
305 m_recv_pos = m_connection_buffer.pos();
306 TORRENT_ASSERT(m_recv_pos >= 0);
307 m_connection_buffer.cut(0, m_recv_pos + packet_size);
308 }
309}
310
311int crypto_receive_buffer::advance_pos(int bytes)
312{

Callers 1

switch_recv_cryptoMethod · 0.80

Calls 4

cutMethod · 0.80
packet_sizeMethod · 0.80
packet_finishedFunction · 0.50
posMethod · 0.45

Tested by

no test coverage detected