On Tue, 06 Aug 2013 14:20:12 +0200 Michal Srb <m...@suse.com> wrote: > XVnc identifies connection that is being currently queried with > queryConnectId > variable. That is void* actually containing pointer to TcpSocket allocated in > TcpListener::accept(). > > The lower 32 bits are given to client in ProcVncExtGetQueryConnect: > rep.opaqueId = (CARD32)(long)queryConnectId; > > But in ProcVncExtApproveConnect the 32 bit number is converted to void* and > compared as pointer: > if (queryConnectId == (void*)stuff->opaqueId) { > > In case of 64 bit system and when TcpSocket gets allocated on higher than > 0xffffffff address, the condition will fail and XVnc will ignore the > connection approval.
Thanks. I've applied the patch to trunk now. Rgds -- Pierre Ossman Software Development Cendio AB http://cendio.com Teknikringen 8 http://twitter.com/ThinLinc 583 30 Linköping http://facebook.com/ThinLinc Phone: +46-13-214600 http://plus.google.com/112509906846170010689 A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing?
signature.asc
Description: PGP signature
------------------------------------------------------------------------------ LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk
_______________________________________________ Tigervnc-devel mailing list Tigervnc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tigervnc-devel