fix: myself. need smaller commits
This commit is contained in:
parent
0b8c755a6b
commit
0247031a3d
11 changed files with 164 additions and 11 deletions
helpers
33
helpers/open_tcp_connection.cc
Normal file
33
helpers/open_tcp_connection.cc
Normal file
|
@ -0,0 +1,33 @@
|
|||
#include <helpers.h>
|
||||
#include <netdb.h>
|
||||
#include <trantor/utils/Logger.h>
|
||||
|
||||
int
|
||||
helpers::open_tcp_connection(char *host, char *port)
|
||||
{
|
||||
int s, status;
|
||||
struct addrinfo hints{}, *res;
|
||||
memset(&hints, 0, sizeof hints);
|
||||
hints.ai_family = AF_INET;
|
||||
hints.ai_socktype = SOCK_STREAM;
|
||||
|
||||
if ((status = getaddrinfo(host, port, &hints, &res)) != 0)
|
||||
{
|
||||
LOG_ERROR << "Error getting addressinfo: " << gai_strerror(status);
|
||||
freeaddrinfo(res);
|
||||
return 0;
|
||||
}
|
||||
|
||||
s = socket(res->ai_family, res->ai_socktype, res->ai_protocol); //creating Socket
|
||||
|
||||
if ((status = connect(s, res->ai_addr, res->ai_addrlen)) != 0)
|
||||
{
|
||||
LOG_ERROR << "Error opening connection";
|
||||
freeaddrinfo(res);
|
||||
return 0;
|
||||
}
|
||||
|
||||
freeaddrinfo(res);
|
||||
|
||||
return s;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue