From 720a6c429cd2257aeec23c15e1d65f42590180da Mon Sep 17 00:00:00 2001 From: gleb_alcybeev Date: Fri, 22 Jul 2022 11:33:34 +0300 Subject: [PATCH 1/3] Added .gitignore file --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d757675 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/cmake-build-* +/.idea \ No newline at end of file From 01ae5c85d909cf85dd47bb68a770b8e2618d4fed Mon Sep 17 00:00:00 2001 From: gleb_alcybeev Date: Tue, 26 Jul 2022 18:06:15 +0300 Subject: [PATCH 2/3] Added exception for packet serialization --- dot11decrypt.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/dot11decrypt.cpp b/dot11decrypt.cpp index 9eeba79..b6fb049 100644 --- a/dot11decrypt.cpp +++ b/dot11decrypt.cpp @@ -194,7 +194,14 @@ class packet_buffer { auto pkt = make_eth_packet(dot11); // move the inner pdu into the EthernetII to avoid copying pkt.inner_pdu(snap.release_inner_pdu()); - auto buffer = pkt.serialize(); + vector buffer; + try { + buffer = pkt.serialize(); + } + catch (Tins::serialization_error) { + std::cerr << "Serialization error!"; + return false; + } if (write(*fd_, buffer.data(), buffer.size()) == -1) { throw runtime_error("Error writing to tap interface"); } From cff005d14f35531b840810e44c25268f33f00139 Mon Sep 17 00:00:00 2001 From: gleb_alcybeev Date: Tue, 26 Jul 2022 18:11:43 +0300 Subject: [PATCH 3/3] Fixed output --- dot11decrypt.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dot11decrypt.cpp b/dot11decrypt.cpp index b6fb049..42a1a9b 100644 --- a/dot11decrypt.cpp +++ b/dot11decrypt.cpp @@ -58,6 +58,7 @@ using std::move; using std::memset; using std::bind; using std::cout; +using std::cerr; using std::endl; using std::runtime_error; using std::invalid_argument; @@ -199,7 +200,7 @@ class packet_buffer { buffer = pkt.serialize(); } catch (Tins::serialization_error) { - std::cerr << "Serialization error!"; + cerr << "Serialization error!" << endl; return false; } if (write(*fd_, buffer.data(), buffer.size()) == -1) {