123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- // Tencent is pleased to support the open source community by making Mars available.
- // Copyright (C) 2016 THL A29 Limited, a Tencent company. All rights reserved.
- // Licensed under the MIT License (the "License"); you may not use this file except in
- // compliance with the License. You may obtain a copy of the License at
- // http://opensource.org/licenses/MIT
- // Unless required by applicable law or agreed to in writing, software distributed under the License is
- // distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
- // either express or implied. See the License for the specific language governing permissions and
- // limitations under the License.
- //
- // comm_data.h
- // comm
- //
- // Created by garry on 2017/2/17.
- //
- #ifndef comm_data_h
- #define comm_data_h
- #include <string>
- #include <stdint.h>
- namespace mars {
- namespace comm {
-
- enum ProxyType {
- kProxyNone = 0,
- kProxyHttpTunel,
- kProxySocks5,
- kProxyHttp,
- };
-
- class ProxyInfo {
- public:
- ProxyInfo():ProxyInfo(kProxyNone, "", "", 0, "", ""){}
- ProxyInfo(ProxyType _type, const std::string& _host, const std::string& _ip, uint16_t _port, const std::string& _username, const std::string& _password)
- :type(_type), host(_host), ip(_ip), port(_port), username(_username), password(_password){}
-
- bool IsValid() const {
- return kProxyNone == type || ((!ip.empty() || !host.empty()) && port > 0);
- }
-
- public:
- ProxyType type;
- std::string host;
- std::string ip;
- uint16_t port;
- std::string username;
- std::string password;
- };
-
-
- }
- }
- #endif /* comm_data_h */
|