Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(516)

Unified Diff: net/third_party/udt/src/udt.h

Issue 6708091: Remove UDT. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/third_party/udt/src/queue.cpp ('k') | net/third_party/udt/src/window.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/third_party/udt/src/udt.h
===================================================================
--- net/third_party/udt/src/udt.h (revision 78992)
+++ net/third_party/udt/src/udt.h (working copy)
@@ -1,336 +0,0 @@
-/*****************************************************************************
-Copyright (c) 2001 - 2011, The Board of Trustees of the University of Illinois.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
-* Redistributions of source code must retain the above
- copyright notice, this list of conditions and the
- following disclaimer.
-
-* 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.
-
-* Neither the name of the University of Illinois
- nor the names of its contributors may be used to
- endorse or promote products derived from this
- software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 COPYRIGHT OWNER OR
-CONTRIBUTORS 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.
-*****************************************************************************/
-
-/*****************************************************************************
-written by
- Yunhong Gu, last updated 01/18/2011
-*****************************************************************************/
-
-#ifndef __UDT_H__
-#define __UDT_H__
-
-
-#ifndef WIN32
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <netinet/in.h>
-#else
- #ifdef __MINGW__
- #include <stdint.h>
- #include <ws2tcpip.h>
- #endif
- #include <windows.h>
-#endif
-#include <fstream>
-#include <set>
-#include <string>
-#include <vector>
-
-
-////////////////////////////////////////////////////////////////////////////////
-
-//if compiling on VC6.0 or pre-WindowsXP systems
-//use -DLEGACY_WIN32
-
-//if compiling with MinGW, it only works on XP or above
-//use -D_WIN32_WINNT=0x0501
-
-
-#ifdef WIN32
- #ifndef __MINGW__
- // Explicitly define 32-bit and 64-bit numbers
- typedef __int32 int32_t;
- typedef __int64 int64_t;
- typedef unsigned __int32 uint32_t;
- #ifndef LEGACY_WIN32
- typedef unsigned __int64 uint64_t;
- #else
- // VC 6.0 does not support unsigned __int64: may cause potential problems.
- typedef __int64 uint64_t;
- #endif
-
- #ifdef UDT_EXPORTS
- #define UDT_API __declspec(dllexport)
- #else
- #define UDT_API __declspec(dllimport)
- #endif
- #else
- #define UDT_API
- #endif
-#else
- #define UDT_API
-#endif
-
-#define NO_BUSY_WAITING
-
-#ifdef WIN32
- #ifndef __MINGW__
- typedef SOCKET UDPSOCKET;
- typedef SOCKET SYSSOCKET;
- #else
- typedef int UDPSOCKET;
- typedef int SYSSOCKET;
- #endif
-#else
- typedef int UDPSOCKET;
- typedef int SYSSOCKET;
-#endif
-
-typedef int UDTSOCKET;
-
-////////////////////////////////////////////////////////////////////////////////
-
-typedef std::set<UDTSOCKET> ud_set;
-#define UD_CLR(u, uset) ((uset)->erase(u))
-#define UD_ISSET(u, uset) ((uset)->find(u) != (uset)->end())
-#define UD_SET(u, uset) ((uset)->insert(u))
-#define UD_ZERO(uset) ((uset)->clear())
-
-enum EPOLLOpt
-{
- // this values are defined same as linux epoll.h
- // so that if system values are used by mistake, they should have the same effect
- UDT_EPOLL_IN = 0x1,
- UDT_EPOLL_OUT = 0x4,
- UDT_EPOLL_ERR = 0x8
-};
-
-enum UDTSTATUS {INIT = 1, OPENED, LISTENING, CONNECTED, BROKEN, CLOSED, NONEXIST};
-
-////////////////////////////////////////////////////////////////////////////////
-
-enum UDTOpt
-{
- UDT_MSS, // the Maximum Transfer Unit
- UDT_SNDSYN, // if sending is blocking
- UDT_RCVSYN, // if receiving is blocking
- UDT_CC, // custom congestion control algorithm
- UDT_FC, // Flight flag size (window size)
- UDT_SNDBUF, // maximum buffer in sending queue
- UDT_RCVBUF, // UDT receiving buffer size
- UDT_LINGER, // waiting for unsent data when closing
- UDP_SNDBUF, // UDP sending buffer size
- UDP_RCVBUF, // UDP receiving buffer size
- UDT_MAXMSG, // maximum datagram message size
- UDT_MSGTTL, // time-to-live of a datagram message
- UDT_RENDEZVOUS, // rendezvous connection mode
- UDT_SNDTIMEO, // send() timeout
- UDT_RCVTIMEO, // recv() timeout
- UDT_REUSEADDR, // reuse an existing port or create a new one
- UDT_MAXBW // maximum bandwidth (bytes per second) that the connection can use
-};
-
-////////////////////////////////////////////////////////////////////////////////
-
-struct CPerfMon
-{
- // global measurements
- int64_t msTimeStamp; // time since the UDT entity is started, in milliseconds
- int64_t pktSentTotal; // total number of sent data packets, including retransmissions
- int64_t pktRecvTotal; // total number of received packets
- int pktSndLossTotal; // total number of lost packets (sender side)
- int pktRcvLossTotal; // total number of lost packets (receiver side)
- int pktRetransTotal; // total number of retransmitted packets
- int pktSentACKTotal; // total number of sent ACK packets
- int pktRecvACKTotal; // total number of received ACK packets
- int pktSentNAKTotal; // total number of sent NAK packets
- int pktRecvNAKTotal; // total number of received NAK packets
- int64_t usSndDurationTotal; // total time duration when UDT is sending data (idle time exclusive)
-
- // local measurements
- int64_t pktSent; // number of sent data packets, including retransmissions
- int64_t pktRecv; // number of received packets
- int pktSndLoss; // number of lost packets (sender side)
- int pktRcvLoss; // number of lost packets (receiver side)
- int pktRetrans; // number of retransmitted packets
- int pktSentACK; // number of sent ACK packets
- int pktRecvACK; // number of received ACK packets
- int pktSentNAK; // number of sent NAK packets
- int pktRecvNAK; // number of received NAK packets
- double mbpsSendRate; // sending rate in Mb/s
- double mbpsRecvRate; // receiving rate in Mb/s
- int64_t usSndDuration; // busy sending time (i.e., idle time exclusive)
-
- // instant measurements
- double usPktSndPeriod; // packet sending period, in microseconds
- int pktFlowWindow; // flow window size, in number of packets
- int pktCongestionWindow; // congestion window size, in number of packets
- int pktFlightSize; // number of packets on flight
- double msRTT; // RTT, in milliseconds
- double mbpsBandwidth; // estimated bandwidth, in Mb/s
- int byteAvailSndBuf; // available UDT sender buffer size
- int byteAvailRcvBuf; // available UDT receiver buffer size
-};
-
-////////////////////////////////////////////////////////////////////////////////
-
-class UDT_API CUDTException
-{
-public:
- CUDTException(int major = 0, int minor = 0, int err = -1);
- CUDTException(const CUDTException& e);
- virtual ~CUDTException();
-
- // Functionality:
- // Get the description of the exception.
- // Parameters:
- // None.
- // Returned value:
- // Text message for the exception description.
-
- virtual const char* getErrorMessage();
-
- // Functionality:
- // Get the system errno for the exception.
- // Parameters:
- // None.
- // Returned value:
- // errno.
-
- virtual int getErrorCode() const;
-
- // Functionality:
- // Clear the error code.
- // Parameters:
- // None.
- // Returned value:
- // None.
-
- virtual void clear();
-
-private:
- int m_iMajor; // major exception categories
-
-// 0: correct condition
-// 1: network setup exception
-// 2: network connection broken
-// 3: memory exception
-// 4: file exception
-// 5: method not supported
-// 6+: undefined error
-
- int m_iMinor; // for specific error reasons
- int m_iErrno; // errno returned by the system if there is any
- std::string m_strMsg; // text error message
-
- std::string m_strAPI; // the name of UDT function that returns the error
- std::string m_strDebug; // debug information, set to the original place that causes the error
-
-public: // Error Code
- static const int SUCCESS;
- static const int ECONNSETUP;
- static const int ENOSERVER;
- static const int ECONNREJ;
- static const int ESOCKFAIL;
- static const int ESECFAIL;
- static const int ECONNFAIL;
- static const int ECONNLOST;
- static const int ENOCONN;
- static const int ERESOURCE;
- static const int ETHREAD;
- static const int ENOBUF;
- static const int EFILE;
- static const int EINVRDOFF;
- static const int ERDPERM;
- static const int EINVWROFF;
- static const int EWRPERM;
- static const int EINVOP;
- static const int EBOUNDSOCK;
- static const int ECONNSOCK;
- static const int EINVPARAM;
- static const int EINVSOCK;
- static const int EUNBOUNDSOCK;
- static const int ENOLISTEN;
- static const int ERDVNOSERV;
- static const int ERDVUNBOUND;
- static const int ESTREAMILL;
- static const int EDGRAMILL;
- static const int EDUPLISTEN;
- static const int ELARGEMSG;
- static const int EINVPOLLID;
- static const int EASYNCFAIL;
- static const int EASYNCSND;
- static const int EASYNCRCV;
- static const int EPEERERR;
- static const int EUNKNOWN;
-};
-
-////////////////////////////////////////////////////////////////////////////////
-
-namespace UDT
-{
-typedef CUDTException ERRORINFO;
-typedef UDTOpt SOCKOPT;
-typedef CPerfMon TRACEINFO;
-typedef ud_set UDSET;
-
-UDT_API extern const UDTSOCKET INVALID_SOCK;
-#undef ERROR
-UDT_API extern const int ERROR;
-
-UDT_API int startup();
-UDT_API int cleanup();
-UDT_API UDTSOCKET socket(int af, int type, int protocol);
-UDT_API int bind(UDTSOCKET u, const struct sockaddr* name, int namelen);
-UDT_API int bind(UDTSOCKET u, UDPSOCKET udpsock);
-UDT_API int listen(UDTSOCKET u, int backlog);
-UDT_API UDTSOCKET accept(UDTSOCKET u, struct sockaddr* addr, int* addrlen);
-UDT_API int connect(UDTSOCKET u, const struct sockaddr* name, int namelen);
-UDT_API int close(UDTSOCKET u);
-UDT_API int getpeername(UDTSOCKET u, struct sockaddr* name, int* namelen);
-UDT_API int getsockname(UDTSOCKET u, struct sockaddr* name, int* namelen);
-UDT_API int getsockopt(UDTSOCKET u, int level, SOCKOPT optname, void* optval, int* optlen);
-UDT_API int setsockopt(UDTSOCKET u, int level, SOCKOPT optname, const void* optval, int optlen);
-UDT_API int send(UDTSOCKET u, const char* buf, int len, int flags);
-UDT_API int recv(UDTSOCKET u, char* buf, int len, int flags);
-UDT_API int sendmsg(UDTSOCKET u, const char* buf, int len, int ttl = -1, bool inorder = false);
-UDT_API int recvmsg(UDTSOCKET u, char* buf, int len);
-UDT_API int64_t sendfile(UDTSOCKET u, std::fstream& ifs, int64_t& offset, int64_t size, int block = 364000);
-UDT_API int64_t recvfile(UDTSOCKET u, std::fstream& ofs, int64_t& offset, int64_t size, int block = 7280000);
-UDT_API int select(int nfds, UDSET* readfds, UDSET* writefds, UDSET* exceptfds, const struct timeval* timeout);
-UDT_API int selectEx(const std::vector<UDTSOCKET>& fds, std::vector<UDTSOCKET>* readfds, std::vector<UDTSOCKET>* writefds, std::vector<UDTSOCKET>* exceptfds, int64_t msTimeOut);
-UDT_API int epoll_create();
-UDT_API int epoll_add_usock(const int eid, const UDTSOCKET u, const int* events = NULL);
-UDT_API int epoll_add_ssock(const int eid, const SYSSOCKET s, const int* events = NULL);
-UDT_API int epoll_remove_usock(const int eid, const UDTSOCKET u, const int* events = NULL);
-UDT_API int epoll_remove_ssock(const int eid, const SYSSOCKET s, const int* events = NULL);
-UDT_API int epoll_wait(const int eid, std::set<UDTSOCKET>* readfds, std::set<UDTSOCKET>* writefds, int64_t msTimeOut, std::set<SYSSOCKET>* lrfds = NULL, std::set<SYSSOCKET>* wrfds = NULL);
-UDT_API int epoll_release(const int eid);
-UDT_API ERRORINFO& getlasterror();
-UDT_API int perfmon(UDTSOCKET u, TRACEINFO* perf, bool clear = true);
-UDT_API UDTSTATUS getsockstate(UDTSOCKET u);
-}
-
-#endif
« no previous file with comments | « net/third_party/udt/src/queue.cpp ('k') | net/third_party/udt/src/window.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698