Debug, cmd remove, close connection at last response

This commit is contained in:
Pascal Engélibert 2026-02-02 16:06:04 +01:00
commit c38b24a8ed
4 changed files with 98 additions and 13 deletions

View file

@ -4,7 +4,7 @@ use std::{
sync::mpsc::{Receiver, Sender, channel},
};
use crate::util::print_bin;
use crate::util::{ResponseStreamer, print_bin};
const CLIENT_TO_SERVER: u8 = b'C';
const SERVER_TO_CLIENT: u8 = b'S';
@ -295,3 +295,26 @@ pub fn make_test_record(path: &str) {
write_record(&mut file, *direction, *conn_id, *server_name, *data);
}
}
pub fn remove_record(
input_path: &str,
output_path: &str,
record_to_remove: u64,
packet_to_remove: usize,
) {
let records = read_record_file(input_path);
let mut output_file = std::fs::OpenOptions::new()
.write(true)
.create(true)
.truncate(true)
.open(output_path)
.unwrap();
for (conn_id, (server_name, packets)) in records.into_iter() {
let server_name = String::from_utf8(server_name).unwrap();
for (packet_id, (direction, data)) in packets.into_iter().enumerate() {
if conn_id != record_to_remove || packet_id != packet_to_remove {
write_record(&mut output_file, direction, conn_id, &server_name, &data);
}
}
}
}