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

Re: [Xen-devel] [PATCH][Take 3] VNC authentification



On Tue, Oct 03, 2006 at 12:56:31PM -0500, Anthony Liguori wrote:
> Masami Watanabe wrote:
> >+static int vnc_auth(VncState *vs)
> >+{
> >+    extern char vncpasswd[64];
> >+    extern unsigned char challenge[AUTHCHALLENGESIZE];
> >+
> >+    if (*vncpasswd == '\0') {
> >+    /* AuthType is None */
> >+    vnc_write_u32(vs, 1);
> >+    vnc_flush(vs);
> >+    vnc_read_when(vs, protocol_client_init, 1);
> >+    } else {
> >+    /* AuthType is VncAuth */
> >+    vnc_write_u32(vs, 2);
> >+    vnc_flush(vs);
> >+
> >+    /* Read AuthType */
> >+    vnc_read_when(vs, protocol_authtype, 1);
> >  
> 
> As I mentioned before, you cannot have to vnc_read_when()'s execution 
> path without returning the the mainloop.
> 
> protocol_authtype() cannot possibly be invoked.  If the code is working 
> now, it's pure luck.

Yeah, the impl of protocol_authtype() in there is a no-op too - it should
be rejecting auth types which aren't supported, even if it was being invoked.
With the code as it is, protocol_authtype never runs & the server starts
doing VNCAuth regardless of what the client says it wants to do, which is
clearly not correct.

Dan.
-- 
|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.