⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 winsock2.h

📁 手机windows mobile平台的rtsp实现,仅包含rtsp部分的实现.
💻 H
📖 第 1 页 / 共 3 页
字号:
#ifndef WSABASEERR#define WSABASEERR	10000#define WSAEINTR	(WSABASEERR+4)#define WSAEBADF	(WSABASEERR+9)#define WSAEACCES	(WSABASEERR+13)#define WSAEFAULT	(WSABASEERR+14)#define WSAEINVAL	(WSABASEERR+22)#define WSAEMFILE	(WSABASEERR+24)#define WSAEWOULDBLOCK	(WSABASEERR+35)#define WSAEINPROGRESS	(WSABASEERR+36) /* deprecated on WinSock2 */ #define WSAEALREADY	(WSABASEERR+37)#define WSAENOTSOCK	(WSABASEERR+38)#define WSAEDESTADDRREQ	(WSABASEERR+39)#define WSAEMSGSIZE	(WSABASEERR+40)#define WSAEPROTOTYPE	(WSABASEERR+41)#define WSAENOPROTOOPT	(WSABASEERR+42)#define WSAEPROTONOSUPPORT	(WSABASEERR+43)#define WSAESOCKTNOSUPPORT	(WSABASEERR+44)#define WSAEOPNOTSUPP	(WSABASEERR+45)#define WSAEPFNOSUPPORT	(WSABASEERR+46)#define WSAEAFNOSUPPORT	(WSABASEERR+47)#define WSAEADDRINUSE	(WSABASEERR+48)#define WSAEADDRNOTAVAIL	(WSABASEERR+49)#define WSAENETDOWN	(WSABASEERR+50)#define WSAENETUNREACH	(WSABASEERR+51)#define WSAENETRESET	(WSABASEERR+52)#define WSAECONNABORTED	(WSABASEERR+53)#define WSAECONNRESET	(WSABASEERR+54)#define WSAENOBUFS	(WSABASEERR+55)#define WSAEISCONN	(WSABASEERR+56)#define WSAENOTCONN	(WSABASEERR+57)#define WSAESHUTDOWN	(WSABASEERR+58)#define WSAETOOMANYREFS	(WSABASEERR+59)#define WSAETIMEDOUT	(WSABASEERR+60)#define WSAECONNREFUSED	(WSABASEERR+61)#define WSAELOOP	(WSABASEERR+62)#define WSAENAMETOOLONG	(WSABASEERR+63)#define WSAEHOSTDOWN	(WSABASEERR+64)#define WSAEHOSTUNREACH	(WSABASEERR+65)#define WSAENOTEMPTY	(WSABASEERR+66)#define WSAEPROCLIM	(WSABASEERR+67)#define WSAEUSERS	(WSABASEERR+68)#define WSAEDQUOT	(WSABASEERR+69)#define WSAESTALE	(WSABASEERR+70)#define WSAEREMOTE	(WSABASEERR+71)#define WSAEDISCON	(WSABASEERR+101)#define WSASYSNOTREADY	(WSABASEERR+91)#define WSAVERNOTSUPPORTED	(WSABASEERR+92)#define WSANOTINITIALISED	(WSABASEERR+93)#define WSAHOST_NOT_FOUND	(WSABASEERR+1001)#define WSATRY_AGAIN	(WSABASEERR+1002)#define WSANO_RECOVERY	(WSABASEERR+1003)#define WSANO_DATA	(WSABASEERR+1004)/* WinSock2 specific error codes */#define WSAENOMORE	(WSABASEERR+102)#define WSAECANCELLED	(WSABASEERR+103)#define WSAEINVALIDPROCTABLE	(WSABASEERR+104)#define WSAEINVALIDPROVIDER	(WSABASEERR+105)#define WSAEPROVIDERFAILEDINIT	(WSABASEERR+106)#define WSASYSCALLFAILURE	(WSABASEERR+107)#define WSASERVICE_NOT_FOUND	(WSABASEERR+108)#define WSATYPE_NOT_FOUND	(WSABASEERR+109)#define WSA_E_NO_MORE	(WSABASEERR+110)#define WSA_E_CANCELLED	(WSABASEERR+111)#define WSAEREFUSED	(WSABASEERR+112) /* WS QualityofService errors */#define WSA_QOS_RECEIVERS	(WSABASEERR + 1005)#define WSA_QOS_SENDERS	(WSABASEERR + 1006)#define WSA_QOS_NO_SENDERS	(WSABASEERR + 1007)#define WSA_QOS_NO_RECEIVERS	(WSABASEERR + 1008)#define WSA_QOS_REQUEST_CONFIRMED	(WSABASEERR + 1009)#define WSA_QOS_ADMISSION_FAILURE	(WSABASEERR + 1010)#define WSA_QOS_POLICY_FAILURE	(WSABASEERR + 1011)#define WSA_QOS_BAD_STYLE	(WSABASEERR + 1012)#define WSA_QOS_BAD_OBJECT	(WSABASEERR + 1013)#define WSA_QOS_TRAFFIC_CTRL_ERROR	(WSABASEERR + 1014)#define WSA_QOS_GENERIC_ERROR	(WSABASEERR + 1015)#define WSA_QOS_ESERVICETYPE	(WSABASEERR + 1016)#define WSA_QOS_EFLOWSPEC	(WSABASEERR + 1017)#define WSA_QOS_EPROVSPECBUF	(WSABASEERR + 1018)#define WSA_QOS_EFILTERSTYLE	(WSABASEERR + 1019)#define WSA_QOS_EFILTERTYPE	(WSABASEERR + 1020)#define WSA_QOS_EFILTERCOUNT	(WSABASEERR + 1021)#define WSA_QOS_EOBJLENGTH	(WSABASEERR + 1022)#define WSA_QOS_EFLOWCOUNT	(WSABASEERR + 1023)#define WSA_QOS_EUNKOWNPSOBJ	(WSABASEERR + 1024)#define WSA_QOS_EPOLICYOBJ	(WSABASEERR + 1025)#define WSA_QOS_EFLOWDESC	(WSABASEERR + 1026)#define WSA_QOS_EPSFLOWSPEC	(WSABASEERR + 1027)#define WSA_QOS_EPSFILTERSPEC	(WSABASEERR + 1028)#define WSA_QOS_ESDMODEOBJ	(WSABASEERR + 1029)#define WSA_QOS_ESHAPERATEOBJ	(WSABASEERR + 1030)#define WSA_QOS_RESERVED_PETYPE	(WSABASEERR + 1031)#endif /* !WSABASEERR */#define WSANO_ADDRESS	WSANO_DATA#if !(defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))#define h_errno WSAGetLastError()#define HOST_NOT_FOUND	WSAHOST_NOT_FOUND#define TRY_AGAIN	WSATRY_AGAIN#define NO_RECOVERY	WSANO_RECOVERY#define NO_DATA	WSANO_DATA#define NO_ADDRESS	WSANO_ADDRESS#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */SOCKET PASCAL accept(SOCKET,struct sockaddr*,int*);int PASCAL bind(SOCKET,const struct sockaddr*,int);int PASCAL closesocket(SOCKET);int PASCAL connect(SOCKET,const struct sockaddr*,int);int PASCAL ioctlsocket(SOCKET,long,u_long *);int PASCAL getpeername(SOCKET,struct sockaddr*,int*);int PASCAL getsockname(SOCKET,struct sockaddr*,int*);int PASCAL getsockopt(SOCKET,int,int,char*,int*);unsigned long PASCAL inet_addr(const char*);DECLARE_STDCALL_P(char *) inet_ntoa(struct in_addr);int PASCAL listen(SOCKET,int);int PASCAL recv(SOCKET,char*,int,int);int PASCAL recvfrom(SOCKET,char*,int,int,struct sockaddr*,int*);int PASCAL send(SOCKET,const char*,int,int);int PASCAL sendto(SOCKET,const char*,int,int,const struct sockaddr*,int);int PASCAL setsockopt(SOCKET,int,int,const char*,int);int PASCAL shutdown(SOCKET,int);SOCKET PASCAL socket(int,int,int);DECLARE_STDCALL_P(struct hostent *) gethostbyaddr(const char*,int,int);DECLARE_STDCALL_P(struct hostent *) gethostbyname(const char*);DECLARE_STDCALL_P(struct servent *) getservbyport(int,const char*);DECLARE_STDCALL_P(struct servent *) getservbyname(const char*,const char*);DECLARE_STDCALL_P(struct protoent *) getprotobynumber(int);DECLARE_STDCALL_P(struct protoent *) getprotobyname(const char*);int PASCAL WSAStartup(WORD,LPWSADATA);int PASCAL WSACleanup(void);void PASCAL WSASetLastError(int);int PASCAL WSAGetLastError(void);/* * Pseudo-blocking functions are deprecated in WinSock2 * spec. Use threads instead. */BOOL PASCAL WSAIsBlocking(void);int PASCAL WSAUnhookBlockingHook(void);FARPROC PASCAL WSASetBlockingHook(FARPROC);int PASCAL WSACancelBlockingCall(void);HANDLE PASCAL WSAAsyncGetServByName(HWND,u_int,const char*,const char*,char*,int);HANDLE PASCAL WSAAsyncGetServByPort(HWND,u_int,int,const char*,char*,int);HANDLE PASCAL WSAAsyncGetProtoByName(HWND,u_int,const char*,char*,int);HANDLE PASCAL WSAAsyncGetProtoByNumber(HWND,u_int,int,char*,int);HANDLE PASCAL WSAAsyncGetHostByName(HWND,u_int,const char*,char*,int);HANDLE PASCAL WSAAsyncGetHostByAddr(HWND,u_int,const char*,int,int,char*,int);int PASCAL WSACancelAsyncRequest(HANDLE);int PASCAL WSAAsyncSelect(SOCKET,HWND,u_int,long);#if ! (defined (__INSIDE_CYGWIN__) || defined (__INSIDE_MSYS__))u_long PASCAL htonl(u_long);u_long PASCAL ntohl(u_long);u_short PASCAL htons(u_short);u_short PASCAL ntohs(u_short);int PASCAL select(int nfds,fd_set*,fd_set*,fd_set*,const struct timeval*);#endif /* ! (__INSIDE_CYGWIN__ || __INSIDE_MSYS__) */int PASCAL gethostname(char*,int);#define WSAMAKEASYNCREPLY(b,e)	MAKELONG(b,e)#define WSAMAKESELECTREPLY(e,error)	MAKELONG(e,error)#define WSAGETASYNCBUFLEN(l)	LOWORD(l)#define WSAGETASYNCERROR(l)	HIWORD(l)#define WSAGETSELECTEVENT(l)	LOWORD(l)#define WSAGETSELECTERROR(l)	HIWORD(l)typedef struct sockaddr SOCKADDR;typedef struct sockaddr *PSOCKADDR;typedef struct sockaddr *LPSOCKADDR;typedef struct sockaddr_storage SOCKADDR_STORAGE, *PSOCKADDR_STORAGE;typedef struct sockaddr_in SOCKADDR_IN;typedef struct sockaddr_in *PSOCKADDR_IN;typedef struct sockaddr_in *LPSOCKADDR_IN;typedef struct linger LINGER;typedef struct linger *PLINGER;typedef struct linger *LPLINGER;typedef struct in_addr IN_ADDR;typedef struct in_addr *PIN_ADDR;typedef struct in_addr *LPIN_ADDR;typedef struct fd_set FD_SET;typedef struct fd_set *PFD_SET;typedef struct fd_set *LPFD_SET;typedef struct hostent HOSTENT;typedef struct hostent *PHOSTENT;typedef struct hostent *LPHOSTENT;typedef struct servent SERVENT;typedef struct servent *PSERVENT;typedef struct servent *LPSERVENT;typedef struct protoent PROTOENT;typedef struct protoent *PPROTOENT;typedef struct protoent *LPPROTOENT;typedef struct timeval TIMEVAL;typedef struct timeval *PTIMEVAL;typedef struct timeval *LPTIMEVAL;/* winsock2 additions */#define ADDR_ANY	INADDR_ANY#define	IN_CLASSD(i)	(((long)(i) & 0xf0000000) == 0xe0000000)#define	IN_CLASSD_NET	0xf0000000#define	IN_CLASSD_NSHIFT	28#define	IN_CLASSD_HOST	0x0fffffff#define	IN_MULTICAST(i)	IN_CLASSD(i)#define	FROM_PROTOCOL_INFO	(-1)#define SO_DONTLINGER	(u_int)(~SO_LINGER)#define SO_GROUP_ID	0x2001#define SO_GROUP_PRIORITY	0x2002#define SO_MAX_MSG_SIZE	0x2003#define SO_PROTOCOL_INFOA	0x2004#define SO_PROTOCOL_INFOW	0x2005#ifdef UNICODE#define SO_PROTOCOL_INFO	SO_PROTOCOL_INFOW#else#define SO_PROTOCOL_INFO	SO_PROTOCOL_INFOA#endif#define PVD_CONFIG        0x3001#define	MSG_INTERRUPT	0x10#define	MSG_MAXIOVLEN	16#define	WSAAPI	WINAPI#define WSAEVENT	HANDLE#define	LPWSAEVENT	LPHANDLE#define	WSAOVERLAPPED	OVERLAPPEDtypedef	struct _OVERLAPPED	*LPWSAOVERLAPPED;#define	WSA_IO_PENDING	(ERROR_IO_PENDING)#define	WSA_IO_INCOMPLETE	(ERROR_IO_INCOMPLETE)#define	WSA_INVALID_HANDLE	(ERROR_INVALID_HANDLE)#define	WSA_INVALID_PARAMETER	(ERROR_INVALID_PARAMETER)#define	WSA_NOT_ENOUGH_MEMORY	(ERROR_NOT_ENOUGH_MEMORY)#define	WSA_OPERATION_ABORTED	(ERROR_OPERATION_ABORTED)#define	WSA_INVALID_EVENT	((WSAEVENT)NULL)#define	WSA_MAXIMUM_WAIT_EVENTS	(MAXIMUM_WAIT_OBJECTS)#define	WSA_WAIT_FAILED	((DWORD)-1L)#define	WSA_WAIT_EVENT_0	(WAIT_OBJECT_0)#define	WSA_WAIT_IO_COMPLETION	(WAIT_IO_COMPLETION)#define	WSA_WAIT_TIMEOUT	(WAIT_TIMEOUT)#define	WSA_INFINITE	(INFINITE)typedef struct _WSABUF {	unsigned long len;	char *buf;} WSABUF, *LPWSABUF;typedef enum{	BestEffortService,	ControlledLoadService,	PredictiveService,	GuaranteedDelayService,	GuaranteedService} GUARANTEE;/* TODO: FLOWSPEC and related definitions belong in qos.h *//*   Windows Sockets 2 Application Programming Interface,   revision 2.2.2 (1997) uses the type uint32 for SERVICETYPE   and the elements of _flowspec, but the type uint32 is not defined   or used anywhere else in the w32api. For now, just use   unsigned int, which is 32 bits on _WIN32 and _WIN64.*/typedef unsigned int	SERVICETYPE;typedef struct _flowspec{	unsigned int	TokenRate;	unsigned int	TokenBucketSize;	unsigned int	PeakBandwidth;	unsigned int	Latency;	unsigned int	DelayVariation;	SERVICETYPE	ServiceType;	unsigned int	MaxSduSize;	unsigned int	MinimumPolicedSize;   } FLOWSPEC, *PFLOWSPEC, *LPFLOWSPEC;typedef struct _QualityOfService{	FLOWSPEC	SendingFlowspec;	FLOWSPEC	ReceivingFlowspec;	WSABUF	ProviderSpecific;} QOS, *LPQOS;#define	CF_ACCEPT	0x0000#define	CF_REJECT	0x0001#define	CF_DEFER	0x0002#define	SD_RECEIVE	0x00#define	SD_SEND	0x01#define	SD_BOTH	0x02typedef unsigned int	GROUP;#define SG_UNCONSTRAINED_GROUP	0x01#define SG_CONSTRAINED_GROUP	0x02typedef struct _WSANETWORKEVENTS {	long	lNetworkEvents;	int	iErrorCode[FD_MAX_EVENTS];} WSANETWORKEVENTS, *LPWSANETWORKEVENTS;#define	MAX_PROTOCOL_CHAIN 7#define	BASE_PROTOCOL      1#define	LAYERED_PROTOCOL   0typedef enum _WSAESETSERVICEOP{	RNRSERVICE_REGISTER=0,	RNRSERVICE_DEREGISTER,	RNRSERVICE_DELETE} WSAESETSERVICEOP, *PWSAESETSERVICEOP, *LPWSAESETSERVICEOP;typedef struct _AFPROTOCOLS {	INT iAddressFamily;	INT iProtocol;} AFPROTOCOLS, *PAFPROTOCOLS, *LPAFPROTOCOLS;typedef enum _WSAEcomparator{	COMP_EQUAL = 0,	COMP_NOTLESS} WSAECOMPARATOR, *PWSAECOMPARATOR, *LPWSAECOMPARATOR;typedef struct _WSAVersion{	DWORD	dwVersion;	WSAECOMPARATOR	ecHow;} WSAVERSION, *PWSAVERSION, *LPWSAVERSION;#ifndef __CSADDR_T_DEFINED /* also in nspapi.h */#define __CSADDR_T_DEFINEDtypedef struct _SOCKET_ADDRESS {	LPSOCKADDR lpSockaddr;	INT iSockaddrLength;} SOCKET_ADDRESS,*PSOCKET_ADDRESS,*LPSOCKET_ADDRESS;typedef struct _CSADDR_INFO {	SOCKET_ADDRESS LocalAddr;	SOCKET_ADDRESS RemoteAddr;	INT iSocketType;	INT iProtocol;} CSADDR_INFO,*PCSADDR_INFO,*LPCSADDR_INFO;#endiftypedef struct _SOCKET_ADDRESS_LIST {    INT             iAddressCount;    SOCKET_ADDRESS  Address[1];} SOCKET_ADDRESS_LIST, * LPSOCKET_ADDRESS_LIST;#ifndef __BLOB_T_DEFINED /* also in wtypes.h and nspapi.h */#define __BLOB_T_DEFINEDtypedef struct _BLOB {	ULONG	cbSize;	BYTE	*pBlobData;} BLOB,*PBLOB,*LPBLOB;#endiftypedef struct _WSAQuerySetA{	DWORD	dwSize;	LPSTR	lpszServiceInstanceName;	LPGUID	lpServiceClassId;	LPWSAVERSION	lpVersion;	LPSTR	lpszComment;	DWORD	dwNameSpace;	LPGUID	lpNSProviderId;	LPSTR	lpszContext;	DWORD	dwNumberOfProtocols;	LPAFPROTOCOLS	lpafpProtocols;	LPSTR	lpszQueryString;	DWORD	dwNumberOfCsAddrs;	LPCSADDR_INFO	lpcsaBuffer;	DWORD	dwOutputFlags;	LPBLOB	lpBlob;} WSAQUERYSETA, *PWSAQUERYSETA, *LPWSAQUERYSETA;typedef struct _WSAQuerySetW{	DWORD	dwSize;	LPWSTR	lpszServiceInstanceName;	LPGUID	lpServiceClassId;	LPWSAVERSION	lpVersion;	LPWSTR	lpszComment;	DWORD	dwNameSpace;	LPGUID	lpNSProviderId;	LPWSTR	lpszContext;	DWORD	dwNumberOfProtocols;	LPAFPROTOCOLS	lpafpProtocols;	LPWSTR	lpszQueryString;	DWORD	dwNumberOfCsAddrs;	LPCSADDR_INFO	lpcsaBuffer;	DWORD	dwOutputFlags;	LPBLOB	lpBlob;} WSAQUERYSETW, *PWSAQUERYSETW, *LPWSAQUERYSETW;#ifdef UNICODEtypedef WSAQUERYSETW WSAQUERYSET;typedef PWSAQUERYSETW PWSAQUERYSET;typedef LPWSAQUERYSETW LPWSAQUERYSET;#elsetypedef WSAQUERYSETA WSAQUERYSET;typedef PWSAQUERYSETA PWSAQUERYSET;typedef LPWSAQUERYSETA LPWSAQUERYSET;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -