1/*
2 * Copyright (C) 2021-2023 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
16#ifndef NETMANAGER_CONSTANTS_H
17#define NETMANAGER_CONSTANTS_H
18
19#include <errors.h>
20
21namespace OHOS {
22namespace NetManagerStandard {
23constexpr int NETMANAGER_ERROR = -1;
24constexpr int NETSYS_SUCCESS = 0;
25
26enum {
27    NETMANAGER_COMMON = 0x00,
28    NETMANAGER_DNS_RESOLVER_MANAGER = 0x01,
29    NETMANAGER_NET_CONN_MANAGER = 0x03,
30    NETMANAGER_NET_POLICY_MANAGER = 0x04,
31};
32
33// Error code for common
34constexpr ErrCode COMMON_ERR_OFFSET = ErrCodeOffset(SUBSYS_COMMUNICATION, NETMANAGER_COMMON);
35
36enum {
37    NETMANAGER_ERR_PERMISSION_DENIED = 201,
38    NETMANAGER_ERR_NOT_SYSTEM_CALL = 202,
39    NETMANAGER_ERR_PARAMETER_ERROR = 401,
40    NETMANAGER_ERR_CAPABILITY_NOT_SUPPORTED = 801,
41    NETMANAGER_SUCCESS = 0,
42    NETMANAGER_ERR_INVALID_PARAMETER = 2100001,
43    NETMANAGER_ERR_OPERATION_FAILED = 2100002,
44    NETMANAGER_ERR_INTERNAL = 2100003,
45    NETMANAGER_ERR_MEMCPY_FAIL = 2100101,
46    NETMANAGER_ERR_MEMSET_FAIL = 2100102,
47    NETMANAGER_ERR_STRCPY_FAIL = 2100103,
48    NETMANAGER_ERR_STRING_EMPTY = 2100104,
49    NETMANAGER_ERR_LOCAL_PTR_NULL = 2100105,
50    NETMANAGER_ERR_DESCRIPTOR_MISMATCH = 2100201,
51    NETMANAGER_ERR_WRITE_DESCRIPTOR_TOKEN_FAIL = 2100202,
52    NETMANAGER_ERR_WRITE_DATA_FAIL = 2100203,
53    NETMANAGER_ERR_WRITE_REPLY_FAIL = 2100204,
54    NETMANAGER_ERR_READ_DATA_FAIL = 2100205,
55    NETMANAGER_ERR_READ_REPLY_FAIL = 2100206,
56    NETMANAGER_ERR_IPC_CONNECT_STUB_FAIL = 2100207,
57    NETMANAGER_ERR_GET_PROXY_FAIL = 2100208,
58    NETMANAGER_ERR_STATUS_EXIST = 2100209,
59};
60
61enum {
62    NETMANAGER_EXT_ERR_PERMISSION_DENIED = 201,
63    NETMANAGER_EXT_ERR_NOT_SYSTEM_CALL = 202,
64    NETMANAGER_EXT_ERR_PARAMETER_ERROR = 401,
65    NETMANAGER_EXT_ERR_CAPABILITY_NOT_SUPPORTED = 801,
66    NETMANAGER_EXT_SUCCESS = 0,
67    NETMANAGER_EXT_ERR_INVALID_PARAMETER = 2200001,
68    NETMANAGER_EXT_ERR_OPERATION_FAILED = 2200002,
69    NETMANAGER_EXT_ERR_INTERNAL = 2200003,
70    NETMANAGER_EXT_ERR_MEMCPY_FAIL = 2200101,
71    NETMANAGER_EXT_ERR_MEMSET_FAIL = 2200102,
72    NETMANAGER_EXT_ERR_STRCPY_FAIL = 2200103,
73    NETMANAGER_EXT_ERR_STRING_EMPTY = 2200104,
74    NETMANAGER_EXT_ERR_LOCAL_PTR_NULL = 2200105,
75    NETMANAGER_EXT_ERR_DESCRIPTOR_MISMATCH = 2200201,
76    NETMANAGER_EXT_ERR_WRITE_DESCRIPTOR_TOKEN_FAIL = 2200202,
77    NETMANAGER_EXT_ERR_WRITE_DATA_FAIL = 2200203,
78    NETMANAGER_EXT_ERR_WRITE_REPLY_FAIL = 2200204,
79    NETMANAGER_EXT_ERR_READ_DATA_FAIL = 2200205,
80    NETMANAGER_EXT_ERR_READ_REPLY_FAIL = 2200206,
81    NETMANAGER_EXT_ERR_IPC_CONNECT_STUB_FAIL = 2200207,
82    NETMANAGER_EXT_ERR_GET_PROXY_FAIL = 2200208,
83};
84
85enum {
86    ETHERNET_ERR_INIT_FAIL = 2201001,
87    ETHERNET_ERR_EMPTY_CONFIGURATION = 2201002,
88    ETHERNET_ERR_DUMP = 2201003,
89    ETHERNET_ERR_DEVICE_CONFIGURATION_INVALID = 2201004,
90    ETHERNET_ERR_DEVICE_INFORMATION_NOT_EXIST = 2201005,
91    ETHERNET_ERR_DEVICE_NOT_LINK = 2201006,
92    ETHERNET_ERR_USER_CONIFGURATION_WRITE_FAIL = 2201007,
93    ETHERNET_ERR_USER_CONIFGURATION_CLEAR_FAIL = 2201008,
94    ETHERNET_ERR_CONVERT_CONFIGURATINO_FAIL = 2201009
95};
96
97enum {
98    NETWORKSHARE_ERROR_UNKNOWN_TYPE = 2202002,
99    NETWORKSHARE_ERROR_UNKNOWN_IFACE = 2202003,
100    NETWORKSHARE_ERROR_UNAVAIL_IFACE = 2202004,
101    NETWORKSHARE_ERROR_WIFI_SHARING = 2202005,
102    NETWORKSHARE_ERROR_BT_SHARING = 2202006,
103    NETWORKSHARE_ERROR_USB_SHARING = 2202007,
104    NETWORKSHARE_ERROR_SHARING_IFACE_ERROR = 2202008,
105    NETWORKSHARE_ERROR_ENABLE_FORWARDING_ERROR = 2202009,
106    NETWORKSHARE_ERROR_INTERNAL_ERROR = 2202010,
107    NETWORKSHARE_ERROR_IFACE_CFG_ERROR = 2202011,
108    NETWORKSHARE_ERROR_DHCPSERVER_ERROR = 2202012,
109    NETWORKSHARE_ERROR_ISSHARING_CALLBACK_ERROR = 2202013,
110};
111
112enum {
113    NETWORKVPN_ERROR_REFUSE_CREATE_VPN = 2203001,
114    NETWORKVPN_ERROR_VPN_EXIST = 2203002,
115    NETWORKVPN_ERROR_INVALID_FD = 2203004,
116};
117
118enum {
119    NET_MDNS_ERR_UNKNOWN = 2204001,
120    NET_MDNS_ERR_CALLBACK_NOT_FOUND = 2204002,
121    NET_MDNS_ERR_CALLBACK_DUPLICATED = 2204003,
122    NET_MDNS_ERR_PAYLOAD_PARSER_FAIL = 2204004,
123    NET_MDNS_ERR_EMPTY_PAYLOAD = 2204005,
124    NET_MDNS_ERR_TIMEOUT = 2204006,
125    NET_MDNS_ERR_ILLEGAL_ARGUMENT = NETMANAGER_ERR_PARAMETER_ERROR,
126    NET_MDNS_ERR_SERVICE_INSTANCE_DUPLICATE = 2204007,
127    NET_MDNS_ERR_SERVICE_INSTANCE_NOT_FOUND = 2204008,
128    NET_MDNS_ERR_SEND = 2204009,
129    NET_MDNS_ERR_WRITE_DUMP = 2204010,
130};
131
132#ifdef FEATURE_WEARABLE_DISTRIBUTED_NET_ENABLE
133enum {
134    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_START_FAIL = 2205001,
135    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_STOP_FAIL = 2205002,
136    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_INIT_FAIL = 2205003,
137    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_INVALID_PORT_ID = 2205004,
138    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_INVALID_UDP_PORT_ID = 2205005,
139    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_INVALID_TCP_PORT_ID = 2205006,
140    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_INVALID_RULE_TYPE = 2205007,
141    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_INVALID_SUPPLIER_ID = 2205008,
142    NETMANAGER_WEARABLE_DISTRIBUTED_NET_ERR_IPTABLES_COMMAND_INVALID = 2205009,
143};
144#endif
145
146enum {
147    NETWORKVPN_ERROR_VNIC_EXIST = 2206001,
148};
149
150#ifdef FEATURE_NET_FIREWALL_ENABLE
151enum {
152    FIREWALL_SUCCESS = 0,
153    FIREWALL_ERR_PERMISSION_DENIED = 201,
154    FIREWALL_ERR_PARAMETER_ERROR = 401,
155    FIREWALL_ERR_INVALID_PARAMETER = 2100001,
156    FIREWALL_ERR_OPERATION_FAILED = 2100002,
157    FIREWALL_ERR_INTERNAL = 2100003,
158    FIREWALL_ERR_NO_USER = 29400000,
159    FIREWALL_ERR_EXCEED_MAX_RULE = 29400001,
160    FIREWALL_ERR_EXCEED_MAX_IP = 29400002,
161    FIREWALL_ERR_EXCEED_MAX_PORT = 29400003,
162    FIREWALL_ERR_EXCEED_MAX_DOMAIN = 29400004,
163    FIREWALL_ERR_EXCEED_ALL_MAX_DOMAIN = 29400005,
164    FIREWALL_ERR_NO_RULE = 29400006,
165    FIREWALL_ERR_DNS_RULE_DUPLICATION = 29400007,
166};
167#endif
168
169enum class NetSlotTech {
170    SLOT_TYPE_GSM = 1,
171    SLOT_TYPE_LTE = 9,
172    SLOT_TYPE_LTE_CA = 10,
173};
174
175enum RegisterType {
176    UNKOWN,
177    REGISTER,
178    REQUEST
179};
180// Error code for netmanager dns resolver
181constexpr ErrCode DNS_ERR_OFFSET = ErrCodeOffset(SUBSYS_COMMUNICATION, NETMANAGER_DNS_RESOLVER_MANAGER);
182// Error code for netmanager conn manager
183constexpr ErrCode CONN_MANAGER_ERR_OFFSET = ErrCodeOffset(SUBSYS_COMMUNICATION, NETMANAGER_NET_CONN_MANAGER);
184// Error code for netmanager policy manager
185constexpr ErrCode POLICY_MANAGER_ERR_OFFSET = ErrCodeOffset(SUBSYS_COMMUNICATION, NETMANAGER_NET_POLICY_MANAGER);
186} // namespace NetManagerStandard
187} // namespace OHOS
188#endif // NETMANAGER_CONSTANTS_H
189