tcprecv05.c

来自「Unix网络编程 基于Socket的网络编程」· C语言 代码 · 共 42 行

C
42
字号
#include	"unp.h"int		listenfd, connfd;void	sig_urg(int);intmain(int argc, char **argv){	int		size;	if (argc == 2)		listenfd = Tcp_listen(NULL, argv[1], NULL);	else if (argc == 3)		listenfd = Tcp_listen(argv[1], argv[2], NULL);	else		err_quit("usage: tcprecv05 [ <host> ] <port#>");	size = 4096;	Setsockopt(listenfd, SOL_SOCKET, SO_RCVBUF, &size, sizeof(size));	connfd = Accept(listenfd, NULL, NULL);	Signal(SIGURG, sig_urg);	Fcntl(connfd, F_SETOWN, getpid());	for ( ; ; )		pause();}voidsig_urg(int signo){	int		n;	char	buff[2048];	printf("SIGURG received\n");	n = Recv(connfd, buff, sizeof(buff)-1, MSG_OOB);	buff[n] = 0;		/* null terminate */	printf("read %d OOB byte\n", n);}

⌨️ 快捷键说明

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