Hi,

on trying to get FreeRDP going with its smartcard support, I'm harvesting 
segfaults only. Unfortunately, the keyboard is locked at the time of the 
crash, hence, I cannot give you a useful gdb bt here (as it doesn't take 
any kbd input..). Switching to a text console and killing gdb works, 
though.

System: openSUSE 12.2/x86_64, FreeRDP: git 
10a92074c593196af23f33458a38495f549a9f6f

Here's the debug output of the session:

~> xfreerdp /u:id@domain /kbd:0x00000407 /size:1600x1200 /bpp:16 
/smartcard:smartcard -sec-nla /v:host
loading channel rdpdr
loading channel rdpsnd
connected to host:3389
Unable to detect time zone
Loading device service smartcard (static)
registered device #1: SCARD (type=32 id=1)
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 18 00 00 00 01 10 08 00 cc cc cc cc 08 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00             ............
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 28 00 00 00 01 10 08 00 cc cc cc cc 18 00 00 00 (...............
0020 00 00 00 00 00 00 00 00 04 00 00 00 ff ff ff ff ................
0030 04 00 00 00 45 a2 ec 0c 00 00 00 00             ....E.......
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 80 00 00 00 01 10 08 00 cc cc cc cc 70 00 00 00 ............p...
0020 00 00 00 00 00 00 00 00 5e 00 00 00 50 06 76 01 ........^...P.v.
0030 5e 00 00 00 4b 00 4f 00 42 00 49 00 4c 00 20 00 ^...K.O.B.I.L. .
0040 53 00 79 00 73 00 74 00 65 00 6d 00 73 00 20 00 S.y.s.t.e.m.s. .
0050 53 00 6d 00 61 00 72 00 74 00 20 00 54 00 6f 00 S.m.a.r.t. .T.o.
0060 6b 00 65 00 6e 00 20 00 28 00 4e 00 45 00 31 00 k.e.n. .(.N.E.1.
0070 32 00 38 00 31 00 30 00 37 00 37 00 31 00 32 00 2.8.1.0.7.7.1.2.
0080 29 00 20 00 30 00 30 00 20 00 30 00 30 00 00 00 ). .0.0. .0.0...
0090 00 00 00 00                                     ....
DBG_SCARD handle_GetStatusChange (442): context: 0x0ceca245, timeout: 
0xffffffff, count: 2
DBG_SCARD handle_GetStatusChange (484):    "\\?PnP?\Notification"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
DBG_SCARD handle_GetStatusChange (484):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000010, event: 0x00000000
DBG_SCARD handle_GetStatusChange (503): Success
DBG_SCARD handle_GetStatusChange (513):    "\\?PnP?\Notification"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000001, event: 0x00000000
DBG_SCARD handle_GetStatusChange (513):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000010, event: 0x00000022
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 80 00 00 00 01 10 08 00 cc cc cc cc 70 00 00 00 ............p...
0020 00 00 00 00 00 00 00 00 02 00 00 00 d8 4d 08 00 .............M..
0030 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060 00 00 00 00 10 00 00 00 22 00 00 00 18 00 00 00 ........".......
0070 3b bf 96 00 81 31 fe 5d 00 64 04 11 04 00 31 c0 ;....1.].d....1.
0080 73 f7 01 d0 00 90 00 7b 00 00 00 00 00 00 00 00 s......{........
0090 00 00 00 00                                     ....
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 28 00 00 00 01 10 08 00 cc cc cc cc 18 00 00 00 (...............
0020 00 00 00 00 00 00 00 00 04 00 00 00 ff ff ff ff ................
0030 04 00 00 00 c6 2e fa 72 00 00 00 00             .......r....
DBG_SCARD handle_GetStatusChange (442): context: 0x72fa2ec6, timeout: 
0x00000000, count: 1
DBG_SCARD handle_GetStatusChange (484):    "\\?PnP?\Notification"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
DBG_SCARD handle_GetStatusChange (503): Success
DBG_SCARD handle_GetStatusChange (513):    "\\?PnP?\Notification"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000001, event: 0x00000000
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 01 00 00 00 d8 4d 08 00 .............M..
0030 01 00 00 00 01 00 00 00 00 00 00 00 24 00 00 00 ............$...
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060 00 00 00 00                                     ....
DBG_SCARD handle_GetStatusChange (442): context: 0x72fa2ec6, timeout: 
0x00000000, count: 1
DBG_SCARD handle_GetStatusChange (484):    "KOBIL Systems Smart Token 1"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
DBG_SCARD handle_GetStatusChange (501): Failure: Unknown reader specified. 
(0x80100009)
DBG_SCARD handle_GetStatusChange (513):    "KOBIL Systems Smart Token 1"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 09 00 10 80 01 00 00 00 d8 4d 08 00 .............M..
0030 01 00 00 00 00 00 00 00 00 00 00 00 24 00 00 00 ............$...
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060 00 00 00 00                                     ....
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 2f 00 00 00 50 06 76 01 ......../...P.v.
0030 2f 00 00 00 4b 4f 42 49 4c 20 53 79 73 74 65 6d /...KOBIL System
0040 73 20 53 6d 61 72 74 20 54 6f 6b 65 6e 20 28 4e s Smart Token (N
0050 45 31 32 38 31 30 37 37 31 32 29 20 30 30 20 30 E128107712) 00 0
0060 30 00 00 00                                     0...
DBG_SCARD handle_ReleaseContext (310): success 0x72fa2ec6
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 18 00 00 00 01 10 08 00 cc cc cc cc 08 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00             ............
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 28 00 00 00 01 10 08 00 cc cc cc cc 18 00 00 00 (...............
0020 00 00 00 00 00 00 00 00 04 00 00 00 ff ff ff ff ................
0030 04 00 00 00 d5 cf 37 5e 00 00 00 00             ......7^....
DBG_SCARD smartcard_input_reader_name (226): datalength 46
DBG_SCARD handle_Connect (576): (context: 0x5e37cfd5, share: 0x00000002, proto: 
0x00000002, reader: "KOBIL Systems Smart Token (NE128107712) 00 00")
DBG_SCARD handle_Connect (584): Success 0x39144e1c
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 30 00 00 00 01 10 08 00 cc cc cc cc 20 00 00 00 0........... ...
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0030 04 00 00 00 34 ff 6c 01 02 00 00 00 04 00 00 00 ....4.l.........
0040 1c 4e 14 39                                     .N.9
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 2f 00 00 00 50 06 76 01 ......../...P.v.
0030 2f 00 00 00 4b 4f 42 49 4c 20 53 79 73 74 65 6d /...KOBIL System
0040 73 20 53 6d 61 72 74 20 54 6f 6b 65 6e 20 28 4e s Smart Token (N
0050 45 31 32 38 31 30 37 37 31 32 29 20 30 30 20 30 E128107712) 00 0
0060 30 00 00 00                                     0...
DBG_SCARD handle_GetStatusChange (442): context: 0x5e37cfd5, timeout: 
0x00000000, count: 1
DBG_SCARD handle_GetStatusChange (484):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
DBG_SCARD handle_GetStatusChange (503): Success
DBG_SCARD handle_GetStatusChange (513):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000000, event: 0x00000122
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 01 00 00 00 d8 4d 08 00 .............M..
0030 01 00 00 00 00 00 00 00 22 01 00 00 18 00 00 00 ........".......
0040 3b bf 96 00 81 31 fe 5d 00 64 04 11 04 00 31 c0 ;....1.].d....1.
0050 73 f7 01 d0 00 90 00 7b f4 01 00 00 00 00 02 cd s......{........
0060 00 00 00 00                                     ....
DBG_SCARD handle_GetAttrib (1083): hcard: 0x39144e1c, attrib: 0x00090303 (-1 
bytes)
DBG_SCARD handle_GetAttrib (1152): Success (24 bytes)
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 40 00 00 00 01 10 08 00 cc cc cc cc 30 00 00 00 @...........0...
0020 00 00 00 00 00 00 00 00 18 00 00 00 00 02 00 00 ................
0030 18 00 00 00 3b bf 96 00 81 31 fe 5d 00 64 04 11 ....;....1.].d..
0040 04 00 31 c0 73 f7 01 d0 00 90 00 7b 00 00 00 00 ..1.s......{....
0050 00 00 00 00                                     ....
DBG_SCARD handle_EndTransaction (704): Success hcard: 0x39144e1c
0000 72 44 43 49 01 00 00 00 00 00 00 00 00 00 00 00 rDCI............
0010 18 00 00 00 01 10 08 00 cc cc cc cc 08 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00             ............
DBG_SCARD handle_Disconnect (653): (context: 0x5e37cfd5, hcard: 0x39144e1c, 
disposition: 0x00000000)
DBG_SCARD handle_Disconnect (660): Success
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 18 00 00 00 01 10 08 00 cc cc cc cc 08 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00             ............
DBG_SCARD handle_ReleaseContext (310): success 0x5e37cfd5
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 18 00 00 00 01 10 08 00 cc cc cc cc 08 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00             ............
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 28 00 00 00 01 10 08 00 cc cc cc cc 18 00 00 00 (...............
0020 00 00 00 00 00 00 00 00 04 00 00 00 ff ff ff ff ................
0030 04 00 00 00 49 75 03 24 00 00 00 00             ....Iu.$....
DBG_SCARD handle_GetStatusChange (442): context: 0x24037549, timeout: 
0x00000000, count: 1
DBG_SCARD handle_GetStatusChange (484):    "\\?PnP?\Notification"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
DBG_SCARD handle_GetStatusChange (503): Success
DBG_SCARD handle_GetStatusChange (513):    "\\?PnP?\Notification"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000001, event: 0x00000000
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 01 00 00 00 d8 4d 08 00 .............M..
0030 01 00 00 00 01 00 00 00 00 00 00 00 24 00 00 00 ............$...
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060 00 00 00 00                                     ....
DBG_SCARD handle_GetStatusChange (442): context: 0x24037549, timeout: 
0x00000000, count: 1
DBG_SCARD handle_GetStatusChange (484):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
DBG_SCARD handle_GetStatusChange (503): Success
DBG_SCARD handle_GetStatusChange (513):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000000, event: 0x00000022
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 01 00 00 00 d8 4d 08 00 .............M..
0030 01 00 00 00 00 00 00 00 22 00 00 00 18 00 00 00 ........".......
0040 3b bf 96 00 81 31 fe 5d 00 64 04 11 04 00 31 c0 ;....1.].d....1.
0050 73 f7 01 d0 00 90 00 7b 00 00 00 00 00 00 00 00 s......{........
0060 00 00 00 00                                     ....
DBG_SCARD smartcard_input_reader_name (226): datalength 46
DBG_SCARD handle_Connect (576): (context: 0x24037549, share: 0x00000002, proto: 
0x00000002, reader: "KOBIL Systems Smart Token (NE128107712) 00 00")
DBG_SCARD handle_Connect (584): Success 0x2a9cc821
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 30 00 00 00 01 10 08 00 cc cc cc cc 20 00 00 00 0........... ...
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0030 04 00 00 00 34 ff 6c 01 02 00 00 00 04 00 00 00 ....4.l.........
0040 21 c8 9c 2a                                     !..*
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 2f 00 00 00 50 06 76 01 ......../...P.v.
0030 2f 00 00 00 4b 4f 42 49 4c 20 53 79 73 74 65 6d /...KOBIL System
0040 73 20 53 6d 61 72 74 20 54 6f 6b 65 6e 20 28 4e s Smart Token (N
0050 45 31 32 38 31 30 37 37 31 32 29 20 30 30 20 30 E128107712) 00 0
0060 30 00 00 00                                     0...
DBG_SCARD handle_GetStatusChange (442): context: 0x24037549, timeout: 
0x00000000, count: 1
DBG_SCARD handle_GetStatusChange (484):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (487):        user: 0x00000000, state: 
0x00000000, event: 0x00000000
DBG_SCARD handle_GetStatusChange (503): Success
DBG_SCARD handle_GetStatusChange (513):    "KOBIL Systems Smart Token 
(NE128107712) 00 00"
DBG_SCARD handle_GetStatusChange (516):        user: 0x00000000, state: 
0x00000000, event: 0x00000122
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 50 00 00 00 01 10 08 00 cc cc cc cc 40 00 00 00 P...........@...
0020 00 00 00 00 00 00 00 00 01 00 00 00 d8 4d 08 00 .............M..
0030 01 00 00 00 00 00 00 00 22 01 00 00 18 00 00 00 ........".......
0040 3b bf 96 00 81 31 fe 5d 00 64 04 11 04 00 31 c0 ;....1.].d....1.
0050 73 f7 01 d0 00 90 00 7b f4 01 00 00 00 00 03 cd s......{........
0060 00 00 00 00                                     ....
DBG_SCARD handle_EndTransaction (704): Success hcard: 0x2a9cc821
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 18 00 00 00 01 10 08 00 cc cc cc cc 08 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00             ............
DBG_SCARD handle_BeginTransaction (680): Success hcard: 0x2a9cc821
0000 72 44 43 49 01 00 00 00 01 00 00 00 00 00 00 00 rDCI............
0010 18 00 00 00 01 10 08 00 cc cc cc cc 08 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00             ............
DBG_SCARD handle_Transmit (937): handle_Transmit (irp->input: 0x7f8e3c08cdc0, 
map[0]: 20000, map[1]: 20004, map[2]: 0, map[3]: 20008, map[4]: 2000c, map[5]: 
0, map[6]: 0)
Speicherzugriffsfehler (Segfault)

The last line is an additional debug message:

                DEBUG_SCARD("handle_Transmit (irp->input: 0x%08lx, map[0]: %x, 
map[1]: %x, map[2]: %x, map[3]: %x, map[4]: %x, map[5]: %x, map[6]: %x)",
                            irp->input, map[0], map[1], map[2], map[3], map[4], 
map[5], map[6]);

The crash is similar to the one from version 1.0.2. After executing
the command, the login screen is displayed, it writes "reading 
smartcard" below the smartcard icon, and after a few seconds, is
crashes consistently.

I'm using pcsc-lite-1.8.6.

~> pcsc_scan 
PC/SC device scanner
V 1.4.18 (c) 2001-2011, Ludovic Rousseau <ludovic.rouss...@free.fr>
Compiled with PC/SC lite version: 1.8.6
Using reader plug'n play mechanism
Scanning present readers...
0: KOBIL Systems Smart Token (NE128107712) 00 00

Tue Mar 26 12:48:29 2013
Reader 0: KOBIL Systems Smart Token (NE128107712) 00 00
  Card state: Card inserted, 
  ATR: 3B BF 96 00 81 31 FE 5D 00 64 04 11 04 00 31 C0 73 F7 01 D0 00 90 00 7B

ATR_analysis '3B BF 96 00 81 31 FE 5D 00 64 04 11 04 00 31 C0 73 F7 01 D0 00 90 
00 7B': Success


Note: The switch /kbd:de does not work properly, as some mappings 
are wrong (e.g. # -> \), I have to use 0x00000407.

Current version of rdesktop works more or less with these Kobil
smartcard readers, but it forgets the smartcard from time to time
(restarting pcscd fixes this), and it occasionally locks the mouse 
in the X session, hence users have to logoff/logon at the linux 
desktop in order to precede. I really hope, that FreeRDP does not 
suffer from this, but for now, I need to get around the segfault of 
course.

Let me know, if I can provide more tests, etc.

Thanks in advance,
Pete


------------------------------------------------------------------------------
Own the Future-Intel&reg; Level Up Game Demo Contest 2013
Rise to greatness in Intel's independent game demo contest.
Compete for recognition, cash, and the chance to get your game 
on Steam. $5K grand prize plus 10 genre and skill prizes. 
Submit your demo by 6/6/13. http://p.sf.net/sfu/intel_levelupd2d
_______________________________________________
Freerdp-devel mailing list
Freerdp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freerdp-devel

Reply via email to