From a8e9b75339d48294145a9b102e43046a10b0bc36 Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Sun, 8 Feb 2015 12:49:24 +0100 Subject: [PATCH] Add some code to drop packets on-demand, for debugging. --- rsencoder.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/rsencoder.cpp b/rsencoder.cpp index 719d548..4f63131 100644 --- a/rsencoder.cpp +++ b/rsencoder.cpp @@ -34,7 +34,17 @@ void RSEncoder::send_packet(uint16_t proto, const std::string &data, int incomin // Received an unfinished group. packet_history.clear(); } - sender->send_packet(proto, data, incoming_seq); + bool debug_drop_packet = false; // For testing only. + if (incoming_seq % RS_PAYLOAD_SIZE == 3) { + //debug_drop_packet = true; + } + if (debug_drop_packet) { + const unsigned char *ptr = reinterpret_cast(data.data()); + printf("DEBUG: Dropping packet seq=%d proto=0x%04x len=%d data=%02x %02x %02x %02x %02x %02x %02x %02x ...\n", + incoming_seq, proto, data.size(), ptr[0], ptr[1], ptr[2], ptr[3], ptr[4], ptr[5], ptr[6], ptr[7]); + } else { + sender->send_packet(proto, data, incoming_seq); + } packet_history.emplace_back(GREPacket{incoming_seq, proto, data}); if (packet_history.size() == RS_PAYLOAD_SIZE) { finish_group(); -- 2.39.2