- update hv_kvp_daemon: Cleanup kvp_get_domain_name(). If

getaddrinfo() fails, deal with it properly (this can happen if no
  IP address has been assigned).  Also, don't specify a specific
  service in the call to getaddrinfo() to make this code as generic
  as possible.

OBS-URL: https://build.opensuse.org/package/show/Virtualization/hyper-v?expand=0&rev=15
This commit is contained in:
Olaf Hering 2011-07-26 19:25:29 +00:00 committed by Git OBS Bridge
parent ed4012d365
commit ade74df229
2 changed files with 12 additions and 5 deletions

View File

@ -274,22 +274,20 @@ static int
kvp_get_domain_name(char *buffer, int length)
{
struct addrinfo hints, *info ;
gethostname(buffer, length);
int error = 0;
gethostname(buffer, length);
memset(&hints, 0, sizeof(hints));
hints.ai_family = AF_INET; /*Get only ipv4 addrinfo. */
hints.ai_socktype = SOCK_STREAM;
hints.ai_flags = AI_CANONNAME;
error = getaddrinfo(buffer, "http", &hints, &info);
error = getaddrinfo(buffer, NULL, &hints, &info);
if (error != 0) {
strcpy(buffer, "getaddrinfo failed\n");
error = 1;
goto get_domain_done;
return error;
}
strcpy(buffer, info->ai_canonname);
get_domain_done:
freeaddrinfo(info);
return error;
}

View File

@ -1,3 +1,12 @@
-------------------------------------------------------------------
Tue Jul 26 21:24:25 CEST 2011 - ohering@suse.de
- update hv_kvp_daemon: Cleanup kvp_get_domain_name(). If
getaddrinfo() fails, deal with it properly (this can happen if no
IP address has been assigned). Also, don't specify a specific
service in the call to getaddrinfo() to make this code as generic
as possible.
-------------------------------------------------------------------
Sun Jul 24 17:22:41 CEST 2011 - ohering@suse.de