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

📄 zsocket.h

📁 uCOSII上实现的tcpip协议实现代码(gcc编译)
💻 H
字号:
#ifndef _ZSOCKET_H#define _ZSOCKET_H#include "zarch.h"#include "zdef.h"#include "znetif.h"#define ZNET_MAX_USER	32typedef enum {	data_packet,	data_stream,}protocol_t;typedef struct _zsocket{	s8_t		_id;	znetif_t*   _pnetif;	task_t		_task_id;	protocol_t  _proto;	u16_t		_lport;	ipaddr_t	_lipaddr;		u16_t		_rport;		/*if this is a TCP these must be set*/	ipaddr_t	_ripaddr;	u8_t		error;		/*return error of API function*/}zsocket_t;/************a simplest set of a api for ZNet's user**************/extern  void    zsocket_init(void);extern	s8_t 	zsocket(protocol_t type);extern 	u8_t 	zbind(s8_t sid, ipaddr_t *localip, u16_t *localport);extern  u8_t	zclose(s8_t sid);extern  u8_t	zshutdown(s8_t sid);extern  u8_t	zioctl(s8_t sid, u8_t request, u8_t *argp);extern  zsocket_t	*query_zsocket(s8_t sid);/*for TCP */extern 	u8_t	zsent(s8_t sid, u8_t *pdata, u16_t *data_len, u8_t flags);extern	u8_t	zrecv(s8_t sid, zbuffer_t **pbuf, u8_t flags);extern	u8_t	zlisten(s8_t sid);extern	s8_t	zaccept(s8_t sid);		/*return new remote's socket id*/extern 	u8_t	zconnect(s8_t sid, ipaddr_t *rip, u16_t *rport);/*fro UDP*/extern	u8_t	zrecvfrom(s8_t sid, zbuffer_t **pbuf,						ipaddr_t *rip, u16_t *rport, u8_t flags);extern 	u8_t	zsendto(s8_t sid, u8_t *pdata, u16_t *len,						ipaddr_t *rip, u16_t *rport);#endif

⌨️ 快捷键说明

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