1 // SoftEther VPN Source Code - Developer Edition Master Branch 2 // Cedar Communication Module 3 // © 2020 Nokia 4 5 // Command.h 6 // Header of Command.c 7 8 #ifndef COMMAND_H 9 #define COMMAND_H 10 11 #include "CedarType.h" 12 13 #include "Mayaqua/Network.h" 14 15 #include <stddef.h> 16 17 // Constants 18 #define TRAFFIC_DEFAULT_PORT 9821 19 #define TRAFFIC_NUMTCP_MAX 32 20 #define TRAFFIC_NUMTCP_DEFAULT 32 21 #define TRAFFIC_SPAN_DEFAULT 15 22 #define TRAFFIC_TYPE_DOWNLOAD 1 23 #define TRAFFIC_TYPE_UPLOAD 2 24 #define TRAFFIC_TYPE_FULL 0 25 #define TRAFFIC_BUF_SIZE 65535 26 #define TRAFFIC_VER_STR_SIZE 16 27 #define TRAFFIC_VER_STR "TrafficServer\r\n" 28 29 // Constants for Win32 30 #define VPNCMD_BOOTSTRAP_REG_KEYNAME "Software\\" GC_REG_COMPANY_NAME "\\VPN Command Line Utility" 31 #define VPNCMD_BOOTSTRAP_REG_VALUENAME_VER "InstalledVersion" 32 #define VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH "InstalledPath" 33 #define VPNCMD_BOOTSTRAP_FILENAME "|vpncmdsys.exe" 34 35 36 // Traffic test results 37 struct TT_RESULT 38 { 39 bool Raw; // Whether raw data 40 bool Double; // Whether it is doubled 41 UINT64 NumBytesUpload; // Uploaded size 42 UINT64 NumBytesDownload; // Downloaded size 43 UINT64 NumBytesTotal; // Total size 44 UINT64 Span; // Period (in milliseconds) 45 UINT64 BpsUpload; // Upload throughput 46 UINT64 BpsDownload; // Download throughput 47 UINT64 BpsTotal; // Total throughput 48 }; 49 50 // Text display function 51 typedef void (TT_PRINT_PROC)(void *param, wchar_t *str); 52 53 // Client side socket 54 struct TTC_SOCK 55 { 56 SOCK *Sock; // Socket 57 UINT State; // State 58 UINT64 NumBytes; // Transmitted bytes 59 bool Download; // Download socket 60 bool ServerUploadReportReceived; // Complete to receive the report of upload amount from the server 61 UINT64 NextSendRequestReportTick; // Time to request a next report 62 UINT Id; 63 bool HideErrMsg; 64 }; 65 66 // Traffic test Client 67 struct TTC 68 { 69 TT_PRINT_PROC *Print; // Text display function 70 void *Param; // Any parameters 71 bool Double; // Double mode 72 bool Raw; // Raw data mode 73 UINT Port; // Port number 74 char Host[MAX_HOST_NAME_LEN + 1]; // Host name 75 UINT NumTcp; // Number of TCP connections 76 UINT Type; // Type 77 UINT64 Span; // Period 78 UINT64 RealSpan; // The actual span 79 THREAD *Thread; // Thread 80 volatile bool Halt; // Halting flag 81 bool *Cancel; // Halting flag 2 82 LIST *ItcSockList; // Client socket list 83 TT_RESULT Result; // Result 84 UINT ErrorCode; // Error code 85 bool AbnormalTerminated; // Abnormal termination 86 EVENT *StartEvent; // Start event 87 EVENT *InitedEvent; // Initialize completion notification event 88 LIST *WorkerThreadList; // List of worker threads 89 90 UINT flag1, flag2; 91 92 UINT64 session_id; 93 UINT64 end_tick; 94 UINT64 start_tick; 95 }; 96 97 // Traffic test worker thread 98 struct TTC_WORKER 99 { 100 THREAD *WorkerThread; 101 TTC *Ttc; 102 LIST *SockList; // Client socket list 103 SOCK_EVENT *SockEvent; // Socket event 104 EVENT *StartEvent; // Start event 105 bool Ok; // The result 106 }; 107 108 // Server side socket 109 struct TTS_SOCK 110 { 111 SOCK *Sock; // Socket 112 UINT State; // State 113 UINT64 NumBytes; // Transmitted bytes 114 bool SockJoined; // Whether it has been added to the event 115 UINT Id; // ID 116 UINT64 LastWaitTick; // Retry waiting time to notify the size information to the client 117 UINT64 SessionId; // Session ID 118 bool NoMoreSendData; // Flag not to send more data 119 UINT64 FirstRecvTick; // Time which the data has been received last 120 UINT64 FirstSendTick; // Time which the data has been sent last 121 UINT64 Span; // Period 122 UINT64 GiveupSpan; 123 UINT64 LastCommTime; 124 }; 125 126 // Traffic test server 127 struct TTS 128 { 129 TT_PRINT_PROC *Print; // Text display function 130 void *Param; // Any parameters 131 volatile bool Halt; // Halting flag 132 UINT Port; // Port number 133 THREAD *Thread; // Thread 134 THREAD *IPv6AcceptThread; // IPv6 Accept thread 135 SOCK *ListenSocket; // Socket to wait 136 SOCK *ListenSocketV6; // Socket to wait (IPv6) 137 UINT ErrorCode; // Error code 138 UINT IdSeed; // ID value 139 LIST *WorkerList; // Worker threads list 140 }; 141 142 // Traffic test worker thread 143 struct TTS_WORKER 144 { 145 TTS *Tts; // TTS 146 THREAD *WorkThread; // Worker thread 147 SOCK_EVENT *SockEvent; // Socket event 148 LIST *TtsSockList; // Server socket list 149 bool NewSocketArrived; // New socket has arrived 150 }; 151 152 // VPN Tools context 153 struct PT 154 { 155 CONSOLE *Console; // Console 156 UINT LastError; // Last error 157 wchar_t *CmdLine; // Command line to execute 158 }; 159 160 // Server management context 161 struct PS 162 { 163 bool ConsoleForServer; // Console for the server (always true) 164 CONSOLE *Console; // Console 165 RPC *Rpc; // RPC 166 char *ServerName; // Server name 167 UINT ServerPort; // Port number 168 char *HubName; // Virtual HUB name in the currently managed 169 UINT LastError; // Last error 170 char *AdminHub; // Virtual HUB to be managed by default 171 wchar_t *CmdLine; // Command line to execute 172 CAPSLIST *CapsList; // Caps list 173 }; 174 175 // Client management context 176 struct PC 177 { 178 bool ConsoleForServer; // Console for the server (always false) 179 CONSOLE *Console; // Console 180 REMOTE_CLIENT *RemoteClient; // Remote client 181 char *ServerName; // Server name 182 UINT LastError; // Last error 183 wchar_t *CmdLine; // Command line 184 }; 185 186 // A column of the table 187 struct CTC 188 { 189 wchar_t *String; // String 190 bool Right; // Right justification 191 }; 192 193 // A row of the table 194 struct CTR 195 { 196 wchar_t **Strings; // String list 197 }; 198 199 // Table for console 200 struct CT 201 { 202 LIST *Columns; // Column list 203 LIST *Rows; // Row list 204 }; 205 206 UINT CommandMain(wchar_t *command_line); 207 UINT VpnCmdProc(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 208 bool ParseHostPort(char *src, char **host, UINT *port, UINT default_port); 209 bool ParseHostPortAtmark(char *src, char **host, UINT *port, UINT default_port); 210 CT *CtNew(); 211 void CtFree(CT *ct, CONSOLE *c); 212 void CtFreeEx(CT *ct, CONSOLE *c, bool standard_view); 213 void CtInsertColumn(CT *ct, wchar_t *str, bool right); 214 CT *CtNewStandard(); 215 CT *CtNewStandardEx(); 216 void CtInsert(CT *ct, ...); 217 void CtPrint(CT *ct, CONSOLE *c); 218 void CtPrintStandard(CT *ct, CONSOLE *c); 219 void CtPrintRow(CONSOLE *c, UINT num, UINT *widths, wchar_t **strings, bool *rights, char separate_char); 220 void VpnCmdInitBootPath(); 221 222 void CmdPrintError(CONSOLE *c, UINT err); 223 void CmdPrintAbout(CONSOLE *c); 224 wchar_t *CmdPromptPort(CONSOLE *c, void *param); 225 wchar_t *CmdPromptChoosePassword(CONSOLE *c, void *param); 226 bool CmdEvalPort(CONSOLE *c, wchar_t *str, void *param); 227 void CmdInsertTrafficInfo(CT *ct, TRAFFIC *t); 228 wchar_t *GetHubTypeStr(UINT type); 229 wchar_t *GetServerTypeStr(UINT type); 230 char *CmdPasswordPrompt(CONSOLE *c); 231 bool CmdEvalIp(CONSOLE *c, wchar_t *str, void *param); 232 wchar_t *PsClusterSettingMemberPromptIp(CONSOLE *c, void *param); 233 bool CmdEvalHostAndPort(CONSOLE *c, wchar_t *str, void *param); 234 LIST *StrToPortList(char *str, bool limit_range); 235 bool CmdEvalPortList(CONSOLE *c, wchar_t *str, void *param); 236 wchar_t *PsClusterSettingMemberPromptPorts(CONSOLE *c, void *param); 237 K *CmdLoadKey(CONSOLE *c, wchar_t *filename); 238 bool CmdLoadCertAndKey(CONSOLE *c, X **xx, K **kk, wchar_t *cert_filename, wchar_t *key_filename); 239 bool CmdEvalTcpOrUdp(CONSOLE *c, wchar_t *str, void *param); 240 wchar_t *GetConnectionTypeStr(UINT type); 241 bool CmdEvalHostAndSubnetMask4(CONSOLE *c, wchar_t *str, void *param); 242 bool CmdEvalNetworkAndSubnetMask4(CONSOLE *c, wchar_t *str, void *param); 243 bool CmdEvalIpAndMask4(CONSOLE *c, wchar_t *str, void *param); 244 bool CmdEvalIpAndMask6(CONSOLE *c, wchar_t *str, void *param); 245 wchar_t *GetLogSwitchStr(UINT i); 246 wchar_t *GetPacketLogNameStr(UINT i); 247 UINT StrToLogSwitchType(char *str); 248 UINT StrToPacketLogType(char *str); 249 UINT StrToPacketLogSaveInfoType(char *str); 250 wchar_t *GetProxyTypeStr(UINT i); 251 wchar_t *GetClientAuthTypeStr(UINT i); 252 void PrintPolicyList(CONSOLE *c, char *name); 253 void PrintPolicy(CONSOLE *c, POLICY *pol, bool cascade_mode); 254 bool EditPolicy(CONSOLE *c, POLICY *pol, char *name, char *value, bool cascade_mode); 255 void CmdPrintStatusToListView(CT *ct, RPC_CLIENT_GET_CONNECTION_STATUS *s); 256 void CmdPrintStatusToListViewEx(CT *ct, RPC_CLIENT_GET_CONNECTION_STATUS *s, bool server_mode); 257 bool CmdEvalPassOrDiscard(CONSOLE *c, wchar_t *str, void *param); 258 bool StrToPassOrDiscard(char *str); 259 bool CmdEvalProtocol(CONSOLE *c, wchar_t *str, void *param); 260 UINT StrToProtocol(char *str); 261 bool CmdEvalPortRange(CONSOLE *c, wchar_t *str, void *param); 262 bool ParsePortRange(char *str, UINT *start, UINT *end); 263 wchar_t *GetAuthTypeStr(UINT id); 264 UINT64 StrToDateTime64(char *str); 265 bool CmdEvalDateTime(CONSOLE *c, wchar_t *str, void *param); 266 void CmdPrintNodeInfo(CT *ct, NODE_INFO *info); 267 wchar_t *GetProtocolName(UINT n); 268 void CmdGenerateImportName(REMOTE_CLIENT *r, wchar_t *name, UINT size, wchar_t *old_name); 269 bool CmdIsAccountName(REMOTE_CLIENT *r, wchar_t *name); 270 wchar_t *GetSyslogSettingName(UINT n); 271 272 273 void TtPrint(void *param, TT_PRINT_PROC *print_proc, wchar_t *str); 274 void TtGenerateRandomData(UCHAR **buf, UINT *size); 275 void TtsWorkerThread(THREAD *thread, void *param); 276 void TtsListenThread(THREAD *thread, void *param); 277 void TtsAcceptProc(TTS *tts, SOCK *listen_socket); 278 void TtsIPv6AcceptThread(THREAD *thread, void *param); 279 wchar_t *GetTtcTypeStr(UINT type); 280 void TtcPrintSummary(TTC *ttc); 281 void StopTtc(TTC *ttc); 282 void TtcGenerateResult(TTC *ttc); 283 void TtcThread(THREAD *thread, void *param); 284 TTC *NewTtcEx(char *host, UINT port, UINT numtcp, UINT type, UINT64 span, bool dbl, bool raw, TT_PRINT_PROC *print_proc, void *param, EVENT *start_event, bool *cancel); 285 TTC *NewTtc(char *host, UINT port, UINT numtcp, UINT type, UINT64 span, bool dbl, bool raw, TT_PRINT_PROC *print_proc, void *param); 286 UINT FreeTtc(TTC *ttc, TT_RESULT *result); 287 TTS *NewTts(UINT port, void *param, TT_PRINT_PROC *print_proc); 288 UINT FreeTts(TTS *tts); 289 void PtTrafficPrintProc(void *param, wchar_t *str); 290 void TtcPrintResult(CONSOLE *c, TT_RESULT *res); 291 292 293 bool SystemCheck(); 294 bool CheckKernel(); 295 bool CheckMemory(); 296 bool CheckStrings(); 297 bool CheckFileSystem(); 298 bool CheckThread(); 299 bool CheckNetwork(); 300 void InputToNull(void *p); 301 UINT RetZero(); 302 303 void Win32CmdDebug(bool is_uac); 304 305 306 UINT PtConnect(CONSOLE *c, wchar_t *cmdline); 307 PT *NewPt(CONSOLE *c, wchar_t *cmdline); 308 void FreePt(PT *pt); 309 void PtMain(PT *pt); 310 UINT PtMakeCert(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 311 UINT PtMakeCert2048(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 312 UINT PtTrafficClient(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 313 UINT PtTrafficServer(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 314 UINT PtCheck(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 315 316 317 UINT PcConnect(CONSOLE *c, char *target, wchar_t *cmdline, char *password); 318 PC *NewPc(CONSOLE *c, REMOTE_CLIENT *remote_client, char *servername, wchar_t *cmdline); 319 void FreePc(PC *pc); 320 void PcMain(PC *pc); 321 UINT PcAbout(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 322 UINT PcVersionGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 323 UINT PcPasswordSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 324 UINT PcPasswordGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 325 UINT PcCertList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 326 UINT PcCertAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 327 UINT PcCertDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 328 UINT PcCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 329 UINT PcSecureList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 330 UINT PcSecureSelect(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 331 UINT PcSecureGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 332 UINT PcNicCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 333 UINT PcNicDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 334 UINT PcNicUpgrade(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 335 UINT PcNicGetSetting(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 336 UINT PcNicSetSetting(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 337 UINT PcNicEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 338 UINT PcNicDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 339 UINT PcNicList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 340 UINT PcAccountList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 341 UINT PcAccountCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 342 UINT PcAccountSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 343 UINT PcAccountGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 344 UINT PcAccountDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 345 UINT PcAccountUsernameSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 346 UINT PcAccountAnonymousSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 347 UINT PcAccountPasswordSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 348 UINT PcAccountCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 349 UINT PcAccountCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 350 UINT PcAccountEncryptDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 351 UINT PcAccountEncryptEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 352 UINT PcAccountCompressEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 353 UINT PcAccountCompressDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 354 UINT PcAccountHttpHeaderAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 355 UINT PcAccountHttpHeaderDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 356 UINT PcAccountHttpHeaderGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 357 UINT PcAccountProxyNone(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 358 UINT PcAccountProxyHttp(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 359 UINT PcAccountProxySocks(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 360 UINT PcAccountProxySocks5(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 361 UINT PcAccountServerCertEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 362 UINT PcAccountServerCertDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 363 UINT PcAccountRetryOnServerCertEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 364 UINT PcAccountRetryOnServerCertDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 365 UINT PcAccountServerCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 366 UINT PcAccountServerCertDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 367 UINT PcAccountServerCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 368 UINT PcAccountDetailSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 369 UINT PcAccountRename(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 370 UINT PcAccountConnect(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 371 UINT PcAccountDisconnect(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 372 UINT PcAccountStatusGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 373 UINT PcAccountNicSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 374 UINT PcAccountStatusShow(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 375 UINT PcAccountStatusHide(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 376 UINT PcAccountSecureCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 377 UINT PcAccountOpensslEngineCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 378 UINT PcAccountRetrySet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 379 UINT PcAccountStartupSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 380 UINT PcAccountStartupRemove(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 381 UINT PcAccountExport(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 382 UINT PcAccountImport(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 383 UINT PcRemoteEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 384 UINT PcRemoteDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 385 UINT PcKeepEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 386 UINT PcKeepDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 387 UINT PcKeepSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 388 UINT PcKeepGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 389 390 391 PS *NewPs(CONSOLE *c, RPC *rpc, char *servername, UINT serverport, char *hubname, char *adminhub, wchar_t *cmdline); 392 void FreePs(PS *ps); 393 UINT PsConnect(CONSOLE *c, char *host, UINT port, char *hub, char *adminhub, wchar_t *cmdline, char *password); 394 void PsMain(PS *ps); 395 UINT PsAbout(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 396 UINT PsServerInfoGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 397 UINT PsServerStatusGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 398 UINT PsListenerCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 399 UINT PsListenerDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 400 UINT PsListenerList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 401 UINT PsListenerEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 402 UINT PsListenerDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 403 UINT PsPortsUDPSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 404 UINT PsPortsUDPGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 405 UINT PsProtoOptionsSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 406 UINT PsProtoOptionsGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 407 UINT PsServerPasswordSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 408 UINT PsClusterSettingGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 409 UINT PsClusterSettingStandalone(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 410 UINT PsClusterSettingController(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 411 UINT PsClusterSettingMember(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 412 UINT PsClusterMemberList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 413 UINT PsClusterMemberInfoGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 414 UINT PsClusterMemberCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 415 UINT PsClusterConnectionStatusGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 416 UINT PsCrash(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 417 UINT PsFlush(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 418 UINT PsDebug(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 419 UINT PsServerCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 420 UINT PsServerKeyGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 421 UINT PsServerCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 422 UINT PsServerCipherGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 423 UINT PsServerCipherSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 424 UINT PsKeepEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 425 UINT PsKeepDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 426 UINT PsKeepSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 427 UINT PsKeepGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 428 UINT PsSyslogGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 429 UINT PsSyslogDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 430 UINT PsSyslogEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 431 UINT PsConnectionList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 432 UINT PsConnectionGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 433 UINT PsConnectionDisconnect(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 434 UINT PsBridgeDeviceList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 435 UINT PsBridgeList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 436 UINT PsBridgeCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 437 UINT PsBridgeDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 438 UINT PsCaps(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 439 UINT PsReboot(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 440 UINT PsConfigGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 441 UINT PsConfigSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 442 UINT PsRouterList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 443 UINT PsRouterAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 444 UINT PsRouterDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 445 UINT PsRouterStart(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 446 UINT PsRouterStop(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 447 UINT PsRouterIfList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 448 UINT PsRouterIfAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 449 UINT PsRouterIfDel(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 450 UINT PsRouterTableList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 451 UINT PsRouterTableAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 452 UINT PsRouterTableDel(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 453 UINT PsLogFileList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 454 UINT PsLogFileGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 455 UINT PsWgkAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 456 UINT PsWgkDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 457 UINT PsWgkEnum(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 458 UINT PsHubCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 459 UINT PsHubCreateDynamic(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 460 UINT PsHubCreateStatic(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 461 UINT PsHubDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 462 UINT PsHubSetStatic(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 463 UINT PsHubSetDynamic(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 464 UINT PsHubList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 465 UINT PsHub(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 466 UINT PsOnline(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 467 UINT PsOffline(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 468 UINT PsSetStaticNetwork(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 469 UINT PsSetMaxSession(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 470 UINT PsSetHubPassword(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 471 UINT PsSetEnumAllow(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 472 UINT PsSetEnumDeny(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 473 UINT PsOptionsGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 474 UINT PsRadiusServerSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 475 UINT PsRadiusServerDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 476 UINT PsRadiusServerGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 477 UINT PsStatusGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 478 UINT PsLogGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 479 UINT PsLogEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 480 UINT PsLogDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 481 UINT PsLogSwitchSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 482 UINT PsLogPacketSaveType(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 483 UINT PsCAList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 484 UINT PsCAAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 485 UINT PsCADelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 486 UINT PsCAGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 487 UINT PsCascadeList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 488 UINT PsCascadeCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 489 UINT PsCascadeSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 490 UINT PsCascadeGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 491 UINT PsCascadeDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 492 UINT PsCascadeUsernameSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 493 UINT PsCascadeAnonymousSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 494 UINT PsCascadePasswordSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 495 UINT PsCascadeCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 496 UINT PsCascadeCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 497 UINT PsCascadeEncryptEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 498 UINT PsCascadeEncryptDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 499 UINT PsCascadeCompressEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 500 UINT PsCascadeCompressDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 501 UINT PsCascadeHttpHeaderAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 502 UINT PsCascadeHttpHeaderDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 503 UINT PsCascadeHttpHeaderGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 504 UINT PsCascadeProxyNone(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 505 UINT PsCascadeProxyHttp(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 506 UINT PsCascadeProxySocks(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 507 UINT PsCascadeProxySocks5(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 508 UINT PsCascadeServerCertEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 509 UINT PsCascadeServerCertDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 510 UINT PsCascadeServerCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 511 UINT PsCascadeServerCertDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 512 UINT PsCascadeServerCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 513 UINT PsCascadeDetailSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 514 UINT PsCascadePolicyRemove(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 515 UINT PsCascadePolicySet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 516 UINT PsPolicyList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 517 UINT PsCascadeStatusGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 518 UINT PsCascadeRename(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 519 UINT PsCascadeOnline(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 520 UINT PsCascadeOffline(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 521 UINT PsAccessAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 522 UINT PsAccessAddEx(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 523 UINT PsAccessAdd6(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 524 UINT PsAccessAddEx6(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 525 UINT PsAccessList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 526 UINT PsAccessDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 527 UINT PsAccessEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 528 UINT PsAccessDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 529 UINT PsUserList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 530 UINT PsUserCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 531 UINT PsUserSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 532 UINT PsUserDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 533 UINT PsUserGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 534 UINT PsUserAnonymousSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 535 UINT PsUserPasswordSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 536 UINT PsUserCertSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 537 UINT PsUserCertGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 538 UINT PsUserSignedSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 539 UINT PsUserRadiusSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 540 UINT PsUserNTLMSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 541 UINT PsUserPolicyRemove(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 542 UINT PsUserPolicySet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 543 UINT PsUserExpiresSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 544 UINT PsGroupList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 545 UINT PsGroupCreate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 546 UINT PsGroupSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 547 UINT PsGroupDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 548 UINT PsGroupGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 549 UINT PsGroupJoin(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 550 UINT PsGroupUnjoin(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 551 UINT PsGroupPolicyRemove(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 552 UINT PsGroupPolicySet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 553 UINT PsSessionList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 554 UINT PsSessionGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 555 UINT PsSessionDisconnect(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 556 UINT PsMacTable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 557 UINT PsMacDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 558 UINT PsIpTable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 559 UINT PsIpDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 560 UINT PsSecureNatEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 561 UINT PsSecureNatDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 562 UINT PsSecureNatStatusGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 563 UINT PsSecureNatHostGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 564 UINT PsSecureNatHostSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 565 UINT PsNatGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 566 UINT PsNatEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 567 UINT PsNatDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 568 UINT PsNatSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 569 UINT PsNatTable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 570 UINT PsDhcpGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 571 UINT PsDhcpEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 572 UINT PsDhcpDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 573 UINT PsDhcpSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 574 UINT PsDhcpTable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 575 UINT PsAdminOptionList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 576 UINT PsAdminOptionSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 577 UINT PsExtOptionList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 578 UINT PsExtOptionSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 579 UINT PsCrlList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 580 UINT PsCrlAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 581 UINT PsCrlDel(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 582 UINT PsCrlGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 583 UINT PsAcList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 584 UINT PsAcAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 585 UINT PsAcAdd6(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 586 UINT PsAcGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 587 UINT PsAcDel(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 588 UINT PsLicenseAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 589 UINT PsLicenseDel(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 590 UINT PsLicenseList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 591 UINT PsLicenseStatus(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 592 UINT PsIPsecEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 593 UINT PsIPsecGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 594 UINT PsEtherIpClientAdd(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 595 UINT PsEtherIpClientDelete(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 596 UINT PsEtherIpClientList(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 597 UINT PsOpenVpnMakeConfig(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 598 UINT PsServerCertRegenerate(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 599 UINT PsVpnOverIcmpDnsEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 600 UINT PsVpnOverIcmpDnsGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 601 UINT PsDynamicDnsGetStatus(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 602 UINT PsDynamicDnsSetHostname(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 603 UINT PsVpnAzureSetEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 604 UINT PsVpnAzureGetStatus(CONSOLE *c, char *cmd_name, wchar_t *str, void *param); 605 606 607 #endif // COMMAND_H 608 609 610