1
0
mirror of https://git.libssh.org/projects/libssh.git synced 2026-01-06 14:21:55 +03:00

Improve getai().

git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@726 7dcaeef0-15fb-0310-b436-a5af3365683c
This commit is contained in:
Andreas Schneider
2009-05-05 07:47:11 +00:00
parent ce1a5d7578
commit 83b26b97b5

View File

@@ -89,23 +89,25 @@ static void sock_set_blocking(socket_t sock) {
}
#endif /* _WIN32 */
static int getai(const char *host, int port, struct addrinfo **ai)
{
struct addrinfo hints;
char *service=NULL;
char s_port[10];
static int getai(const char *host, int port, struct addrinfo **ai) {
const char *service = NULL;
struct addrinfo hints;
char s_port[10];
memset(&hints,0,sizeof(hints));
hints.ai_protocol=IPPROTO_TCP;
hints.ai_family=PF_UNSPEC;
hints.ai_socktype=SOCK_STREAM;
if(port==0){
hints.ai_flags=AI_PASSIVE;
} else {
snprintf(s_port,sizeof(s_port),"%hu",port);
service=s_port;
}
return getaddrinfo(host,service,&hints,ai);
ZERO_STRUCT(hints);
hints.ai_protocol = IPPROTO_TCP;
hints.ai_family = PF_UNSPEC;
hints.ai_socktype = SOCK_STREAM;
if (port == 0) {
hints.ai_flags = AI_PASSIVE;
} else {
snprintf(s_port, sizeof(s_port), "%hu", port);
service = s_port;
}
return getaddrinfo(host, service, &hints, ai);
}
static int ssh_connect_ai_timeout(SSH_SESSION *session, const char *host,