client-c  0.8.1
kaatcp_common.h
Go to the documentation of this file.
1 
17 #ifndef KAATCP_COMMON_H_
18 #define KAATCP_COMMON_H_
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
24 #include "../../platform/defaults.h"
25 
26 #define KAATCP_PROTOCOL_NAME_MAX_SIZE 10
27 
28 #define FIRST_BIT 0x80
29 #define MAX_MESSAGE_TYPE_LENGTH 0x0F
30 #define MAX_MESSAGE_LENGTH 0x0FFFFFFF
31 #define PROTOCOL_VERSION 0x01
32 
33 #define KAA_SYNC_HEADER_LENGTH 12
34 #define KAA_SYNC_ZIPPED_BIT 0x02
35 #define KAA_SYNC_ENCRYPTED_BIT 0x04
36 #define KAA_SYNC_REQUEST_BIT 0x01
37 #define KAA_SYNC_SYNC_BIT 0x10
38 #define KAA_SYNC_BOOTSTRAP_BIT 0x20
39 
40 #define KAA_BOOTSTRAP_RSA_PKSC8 0x01
41 #define KAA_BOOTSTRAP_CHANNEL_HTTP 0x01
42 #define KAA_BOOTSTRAP_CHANNEL_HTTPLP 0x02
43 #define KAA_BOOTSTRAP_CHANNEL_KAATCP 0x03
44 
45 #define KAA_CONNECT_FLAGS 0x02
46 #define KAA_CONNECT_HEADER_LENGTH 18
47 
48 #define KAA_CONNECT_KEY_AES_RSA 0x11
49 #define KAA_CONNECT_SIGNATURE_SHA1 0x01
50 
51 #define KAA_TCP_NAME "Kaatcp"
52 #define KAA_TCP_NAME_LENGTH 6
53 
54 #define KAA_PING_MESSAGE_SIZE 2
55 #define KAA_DISCONNECT_MESSAGE_SIZE 4
56 
57 typedef enum {
65 
66 typedef enum {
75 
76 typedef struct {
78  char protocol_name[KAATCP_PROTOCOL_NAME_MAX_SIZE];
79 
81 
82  uint8_t connect_flags;
83 
84  uint32_t next_ptorocol_id;
85 
87  uint8_t signature_flags;
88 
89  uint16_t keep_alive;
90 
92  char *session_key;
93 
95  char *signature;
96 
98  char *sync_request;
99 
101 
102 typedef enum {
111 
112 typedef struct {
113  uint16_t return_code;
115 
116 typedef enum {
121 
122 typedef struct {
123  uint16_t reason;
125 
126 typedef struct {
128  char protocol_name[KAATCP_PROTOCOL_NAME_MAX_SIZE];
129 
131  uint16_t message_id;
132  uint8_t flags;
134 
135 typedef struct {
137 
141 
142 #ifdef __cplusplus
143 } /* extern "C" */
144 #endif
145 #endif /* KAATCP_COMMON_H_ */
uint8_t connect_flags
Definition: kaatcp_common.h:82
uint16_t return_code
uint8_t signature_flags
Definition: kaatcp_common.h:87
kaatcp_connack_code_t
uint8_t session_key_flags
Definition: kaatcp_common.h:86
size_t sync_request_size
kaatcp_error_t
Definition: kaatcp_common.h:57
uint16_t protocol_name_length
Definition: kaatcp_common.h:77
kaatcp_kaasync_header_t sync_header
kaatcp_message_type_t
Definition: kaatcp_common.h:66
kaatcp_disconnect_reason_t
size_t sync_request_size
Definition: kaatcp_common.h:97
#define KAATCP_PROTOCOL_NAME_MAX_SIZE
Definition: kaatcp_common.h:26
uint16_t keep_alive
Definition: kaatcp_common.h:89
size_t session_key_size
Definition: kaatcp_common.h:91
uint8_t protocol_version
Definition: kaatcp_common.h:80
uint32_t next_ptorocol_id
Definition: kaatcp_common.h:84