[Spice-devel] [spice-devel] spice-xpi rhbz#805602
David Jaša
djasa at redhat.com
Tue Apr 3 08:21:52 PDT 2012
Marc-André Lureau píše v Út 03. 04. 2012 v 08:39 -0400:
>
> ----- Mensaje original -----
> > + if (port < 0 && sport < 0)
> > + {
> > + if (port < 0)
> > + LOG_ERROR("invalid port: " << m_port);
> > + if (sport < 0)
> > + LOG_ERROR("invalid secure port: " << m_secure_port);
> > + return;
> > + }
>
> If one of the value is invalid or garbage and the second is valid, you will silently ignore the error and continue.
Yeah, the workflow should be a little different:
1) for port and sport, convert string to int. It can have three results:
1. port is int in valid range
2. string has zero length -> value should not be sent at all
3. string is garbage
2) connect function should have IMO these paths:
1. both values are valid -> execute client and pass the values to it
2. one of values is valid and the other is disabled -> execute the
client and pass the valid value to it
3. one of values is valid: execute the client and:
1. if the other is disabled -> ignore it
2. the other is garbage -> LOG_ERROR the original string value
4. neither of the values is valid -> LOG_ERROR the original string
values and don't bother to start the client.
in case of 2) 4., it would make a lot of sense to pass the error to the
web page too when it is possible (when OnDisconnected will work).
David
> I think if any value is wrong (not within -1..65535, it should error out)
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
--
David Jaša, RHCE
SPICE QE based in Brno
GPG Key: 22C33E24
Fingerprint: 513A 060B D1B4 2A72 7F0D 0278 B125 CD00 22C3 3E24
More information about the Spice-devel
mailing list