亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? socketaddress.h

?? 由GOOGLE的JINGLE項目中移植的網(wǎng)絡(luò)庫
?? H
字號:
/* * libjingle * Copyright 2004--2005, Google Inc. * * Redistribution and use in source and binary forms, with or without  * modification, are permitted provided that the following conditions are met: * *  1. Redistributions of source code must retain the above copyright notice,  *     this list of conditions and the following disclaimer. *  2. Redistributions in binary form must reproduce the above copyright notice, *     this list of conditions and the following disclaimer in the documentation *     and/or other materials provided with the distribution. *  3. The name of the author may not be used to endorse or promote products  *     derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */#ifndef __SOCKETADDRESS_H__#define __SOCKETADDRESS_H__#include "basictypes.h"#include <string>#undef SetPortnamespace cricket {// Records an IP address and port, which are 32 and 16 bit integers,// respectively, both in <b>host byte-order</b>.class SocketAddress {public:  // Creates a missing / unknown address.  SocketAddress();  // Creates the address with the given host and port.  If use_dns is true,  // the hostname will be immediately resolved to an IP (which may block for  // several seconds if DNS is not available).  Alternately, set use_dns to  // false, and then call Resolve() to complete resolution later, or use  // SetResolvedIP to set the IP explictly.  SocketAddress(const std::string& hostname, int port = 0, bool use_dns = true);  // Creates the address with the given IP and port.  SocketAddress(uint32 ip, int port);  // Creates a copy of the given address.  SocketAddress(const SocketAddress& addr);  // Replaces our address with the given one.  SocketAddress& operator =(const SocketAddress& addr);  // Changes the IP of this address to the given one, and clears the hostname.  void SetIP(uint32 ip);  // Changes the hostname of this address to the given one.  // Calls Resolve and returns the result.  bool SetIP(const std::string& hostname, bool use_dns = true);  // Sets the IP address while retaining the hostname.  Useful for bypassing  // DNS for a pre-resolved IP.  void SetResolvedIP(uint32 ip);  // Changes the port of this address to the given one.  void SetPort(int port);  // Returns the IP address.  uint32 ip() const;  // Returns the port part of this address.  uint16 port() const;  // Returns the IP address in dotted form.  std::string IPAsString() const;    // Determines whether this represents a missing / any address.  bool IsAny() const;  // Synomym for missing / any.  bool IsNil() const { return IsAny(); }  // Determines whether the IP address refers to the local host, i.e. within  // the range 127.0.0.0/8.  bool IsLocalIP() const;  // Determines whether the IP address is in one of the private ranges:  // 127.0.0.0/8 10.0.0.0/8 192.168.0.0/16 172.16.0.0/12.  bool IsPrivateIP() const;  // Determines whether the hostname has been resolved to an IP  bool IsUnresolved() const;  // Attempt to resolve a hostname to IP address.  // Returns false if resolution is required but failed.  // 'force' will cause re-resolution of hostname.  //   bool Resolve(bool force = false, bool use_dns = true);  // Determines whether this address is identical to the given one.  bool operator ==(const SocketAddress& addr) const;  // Compares based on IP and then port.  bool operator <(const SocketAddress& addr) const;  // Determines whether this address has the same IP as the one given.  bool EqualIPs(const SocketAddress& addr) const;  // Deteremines whether this address has the same port as the one given.  bool EqualPorts(const SocketAddress& addr) const;  // Hashes this address into a small number.  size_t Hash() const;  // Returns the size of this address when written.  size_t Size_() const;  // Writes this address into the given buffer.  void Write_(char* buf, int len) const;  // Reads this address from the given buffer.  void Read_(const char* buf, int len);    // Converts the IP address given in dotted form into compact form.  // Without 'use_dns', only dotted names (A.B.C.D) are resolved.  static uint32 StringToIP(const std::string& str, bool use_dns = true);private:  std::string hostname_;  uint32 ip_;  uint16 port_;  // Initializes the address to missing / any.  void Zero();};} // namespace cricket#endif // __SOCKETADDRESS_H__

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月天久久比比资源色| 成人国产视频在线观看| 亚洲成人午夜影院| 亚洲成人免费看| 风间由美一区二区三区在线观看 | 国产aⅴ精品一区二区三区色成熟| 日韩电影免费一区| 日本不卡中文字幕| 91伊人久久大香线蕉| 成人看片黄a免费看在线| va亚洲va日韩不卡在线观看| 欧美二区三区91| 精品久久国产老人久久综合| 国产欧美一二三区| 1024精品合集| 久久国产精品72免费观看| 国产激情一区二区三区四区| 91国产视频在线观看| 2024国产精品| 亚洲视频精选在线| 麻豆国产欧美一区二区三区| 欧美性猛交xxxxxx富婆| 日韩午夜三级在线| 亚洲码国产岛国毛片在线| 蜜桃视频一区二区三区在线观看| 99riav一区二区三区| 91美女在线观看| 久久蜜桃一区二区| 偷拍自拍另类欧美| 91免费视频网址| 这里只有精品99re| 亚洲日本丝袜连裤袜办公室| 奇米四色…亚洲| 欧美欧美欧美欧美首页| 亚洲视频在线观看一区| 国产a精品视频| 欧美日韩国产综合一区二区| 亚洲激情在线播放| 国产精品自在欧美一区| 色美美综合视频| 久久久精品黄色| 91黄色激情网站| 亚洲免费av观看| 成人深夜在线观看| 国产精品久久久久久福利一牛影视| 91色综合久久久久婷婷| 欧美成人三级电影在线| 久久精品国产第一区二区三区| 精品国产一区二区三区四区四 | 日韩在线a电影| 91国模大尺度私拍在线视频| 亚洲图片欧美综合| 精品欧美乱码久久久久久1区2区 | 91精品福利在线一区二区三区| 亚洲va国产天堂va久久en| 日本道免费精品一区二区三区| 亚洲综合激情另类小说区| 欧美亚洲禁片免费| 国产一二精品视频| 亚洲成人你懂的| 欧美va日韩va| a级精品国产片在线观看| 日韩成人一级片| 久久久不卡网国产精品二区| k8久久久一区二区三区| 日韩vs国产vs欧美| 精品欧美乱码久久久久久1区2区| 丁香六月久久综合狠狠色| 亚洲综合精品久久| 亚洲日本韩国一区| 日韩丝袜情趣美女图片| 日韩av不卡一区二区| 国产欧美日韩激情| 精品99一区二区| 在线视频一区二区三区| 激情综合网最新| 亚洲国产wwwccc36天堂| 亚洲欧洲综合另类| 日韩精品影音先锋| 欧洲中文字幕精品| 国产98色在线|日韩| 国产精品123| 久久99最新地址| 亚洲综合色自拍一区| 亚洲精品一区二区三区蜜桃下载| 91高清视频在线| 国产成人h网站| 韩国av一区二区三区在线观看| 午夜成人在线视频| 亚洲综合区在线| 亚洲天堂av一区| 一区二区三区欧美亚洲| 国产精品无遮挡| 欧美一级国产精品| 欧美三级视频在线| 岛国精品在线播放| 国产麻豆一精品一av一免费| 免费不卡在线观看| 久久av资源站| 国产一区二区影院| 精品一区二区影视| 国产激情一区二区三区| www.久久久久久久久| 国产麻豆一精品一av一免费| 久久精品国产亚洲高清剧情介绍 | 欧美在线观看视频一区二区| 欧美性高清videossexo| 欧美无乱码久久久免费午夜一区| 色8久久人人97超碰香蕉987| 日韩亚洲欧美综合| 日韩欧美成人一区二区| 国产日韩三级在线| 国产三级精品在线| 亚洲日本丝袜连裤袜办公室| 一区二区国产盗摄色噜噜| 亚洲国产wwwccc36天堂| 精品亚洲国内自在自线福利| youjizz久久| 欧美午夜一区二区三区免费大片| 日本一区二区在线不卡| 亚洲精品中文在线影院| 日韩黄色小视频| 成人开心网精品视频| 欧美精品一级二级三级| 国产精品三级av在线播放| 亚洲sss视频在线视频| 寂寞少妇一区二区三区| 在线国产电影不卡| 国产精品视频一二三| 久久久久久久久久久黄色| 一个色在线综合| 国产成人免费视频网站| 久久久精品tv| 日韩精品亚洲一区| 成人a级免费电影| 91精品国产91久久综合桃花| 亚洲精品一卡二卡| 国产成人夜色高潮福利影视| 在线不卡一区二区| 亚洲一区在线视频| 一本久久a久久精品亚洲| 亚洲男人的天堂在线观看| 国产精品影视在线| 日韩女优av电影| 日本中文字幕一区二区视频| 欧美日韩不卡在线| 一区二区三区欧美视频| 99久久精品久久久久久清纯| 国产日韩精品一区二区浪潮av| 国内不卡的二区三区中文字幕 | 国产喂奶挤奶一区二区三区| 日韩电影免费一区| 日韩精品资源二区在线| 青青草国产成人av片免费| 日韩欧美亚洲国产精品字幕久久久 | 色婷婷精品久久二区二区蜜臀av | 欧美午夜精品一区| 国产精品少妇自拍| 成人激情动漫在线观看| 亚洲天堂福利av| 91麻豆精东视频| 亚洲国产成人porn| 日韩欧美在线123| 波多野结衣91| 美女诱惑一区二区| 国产精品久久毛片a| 成人国产精品免费| 亚洲欧美日韩中文播放| 欧美精品丝袜中出| 国产精品996| 亚洲人成网站影音先锋播放| 日韩天堂在线观看| 91香蕉视频黄| 久久精品国产精品亚洲红杏| 亚洲国产精品99久久久久久久久| 在线免费观看成人短视频| 国产自产高清不卡| 樱桃视频在线观看一区| 日韩三级高清在线| 99国产精品久久久久久久久久 | 日韩精品成人一区二区三区 | 夜夜揉揉日日人人青青一国产精品| 99国产精品一区| 国产在线不卡一区| 视频一区二区中文字幕| 亚洲另类在线视频| 久久亚洲一级片| 91精品国产美女浴室洗澡无遮挡| 成人高清在线视频| 狠狠色丁香久久婷婷综| 亚洲激情一二三区| 欧美高清在线精品一区| 日韩欧美高清dvd碟片| 欧美日韩精品欧美日韩精品| 高清视频一区二区| 人人狠狠综合久久亚洲| 亚洲风情在线资源站| 亚洲第一福利视频在线| 亚洲第一二三四区| 亚洲线精品一区二区三区八戒|