From a081366dadeeefe385897b845dade73c2d435e11 Mon Sep 17 00:00:00 2001 From: Piotr Krysik Date: Sun, 2 Apr 2017 17:19:13 +0200 Subject: Quick hack to interpret unencrypted assignment commands --- lib/misc_utils/extract_cmc_impl.cc | 12 +++++++++++- lib/misc_utils/extract_cmc_impl.h | 2 ++ 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/misc_utils/extract_cmc_impl.cc b/lib/misc_utils/extract_cmc_impl.cc index 5fa6a6b..9d59736 100755 --- a/lib/misc_utils/extract_cmc_impl.cc +++ b/lib/misc_utils/extract_cmc_impl.cc @@ -40,7 +40,7 @@ namespace gr { gsmtap_hdr * header = (gsmtap_hdr *)message_plus_header; uint8_t * msg_elements = (uint8_t *)(message_plus_header+sizeof(gsmtap_hdr)); - if((msg_elements[3] & 0xF) == 0x6 && msg_elements[4] == 0x35) + if((msg_elements[3] & 0xFF) == 0x06 && msg_elements[4] == 0x35) { int frame_nr = be32toh(header->frame_number); @@ -50,6 +50,11 @@ namespace gr { d_framenumbers.push_back(frame_nr); d_a5_versions.push_back(a5_version); } + if((msg_elements[3] & 0xFF) == 0x06 && msg_elements[4] == 0x2e) + { + int frame_nr = be32toh(header->frame_number); + d_assignment_commands.push_back(frame_nr); + } } std::vector extract_cmc_impl::get_framenumbers() @@ -67,6 +72,11 @@ namespace gr { return d_start_ciphering; } + std::vector extract_cmc_impl::get_assignment_commands() + { + return d_assignment_commands; + } + extract_cmc::sptr extract_cmc::make() { diff --git a/lib/misc_utils/extract_cmc_impl.h b/lib/misc_utils/extract_cmc_impl.h index fe03bc8..5fca80f 100755 --- a/lib/misc_utils/extract_cmc_impl.h +++ b/lib/misc_utils/extract_cmc_impl.h @@ -35,10 +35,12 @@ namespace gr { std::vector d_framenumbers; std::vector d_a5_versions; std::vector d_start_ciphering; + std::vector d_assignment_commands; public: virtual std::vector get_framenumbers(); virtual std::vector get_a5_versions(); virtual std::vector get_start_ciphering(); + virtual std::vector get_assignment_commands(); extract_cmc_impl(); ~extract_cmc_impl(); }; -- cgit v1.2.3