• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2021 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 #ifndef HDC_DEFINE_H
16 #define HDC_DEFINE_H
17 #include "define_plus.h"
18 
19 namespace Hdc {
20 // ############################## config #######################################
21 #ifndef USE_CONFIG_UV_THREADS
22 constexpr size_t SIZE_THREAD_POOL = 16;
23 #endif
24 constexpr size_t SIZE_THREAD_POOL_MIN = 16;
25 constexpr size_t SIZE_THREAD_POOL_MAX = 256;
26 constexpr uint8_t GLOBAL_TIMEOUT = 30;
27 constexpr uint16_t DEFAULT_PORT = 8710;
28 constexpr bool ENABLE_IO_CHECKSUM = false;
29 const string IPV4_MAPPING_PREFIX = "::ffff:";
30 const string DEFAULT_SERVER_ADDR_IP = "::ffff:127.0.0.1";
31 const string DEFAULT_SERVER_ADDR = "::ffff:127.0.0.1:8710";
32 const string ENV_SERVER_PORT = "OHOS_HDC_SERVER_PORT";
33 
34 // ################################ macro define ###################################
35 constexpr uint8_t MINOR_TIMEOUT = 5;
36 constexpr uint8_t DWORD_SERIALIZE_SIZE = 4;
37 constexpr uint8_t CMD_ARG1_COUNT = 2;
38 constexpr uint8_t STREAM_MAIN = 0;  // work at main thread
39 constexpr uint8_t STREAM_WORK = 1;  // work at work thread
40 constexpr uint16_t TIME_BUF_SIZE = 32;
41 constexpr uint16_t BUF_SIZE_MICRO = 16;
42 constexpr uint16_t BUF_SIZE_TINY = 64;
43 constexpr uint16_t BUF_SIZE_SMALL = 256;
44 constexpr uint16_t BUF_SIZE_MEDIUM = 512;
45 constexpr uint16_t BUF_SIZE_DEFAULT = 1024;
46 constexpr uint16_t BUF_SIZE_DEFAULT2 = BUF_SIZE_DEFAULT * 2;
47 constexpr uint16_t BUF_SIZE_DEFAULT4 = BUF_SIZE_DEFAULT * 4;
48 constexpr uint16_t MAX_IP_PORT = 65535;
49 constexpr uint16_t MAX_CONNECTKEY_SIZE = 32;  // usb sn/tcp ipport
50 constexpr uint16_t TIME_BASE = 1000;          // time unit conversion base value
51 constexpr uint16_t UV_DEFAULT_INTERVAL = 250;  // ms
52 constexpr uint16_t VER_PROTOCOL = 0x01;
53 constexpr uint16_t MAX_PACKET_SIZE_HISPEED = 512;
54 constexpr uint16_t DEVICE_CHECK_INTERVAL = 3000;  // ms
55 constexpr uint16_t MAX_SIZE_IOBUF = 15360;
56 constexpr uint16_t MAX_USBFFS_BULK = 16384;
57 // double-word(hex)=[0]major[1][2]minor[3][4]version[5]fix(a-p)[6][7]reserve
58 constexpr uint32_t HDC_VERSION_NUMBER = 0x10200000;  // 1.2.0a=0x10200000
59 constexpr uint32_t HDC_BUF_MAX_BYTES = INT_MAX;
60 constexpr uint32_t HDC_SOCKETPAIR_SIZE = MAX_SIZE_IOBUF * 10;
61 
62 const string WHITE_SPACES = " \t\n\r";
63 const string UT_TMP_PATH = "/tmp/hdc-ut";
64 const string LOG_FILE_NAME = "hdc.log";
65 const string LOG_BAK_NAME = "hdclast.log";
66 const string LOG_CACHE_NAME = ".hdc.cache.log";
67 constexpr uint64_t LOG_FILE_MAX_SIZE = 104857600;
68 const string SERVER_NAME = "HDCServer";
69 const string STRING_EMPTY = "";
70 const string HANDSHAKE_MESSAGE = "OHOS HDC";  // sep not char '-', not more than 11 bytes
71 const string HANDSHAKE_FAILED = "HS FAILED";
72 const string PACKET_FLAG = "HW";              // must 2bytes
73 const string EMPTY_ECHO = "[Empty]";
74 const string MESSAGE_INFO = "[Info]";
75 const string MESSAGE_FAIL = "[Fail]";
76 const string MESSAGE_SUCCESS = "[Success]";
77 // input command
78 const string CMDSTR_SOFTWARE_VERSION = "version";
79 const string CMDSTR_SOFTWARE_HELP = "help";
80 const string CMDSTR_TARGET_DISCOVER = "discover";
81 const string CMDSTR_SERVICE_START = "start";
82 const string CMDSTR_SERVICE_KILL = "kill";
83 const string CMDSTR_GENERATE_KEY = "keygen";
84 const string CMDSTR_KILL_SERVER = "kserver";
85 const string CMDSTR_KILL_DAEMON = "kdaemon";
86 const string CMDSTR_LIST_TARGETS = "list targets";
87 const string CMDSTR_CHECK_SERVER = "checkserver";
88 const string CMDSTR_CHECK_DEVICE = "checkdevice";
89 const string CMDSTR_WAIT_FOR = "wait";
90 const string CMDSTR_CONNECT_TARGET = "tconn";
91 const string CMDSTR_CONNECT_ANY = "any";
92 const string CMDSTR_SHELL = "shell";
93 const string CMDSTR_TARGET_REBOOT = "target boot";
94 const string CMDSTR_TARGET_MOUNT = "target mount";
95 const string CMDSTR_STARTUP_MODE = "smode";
96 const string CMDSTR_TARGET_MODE = "tmode";
97 const string CMDSTR_BUGREPORT = "bugreport";
98 const string CMDSTR_HILOG = "hilog";
99 const string CMDSTR_TMODE_USB = "usb";
100 #ifdef HDC_SUPPORT_UART
101 const string CMDSTR_TMODE_UART = "uart";
102 const string UART_HDC_NODE = "/dev/ttyS4";
103 const string CONSOLE_ACTIVE_NODE = "/sys/class/tty/console/active";
104 constexpr int uartIOWaitTime100 = 100;
105 constexpr int uartIOWaitTime = 1000;
106 constexpr uint16_t MAX_UART_SIZE_IOBUF = 4096; // MAX_SIZE_IOBUF;
107 #endif
108 const string CMDSTR_TMODE_TCP = "tcp";
109 const string CMDSTR_FILE_SEND = "file send";
110 const string CMDSTR_FILE_RECV = "file recv";
111 const string CMDSTR_REMOTE_PARAMETER = "remote";
112 const string CMDSTR_FORWARD_FPORT = "fport";
113 const string CMDSTR_FORWARD_RPORT = "rport";
114 const string CMDSTR_APP_INSTALL = "install";
115 const string CMDSTR_APP_UNINSTALL = "uninstall";
116 const string CMDSTR_APP_SIDELOAD = "sideload";
117 const string CMDSTR_LIST_JDWP = "jpid";
118 const string CMDSTR_TRACK_JDWP = "track-jpid";
119 const string CMDSTR_INNER_ENABLE_KEEPALIVE = "alive";
120 const string CMDSTR_FLASHD_UPDATE = "update";
121 const string CMDSTR_FLASHD_FLASH = "flash";
122 const string CMDSTR_FLASHD_ERASE = "erase";
123 const string CMDSTR_FLASHD_FORMAT = "format";
124 }  // namespace Hdc
125 #endif  // HDC_DEFINE_H
126