Re: [PATCH spice-xpi 2/2] controller: return immediately if already connected

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




----- Original Message -----
> On Fri, Mar 07, 2014 at 03:02:41PM +0100, Marc-André Lureau wrote:
> > From: Marc-André Lureau <marcandre.lureau@xxxxxxxxx>
> > 
> > Do not try again if the unix socket is already connected, but fail
> > immediately.
> 
> Does that prevent a crash? Or what does this commit change from a end-user
> perspective?

It only returns immediately if EISCONN, instead of trying 10x.

> 
> Christophe
> 
> > 
> > https://bugzilla.redhat.com/show_bug.cgi?id=1073461
> > ---
> >  SpiceXPI/src/plugin/controller-unix.cpp | 2 ++
> >  SpiceXPI/src/plugin/controller.cpp      | 2 ++
> >  2 files changed, 4 insertions(+)
> > 
> > diff --git a/SpiceXPI/src/plugin/controller-unix.cpp
> > b/SpiceXPI/src/plugin/controller-unix.cpp
> > index 1e60e5c..952f95c 100644
> > --- a/SpiceXPI/src/plugin/controller-unix.cpp
> > +++ b/SpiceXPI/src/plugin/controller-unix.cpp
> > @@ -103,6 +103,8 @@ int SpiceControllerUnix::Connect()
> >      int rc = connect(m_client_socket, (struct sockaddr *) &remote,
> >      strlen(remote.sun_path) + sizeof(remote.sun_family));
> >      if (rc == -1)
> >      {
> > +        if (errno == EISCONN)
> > +            rc = 1;
> >          g_critical("controller connect: %s", g_strerror(errno));
> >      }
> >      else
> > diff --git a/SpiceXPI/src/plugin/controller.cpp
> > b/SpiceXPI/src/plugin/controller.cpp
> > index bdfcba8..be56a28 100644
> > --- a/SpiceXPI/src/plugin/controller.cpp
> > +++ b/SpiceXPI/src/plugin/controller.cpp
> > @@ -94,6 +94,8 @@ int SpiceController::Connect(const int nRetries)
> >      for (int i = 0; rc != 0 && i < nRetries; ++i)
> >      {
> >          rc = Connect();
> > +        if (rc == 1)
> > +            break;
> >          g_usleep(sleep_time * G_USEC_PER_SEC);
> >      }
> >      if (rc != 0) {
> > --
> > 1.8.5.3
> > 
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel@xxxxxxxxxxxxxxxxxxxxx
> > http://lists.freedesktop.org/mailman/listinfo/spice-devel
> 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
> 
_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]