1 //
2 // Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2021
3 //
4 // Distributed under the Boost Software License, Version 1.0. (See accompanying
5 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 //
7 #pragma once
8 
9 #include "td/utils/common.h"
10 #include "td/utils/UInt.h"
11 
12 namespace td {
13 namespace mtproto {
14 
15 struct PacketInfo {
16   enum { Common, EndToEnd } type = Common;
17   uint64 auth_key_id{0};
18   uint32 message_ack{0};
19   UInt128 message_key;
20 
21   uint64 salt{0};
22   uint64 session_id{0};
23 
24   uint64 message_id{0};
25   int32 seq_no{0};
26   int32 version{1};
27   bool no_crypto_flag{false};
28   bool is_creator{false};
29   bool check_mod4{true};
30   bool use_random_padding{false};
31   uint32 size{0};
32 };
33 
34 }  // namespace mtproto
35 }  // namespace td
36