prdefaults.c

来自「关于linux 网络编程的一些代码 关于linux 网络编程的一些代码」· C语言 代码 · 共 60 行

C
60
字号
#include	"unp.h"static doit(int, const char *);voidmain(){	int		tcpsock, udpsock;	struct sockaddr_in	servaddr;	if ( (tcpsock = socket(AF_INET, SOCK_STREAM, 0)) < 0)		err_sys("TCP socket error");#ifdef notdef	bzero(&servaddr, sizeof(servaddr));	servaddr.sin_family      = AF_INET;	servaddr.sin_port        = htons(9);	if (ascii2addr(AF_INET, "127.0.0.1", &servaddr.sin_addr) != 4)		err_quit("ascii2addr error");	if (connect(tcpsock, (SA *) &servaddr, sizeof(servaddr)) < 0)		err_sys("connect error");#endif	doit(tcpsock, "tcp");	if ( (udpsock = socket(AF_INET, SOCK_DGRAM, 0)) < 0)		err_sys("UDP socket error");	doit(udpsock, "udp");	exit(0);}staticdoit(int fd, const char *name){	int			val;	socklen_t	optlen;	optlen = sizeof(val);	if (getsockopt(fd, SOL_SOCKET, SO_SNDBUF, &val, &optlen) < 0)		err_sys("SO_SNDBUF getsockopt error");	printf("%s send buffer size = %d\n", name, val);	optlen = sizeof(val);	if (getsockopt(fd, SOL_SOCKET, SO_RCVBUF, &val, &optlen) < 0)		err_sys("SO_RCVBUF getsockopt error");	printf("%s recv buffer size = %d\n", name, val);	optlen = sizeof(val);	if (getsockopt(fd, SOL_SOCKET, SO_SNDLOWAT, &val, &optlen) < 0)		err_sys("SO_SNDLOWAT getsockopt error");	printf("%s send low-water mark = %d\n", name, val);	optlen = sizeof(val);	if (getsockopt(fd, SOL_SOCKET, SO_RCVLOWAT, &val, &optlen) < 0)		err_sys("SO_RCVLOWAT getsockopt error");	printf("%s receive low-water mark size = %d\n", name, val);}

⌨️ 快捷键说明

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