After looking for the problem with the xrdp SmartCard support for 64-bit systems, I have found at least one thing that may be a problem. In xrdp_pcsc.c, a DWORD is defined as an unsigned int. Whereas, most, if not all the user and test programs would get the definition for a DWORD from /usr/include/PCSC/wintypes.h which defines a DWORD as an unsigned long.
I was seeing all types of strange behavior in one of the pcsc test programs where a call such as: rv = SCardListReaders(hContext,NULL,NULL,&dwReaders); would fail at random times. The problem was dwReaders was defined as DWORD and used the definition in wintypes.h. In xrdp_pcsc.c, it returned the value to dwReaders by the pointer to dwReaders. So the value of dwReaders would be messed up at times. Jay, can you verify this? -- View this message in context: http://xrdp-devel.766250.n3.nabble.com/XRDP-SmartCard-Support-fails-on-64-bit-Ubuntu-System-tp4025466p4025522.html Sent from the XRDP Devel mailing list archive at Nabble.com. ------------------------------------------------------------------------------ The best possible search technologies are now affordable for all companies. Download your FREE open source Enterprise Search Engine today! Our experts will assist you in its installation for $59/mo, no commitment. Test it for FREE on our Cloud platform anytime! http://pubads.g.doubleclick.net/gampad/clk?id=145328191&iu=/4140/ostg.clktrk _______________________________________________ xrdp-devel mailing list xrdp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xrdp-devel