您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ socket_connect函数代码示例

51自学网 2021-06-03 08:06:17
  C++
这篇教程C++ socket_connect函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中socket_connect函数的典型用法代码示例。如果您正苦于以下问题:C++ socket_connect函数的具体用法?C++ socket_connect怎么用?C++ socket_connect使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了socket_connect函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: logprintf

void *events_clientize(void *param) {	logprintf(LOG_STACK, "%s(...)", __FUNCTION__);	unsigned int failures = 0;	while(loop && failures <= 5) {		struct ssdp_list_t *ssdp_list = NULL;		int standalone = 0;		settings_find_number("standalone", &standalone);		if(ssdp_seek(&ssdp_list) == -1 || standalone == 1) {			logprintf(LOG_DEBUG, "no pilight ssdp connections found");			char server[16] = "127.0.0.1";			if((sockfd = socket_connect(server, (unsigned short)socket_get_port())) == -1) {				logprintf(LOG_DEBUG, "could not connect to pilight-daemon");				failures++;				continue;			}		} else {			if((sockfd = socket_connect(ssdp_list->ip, ssdp_list->port)) == -1) {				logprintf(LOG_DEBUG, "could not connect to pilight-daemon");				failures++;				continue;			}		}		if(ssdp_list) {			ssdp_free(ssdp_list);		}		struct JsonNode *jclient = json_mkobject();		struct JsonNode *joptions = json_mkobject();		json_append_member(jclient, "action", json_mkstring("identify"));		json_append_member(joptions, "config", json_mknumber(1, 0));		json_append_member(jclient, "options", joptions);		json_append_member(jclient, "media", json_mkstring("all"));		char *out = json_stringify(jclient, NULL);		socket_write(sockfd, out);		json_free(out);		json_delete(jclient);		if(socket_read(sockfd, &recvBuff, 0) != 0			 || strcmp(recvBuff, "{/"status/":/"success/"}") != 0) {				failures++;			continue;		}		failures = 0;		while(loop) {			if(socket_read(sockfd, &recvBuff, 0) != 0) {				break;			} else {				events_queue(recvBuff);			}		}	}	if(recvBuff) {		FREE(recvBuff);		recvBuff = NULL;	}	socket_close(sockfd);	return 0;}
开发者ID:Johan-M,项目名称:pilight,代码行数:60,


示例2: socket_setup

int socket_setup(void){    s8 rc = SOC_SUCCESS;    if (setting.addr_type == ADDR_TYPE_IP)    {        return socket_connect(setting.ipaddr);    }    else    {        u8 ipaddr[4] = {0};        u8 len = 0;        eat_soc_gethost_notify_register(hostname_notify_cb);        rc = eat_soc_gethostbyname(setting.domain, ipaddr, &len, request_id++);        if (rc == SOC_WOULDBLOCK)        {            LOG_DEBUG("eat_soc_gethostbyname wait callback.");            return ERR_WAITING_HOSTNAME2IP;        }        else if (rc == SOC_SUCCESS)        {            LOG_DEBUG("host:%s -> %d.%d.%d.%d:%d.", setting.domain, ipaddr[0], ipaddr[1], ipaddr[2], ipaddr[3], setting.port);            return socket_connect(ipaddr);        }        else        {            LOG_ERROR("eat_soc_gethostbyname error!");            return ERR_GET_HOSTBYNAME_FAILED;        }    }}
开发者ID:xunce,项目名称:Electrombile_Firmware,代码行数:33,


示例3: proxy_connect

int proxy_connect(struct proxy *self, const char *dst_ip, unsigned short dst_port){	int err;	err = socket_connect(self->s, self->ip, self->port);	if (err < 0)		return err;	struct socket5_select_request	request;	struct socket5_select_response	response;	assert(self->ip);	assert(self->usr);	assert(self->pwd);	err = socket_connect(self->s, self->ip, self->port);	if (err < 0)		return err;	request.ver = 0x05;	request.method_nr = 2;	request.method_tbl[0] = 0x00;	/* no auth */	request.method_tbl[2] = 0x02;	/* user pwd */	err = socket_send_data(				self->s,				(char *)&request,				2 + request.method_nr * sizeof(request.method_tbl[0])				);	if (err < 0)		return err;	err = socket_recv_data(				self->s,				(char *)&response,				sizeof(response)				);	if (err < 0)		return err;	if (response.method == 0x02)		err = auth(self->s, self->usr, self->pwd);	if (err < 0)		return err;	err = conn(self->s, dst_ip, dst_port);		return err;}
开发者ID:findstr,项目名称:proxy-socket5,代码行数:52,


示例4: connection_client_connect

intconnection_client_connect(struct connection *c,                          const struct sockaddr *server_address,                          size_t server_address_length,                          uint32_t seed){    int ret;    struct timeval tv;    assert(c->client.client == NULL);    int fd;    const struct addrinfo *socks4_address =        c->instance->config->socks4_address;    if (socks4_address != NULL) {        fd = socket_connect(socks4_address->ai_family, SOCK_STREAM, 0,                            socks4_address->ai_addr, socks4_address->ai_addrlen);        if (fd < 0)            return -fd;        if (!socks_connect(fd, server_address))            return -1;    } else {        fd = socket_connect(server_address->sa_family, SOCK_STREAM, 0,                            server_address, server_address_length);        if (fd < 0)            return -fd;    }    ret = uo_client_create(fd, seed,                           c->client_version.seed,                           &client_handler, c,                           &c->client.client);    if (ret != 0) {        close(fd);        return ret;    }    if (client_version_defined(&c->client_version))        uo_client_set_protocol(c->client.client,                               c->client_version.protocol);    tv.tv_sec = 30;    tv.tv_usec = 0;    evtimer_set(&c->client.ping_event, connection_ping_event_callback,                &c->client);    evtimer_add(&c->client.ping_event, &tv);    return 0;}
开发者ID:cculianu,项目名称:uoproxy,代码行数:51,


示例5: bot_init_connection

boolbot_init_connection(struct bot *bot){	DEBUG(LOG_VERBOSE, "bot init connection/n");		return socket_connect(bot->socket);}
开发者ID:dzruyk,项目名称:win-malware-tests,代码行数:7,


示例6: run_networking_test

static void run_networking_test(bool server){    if (!server) {        connection_t *conn = connection_create(&on_connect);        if (!conn)            return;        printf("connecting to localhost on port 1337/n");        socket_connect(conn, "127.0.0.1", "1337");        char buffer[1024];        while (fgets(buffer, sizeof buffer, stdin))            socket_write(conn, buffer);    } else {        socket_t *sock = socket_create(on_accept);        if (!sock)            return;        printf("Server will bind to port 1337./n");        socket_listen(sock, NULL, 1337, 10);        while (1) {            sleep(5);            printf("%d connections ATM/n", sock->num_connections);        }    }}
开发者ID:tachometer,项目名称:csnippets,代码行数:26,


示例7: main

    int main(int argc, char **argv) {        initiate(argc, argv); /* initialize executor */        #ifndef BASIC        socket_setup();        network_socket = socket_connect();        #endif        runsys(); /* initialize running system */        if (has_network_socket()) {            request_id();            GraphRes = get_graph_res();            graph_setstatus();            if (GraphRes < 0) exit(12);            if (remote) send_ready();        }        setjmp (contenv); /* set label for continue long jump */        while (TRUE) { /* repeat until exit() is called */            get_internal();            schedule(); /* reschedule current process */            if (ready != 0) {                decode(); /* fetch instruction */                execute(); /* and execute it */            }        }        return 0;    } /* end main */
开发者ID:lemlang,项目名称:loglan82,代码行数:27,


示例8: socket_connect

void *__server(void *ptr){	t_context *C=ctx_get();	char msg[30];	if(!server_init)	{		socket_connect(C->server->socket,9901);		server_init=1;		sprintf(msg,"listening on port %d",C->server->socket->portno);		term_print(C->term,msg);		if(C->app->off_screen)		{			printf("listening on port %d/n",C->server->socket->portno);		}	}	else	{		socket_listen(C->server->socket);		if(C->app->off_screen)		{			printf("waiting for connection");		}	}	return NULL;}
开发者ID:BlackBoxe,项目名称:minuit,代码行数:28,


示例9: nettest2

int nettest2(void){	int err;	sockaddr addr;	fd = socket_create(SOCK_PROTO_TCP, 0);	printf("created socket, fd %d/n", fd);	if(fd < 0)		return 0;	memset(&addr, 0, sizeof(addr));	addr.addr.len = 4;	addr.addr.type = ADDR_TYPE_IP;	addr.port = 9;	NETADDR_TO_IPV4(addr.addr) = IPV4_DOTADDR_TO_ADDR(63,203,215,73);	err = socket_connect(fd, &addr);	printf("socket_connect returns %d/n", err);	if(err < 0)		return err;	for(;;) {		char buf[4096];		socket_write(fd, buf, sizeof(buf));	}	return 0;}
开发者ID:HTshandou,项目名称:newos,代码行数:27,


示例10: nettest1

int nettest1(void){	int err;	sockaddr addr;	fd = socket_create(SOCK_PROTO_TCP, 0);	printf("created socket, fd %d/n", fd);	if(fd < 0)		return 0;	memset(&addr, 0, sizeof(addr));	addr.addr.len = 4;	addr.addr.type = ADDR_TYPE_IP;//	addr.port = 19;//	NETADDR_TO_IPV4(addr.addr) = IPV4_DOTADDR_TO_ADDR(63,203,215,73);//	addr.port = 23;//	NETADDR_TO_IPV4(addr.addr) = IPV4_DOTADDR_TO_ADDR(192,168,0,3);	addr.port = 6667;	NETADDR_TO_IPV4(addr.addr) = IPV4_DOTADDR_TO_ADDR(209,131,227,242);	err = socket_connect(fd, &addr);	printf("socket_connect returns %d/n", err);	if(err < 0)		return err;	exit_sem = _kern_sem_create(0, "exit");	_kern_thread_resume_thread(_kern_thread_create_thread("read_thread", &read_thread, NULL));	_kern_thread_resume_thread(_kern_thread_create_thread("write_thread", &write_thread, NULL));	for(;;)		_kern_sem_acquire(exit_sem, 1);	return 0;}
开发者ID:HTshandou,项目名称:newos,代码行数:35,


示例11: nettest4

int nettest4(void){	int err;	sockaddr addr;	fd = socket_create(SOCK_PROTO_TCP, 0);	printf("created socket, fd %d/n", fd);	if(fd < 0)		return 0;	memset(&addr, 0, sizeof(addr));	addr.addr.len = 4;	addr.addr.type = ADDR_TYPE_IP;	addr.port = 1900;	NETADDR_TO_IPV4(addr.addr) = IPV4_DOTADDR_TO_ADDR(63,203,215,73);	err = socket_connect(fd, &addr);	printf("socket_connect returns %d/n", err);	if(err < 0)		return err;	usleep(5000000);	err = socket_close(fd);	printf("socket_close returns %d/n", err);	return 0;}
开发者ID:HTshandou,项目名称:newos,代码行数:28,


示例12: int_to_string

Display *OpenDisplay(char *hostname, int port){    Display *display = NULL;    Socket *socket = NULL;    char *port_buf = NULL;    port_buf = int_to_string(port);    if (port_buf == NULL)        return NULL;    socket = socket_new(Socket_Blocking);    if (socket_connect(socket, hostname, port_buf) != 0) {        socket_free(socket);        free(port_buf);        return NULL;    }    free(port_buf);    display = (Display *) malloc(sizeof(Display));        display->socket = socket;    display->hostname = strdup(hostname);    display->port = port;    display->callbacks = callbacks_new();        return display;}
开发者ID:cafiend,项目名称:W12,代码行数:28,


示例13: main

// main//-----------------------------------------------------------------------------------intmain (int argc, char *argv[]){  int s, size;  pthread_t thread;  char buf[256];  if (argc == 1)    {      printf ("usage: client <server IP address>/n");      exit (1);    }  s = socket_connect (argv[1], 1024);  pthread_mutex_init (&g_mutex, NULL);  pthread_create (&thread, NULL, thread_recv, (void *) &s);  // メインル
C++ socket_create函数代码示例
C++ socket_close函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。