unixbind.c

来自「linux网络编程中的经典源码」· C语言 代码 · 共 28 行

C
28
字号
#include	"unp.h"intmain(int argc, char **argv){	int					sockfd;	socklen_t			len;	struct sockaddr_un	addr1, addr2;	if (argc != 2)		err_quit("usage: unixbind <pathname>");	sockfd = Socket(AF_LOCAL, SOCK_STREAM, 0);	unlink(argv[1]);		/* OK if this fails */	bzero(&addr1, sizeof(addr1));	addr1.sun_family = AF_LOCAL;	strncpy(addr1.sun_path, argv[1], sizeof(addr1.sun_path)-1);	Bind(sockfd, (SA *) &addr1, SUN_LEN(&addr1));	len = sizeof(addr2);	Getsockname(sockfd, (SA *) &addr2, &len);	printf("bound name = %s, returned len = %d\n", addr2.sun_path, len);		exit(0);}

⌨️ 快捷键说明

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