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

📄 zlg_socket.h

📁 在2210上运行的一个嵌入式web
💻 H
字号:
#ifdef SOCKET_GLOBALS
#define SOCKET_EXT
#else
#define SOCKET_EXT extern 
#endif 

#define PF_INET		0
#define AF_INET		1

#define SOCK_STREAM	0
#define SOCK_DGRAM	1

#define TCP_PROTOCOL	0
#define UDP_PROTOCOL	1

#define INVALID_SOCKET	NULL

#ifndef	MAX_TCP_LINKS	
#define MAX_TCP_LINKS	0
#endif

#ifndef	MAX_UDP_LINKS	
#define MAX_UDP_LINKS	0
#endif

#define MAX_SOCKETS	MAX_TCP_LINKS+MAX_UDP_LINKS

typedef struct {
			uint8 		State;
			uint16		protocol;
			uint16		af;
			uint16		type;
			uint8		My_Ip[4];
			uint16		My_Port;
			uint16		Max_Queue;
			uint8		queue[MAX_TCP_LINKS];
			uint8		Udp_Queue;
			}SOCKET;
struct	sockaddr{
			uint16		sin_family;
			uint8		sin_addr[4];
			uint16		sin_port;
	};	

SOCKET_EXT SOCKET Zlg_Socket[MAX_SOCKETS];
SOCKET_EXT uint8 close(uint8 num);
SOCKET_EXT uint8 connect(SOCKET * s, struct sockaddr * addr,uint16 addrlen);// USE_XDATA  keilreentrant; // ; 
SOCKET_EXT SOCKET *socket( uint16 af, uint16 type, uint16 protocol);
SOCKET_EXT int bind( SOCKET * s, struct sockaddr * name,uint16 namelen);
SOCKET_EXT int listen( SOCKET * s, uint16 backlog );
SOCKET_EXT uint8 accept( SOCKET * s, struct sockaddr * addr, int *addrlen );
SOCKET_EXT uint16 recv( uint8 num, uint8 *buf, uint16 len, int flags );
SOCKET_EXT uint16 send( uint8 num, uint8 *buf, uint16 len, int flags );
SOCKET_EXT uint16 recvfrom( SOCKET s, uint8 *buf, uint16 len, int flags, struct sockaddr *from, uint16 *fromlen ); 
SOCKET_EXT uint16 sendto( SOCKET s, uint8 *buf, uint16 len, int flags, struct sockaddr *to, uint16 tolen );
SOCKET_EXT int closesocket( SOCKET s );

⌨️ 快捷键说明

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