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

📄 socket.h

📁 基于4个mips核的noc设计
💻 H
字号:
/* * sys/socket.h */#ifndef	__SYS_SOCKET_H__#define	__SYS_SOCKET_H__/*-----------------*//*  Socket types   *//*-----------------*/#define SOCK_STREAM     1      /* stream socket */#define SOCK_DGRAM      2      /* datagram socket */#define SOCK_RAW        3      /* raw-protocol interface */#define SOCK_RDM        4      /* reliably-delivered message */#define SOCK_SEQPACKET  5      /* sequenced packet stream *//*-----------------*//* Protocols       *//*-----------------*//* * Address families. */#define AF_UNSPEC       0      /* unspecified */#define AF_UNIX         1      /* local to host (pipes, portals) */#define AF_INET         2      /* internetwork: UDP, TCP, etc. *//*-----------------*//* Send/Revc Flags *//*-----------------*/#define MSG_OOB         0x1    /* process out-of-band data */#define MSG_PEEK        0x2    /* peek at incoming message */#define MSG_DONTROUTE   0x4    /* send without using routing tables *//* * Definitions of bits in internet address integers. * On subnets, the decomposition of addresses to host and net parts * is done according to subnet mask, not the masks here. */#define	IN_CLASSA(i)		(((long)(i) & 0x80000000) == 0)#define	IN_CLASSA_NET		0xff000000#define	IN_CLASSA_NSHIFT	24#define	IN_CLASSA_HOST		0x00ffffff#define	IN_CLASSA_MAX		128#define	IN_CLASSB(i)		(((long)(i) & 0xc0000000) == 0x80000000)#define	IN_CLASSB_NET		0xffff0000#define	IN_CLASSB_NSHIFT	16#define	IN_CLASSB_HOST		0x0000ffff#define	IN_CLASSB_MAX		65536#define	IN_CLASSC(i)		(((long)(i) & 0xe0000000) == 0xc0000000)#define	IN_CLASSC_NET		0xffffff00#define	IN_CLASSC_NSHIFT	8#define	IN_CLASSC_HOST		0x000000ff#define	IN_CLASSD(i)		(((long)(i) & 0xf0000000) == 0xe0000000)#define	IN_CLASSD_NET		0xf0000000	/* These ones aren't really */#define	IN_CLASSD_NSHIFT	28		/* net and host fields, but */#define	IN_CLASSD_HOST		0x0fffffff	/* routing needn't know.    */#define	IN_MULTICAST(i)		IN_CLASSD(i)#define	IN_EXPERIMENTAL(i)	(((long)(i) & 0xe0000000) == 0xe0000000)#define	IN_BADCLASS(i)		(((long)(i) & 0xf0000000) == 0xf0000000)#define	INADDR_ANY		(unsigned int)0x00000000#define	INADDR_LOOPBACK		(unsigned int)0x7F000001#define	INADDR_BROADCAST	(unsigned int)0xffffffff	/* must be masked */#define	INADDR_UNSPEC_GROUP	(unsigned int)0xe0000000	/* 224.0.0.0   */#define	INADDR_ALLHOSTS_GROUP	(unsigned int)0xe0000001	/* 224.0.0.1   */#define	INADDR_ALLRTRS_GROUP	(unsigned int)0xe0000002	/* 224.0.0.2   */#define	INADDR_MAX_LOCAL_GROUP	(unsigned int)0xe00000ff	/* 224.0.0.255 */#define	IN_LOOPBACKNET		127			/* official! *//* * Macro-rename the functions here, * to avoid clashes with other tcp-ip * libraries (e.g. pSOS networking * component pNA): */#define socket       _rpc_socket#define accept       _rpc_accept#define bind         _rpc_bind#define connect      _rpc_connect#define recv         _rpc_recv#define send         _rpc_send#define closesocket  _rpc_closesocket#define inet_addr    _rpc_inet_addr#define listen       _rpc_listen#ifdef __LITTLE_ENDIAN__	#define htonl(addr)     ( (((unsigned long)(addr) & 0x000000FF)<<24) | \				  (((unsigned long)(addr) & 0x0000FF00)<<8)  | \				  (((unsigned long)(addr) & 0x00FF0000)>>8)  | \				  (((unsigned long)(addr) & 0xFF000000)>>24))		#define ntohl(addr)     htonl(addr)		#define htons(addr)     ( (((unsigned short)(addr) & 0x000000FF)<<8)  | \				  (((unsigned short)(addr) & 0x0000FF00)>>8))		#define ntohs(addr)     htons(addr)#else	#define htonl(a)       ((unsigned long)(a))	#define ntohl(a)       ((unsigned long)(a))	#define htons(a)       ((unsigned short)(a))	#define ntohs(a)       ((unsigned short)(a))#endif/*------------------------*//* Generic Socket address *//*------------------------*/struct sockaddr  {  unsigned short     sa_family;  char               sa_data[14];  };/*---------------------------*//* Berkeley Internet address *//*---------------------------*/struct in_addr    {    unsigned long    s_addr;          };/*-------------------------*//* Internet style address  *//*-------------------------*/struct sockaddr_in    {    short            sin_family;               unsigned short   sin_port;        struct in_addr   sin_addr;        char             sin_zero[8];               };int             socket      (int af, int type, int protocol);int             accept      (int s, struct sockaddr *addr, int  *addrlen);int             bind        (int s, struct sockaddr *addr, int   addrlen );int             connect     (int s, struct sockaddr *addr, int   addrlen );int             recv        (int s, char  * buf, int len, int flags);int             send        (int s, char  * buf, int len, int flags);int             closesocket (int s);unsigned long   inet_addr   (char * cp);int             listen      (int s, int backlog);#endif	/* __SYS_SOCKET_H__ *//* end of sys/types.h */

⌨️ 快捷键说明

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