Message ID | 20130221202028.GA2302@mail.hallyn.com |
---|---|
State | New |
Headers | show |
22.02.2013 00:20, Serge E. Hallyn wrote: > The snprintf format isn't taking into account the new 'left' and > 'right' variables (for ipv6 []) when placing the ':', which should > go immediately before the port. This fixes actual isse (also found by Serge), where `info chardev' prints `tcp:127.0.0.14444,server,nowait' for a monitor running on port 4444. This is definitely a stable material (CCed). Reviewed-by: Michael Tokarev <mjt@tls.msk.ru> Thanks! /mjt > Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com> > --- > qemu-char.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/qemu-char.c b/qemu-char.c > index e4b0f53..3e152e1 100644 > --- a/qemu-char.c > +++ b/qemu-char.c > @@ -2482,7 +2482,7 @@ static CharDriverState *qemu_chr_open_socket_fd(int fd, bool do_nodelay, > s->do_nodelay = do_nodelay; > getnameinfo((struct sockaddr *) &ss, ss_len, host, sizeof(host), > serv, sizeof(serv), NI_NUMERICHOST | NI_NUMERICSERV); > - snprintf(chr->filename, 256, "%s:%s:%s%s%s%s", > + snprintf(chr->filename, 256, "%s:%s%s%s:%s%s", > is_telnet ? "telnet" : "tcp", > left, host, right, serv, > is_listen ? ",server" : ""); >
On Fri, Feb 22, 2013 at 12:29:44AM +0400, Michael Tokarev wrote: > 22.02.2013 00:20, Serge E. Hallyn wrote: > > The snprintf format isn't taking into account the new 'left' and > > 'right' variables (for ipv6 []) when placing the ':', which should > > go immediately before the port. > > This fixes actual isse (also found by Serge), where `info chardev' > prints `tcp:127.0.0.14444,server,nowait' for a monitor running on port > 4444. > > This is definitely a stable material (CCed). > > Reviewed-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com> > > Thanks! > > /mjt > > > Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com> > > --- > > qemu-char.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/qemu-char.c b/qemu-char.c > > index e4b0f53..3e152e1 100644 > > --- a/qemu-char.c > > +++ b/qemu-char.c > > @@ -2482,7 +2482,7 @@ static CharDriverState *qemu_chr_open_socket_fd(int fd, bool do_nodelay, > > s->do_nodelay = do_nodelay; > > getnameinfo((struct sockaddr *) &ss, ss_len, host, sizeof(host), > > serv, sizeof(serv), NI_NUMERICHOST | NI_NUMERICSERV); > > - snprintf(chr->filename, 256, "%s:%s:%s%s%s%s", > > + snprintf(chr->filename, 256, "%s:%s%s%s:%s%s", > > is_telnet ? "telnet" : "tcp", > > left, host, right, serv, > > is_listen ? ",server" : ""); > > > >
On Thu, Feb 21, 2013 at 04:28:27PM -0600, mdroth wrote: > On Fri, Feb 22, 2013 at 12:29:44AM +0400, Michael Tokarev wrote: > > 22.02.2013 00:20, Serge E. Hallyn wrote: > > > The snprintf format isn't taking into account the new 'left' and > > > 'right' variables (for ipv6 []) when placing the ':', which should > > > go immediately before the port. > > > > This fixes actual isse (also found by Serge), where `info chardev' > > prints `tcp:127.0.0.14444,server,nowait' for a monitor running on port > > 4444. > > > > This is definitely a stable material (CCed). Fix made it upstream through a separate patch: ec9f828341cb5e9cc3ad0bdbbd6989884daf823a > > > > Reviewed-by: Michael Tokarev <mjt@tls.msk.ru> > > Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com> > > > > > Thanks! > > > > /mjt > > > > > Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com> > > > --- > > > qemu-char.c | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/qemu-char.c b/qemu-char.c > > > index e4b0f53..3e152e1 100644 > > > --- a/qemu-char.c > > > +++ b/qemu-char.c > > > @@ -2482,7 +2482,7 @@ static CharDriverState *qemu_chr_open_socket_fd(int fd, bool do_nodelay, > > > s->do_nodelay = do_nodelay; > > > getnameinfo((struct sockaddr *) &ss, ss_len, host, sizeof(host), > > > serv, sizeof(serv), NI_NUMERICHOST | NI_NUMERICSERV); > > > - snprintf(chr->filename, 256, "%s:%s:%s%s%s%s", > > > + snprintf(chr->filename, 256, "%s:%s%s%s:%s%s", > > > is_telnet ? "telnet" : "tcp", > > > left, host, right, serv, > > > is_listen ? ",server" : ""); > > > > > > >
diff --git a/qemu-char.c b/qemu-char.c index e4b0f53..3e152e1 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -2482,7 +2482,7 @@ static CharDriverState *qemu_chr_open_socket_fd(int fd, bool do_nodelay, s->do_nodelay = do_nodelay; getnameinfo((struct sockaddr *) &ss, ss_len, host, sizeof(host), serv, sizeof(serv), NI_NUMERICHOST | NI_NUMERICSERV); - snprintf(chr->filename, 256, "%s:%s:%s%s%s%s", + snprintf(chr->filename, 256, "%s:%s%s%s:%s%s", is_telnet ? "telnet" : "tcp", left, host, right, serv, is_listen ? ",server" : "");
The snprintf format isn't taking into account the new 'left' and 'right' variables (for ipv6 []) when placing the ':', which should go immediately before the port. Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com> --- qemu-char.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)