net.c

来自「sip 开源代码 源于novell sip 开源代码 源于novell」· C语言 代码 · 共 47 行

C
47
字号
#include <sys/types.h>#include <sys/socket.h>#include <netdb.h>#include <stdio.h>#include <string.h>#include <unistd.h>int	global_socket;intcreate_socket (char *hostname, unsigned short portnum) {	struct hostent		*hp;	struct sockaddr_in	 sa;	int					 sock;	/* Check destination */    if ((hp = gethostbyname (hostname)) == NULL) {		perror ("gethostbyname");		return (-1);	}	/* Alloc socket */	sock = socket (PF_INET, SOCK_STREAM, 0);	if (sock < 0) {		perror ("socket");		return (-1);	}	/* Setup socket */	bzero (&sa, sizeof(sa));    bcopy (hp->h_addr, (char *)&sa.sin_addr, hp->h_length);	sa.sin_family = hp->h_addrtype;    sa.sin_port = htons ((unsigned short)portnum);	/* Connect to sflphone */	if (connect (sock, (const struct sockaddr *) &sa, sizeof(sa)) < 0) {		close(sock);		perror ("connect");		return(-1);	}	return (sock);}/* EOF */

⌨️ 快捷键说明

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