Replace asprintf() with snprintf() in vnc.c ("Daniel P. Berrange")
As previously discussed, this patch removes the non-portable use of asprintf(), replacing it with malloc+snprintf instead Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6843 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
5b0d272717
commit
457772e68f
9
vnc.c
9
vnc.c
@ -53,6 +53,7 @@ static char *addr_to_string(const char *format,
|
||||
char host[NI_MAXHOST];
|
||||
char serv[NI_MAXSERV];
|
||||
int err;
|
||||
size_t addrlen;
|
||||
|
||||
if ((err = getnameinfo((struct sockaddr *)sa, salen,
|
||||
host, sizeof(host),
|
||||
@ -63,8 +64,12 @@ static char *addr_to_string(const char *format,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (asprintf(&addr, format, host, serv) < 0)
|
||||
return NULL;
|
||||
/* Enough for the existing format + the 2 vars we're
|
||||
* subsituting in. */
|
||||
addrlen = strlen(format) + strlen(host) + strlen(serv);
|
||||
addr = qemu_malloc(addrlen + 1);
|
||||
snprintf(addr, addrlen, format, host, serv);
|
||||
addr[addrlen] = '\0';
|
||||
|
||||
return addr;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user