Bug 5301 - investigate valgrind warnings for pcsctun
Summary: investigate valgrind warnings for pcsctun
Status: NEW
Alias: None
Product: ThinLinc
Classification: Unclassified
Component: Smart card (show other bugs)
Version: pre-1.0
Hardware: PC Unknown
: P2 Normal
Target Milestone: MediumPrio
Assignee: Pierre Ossman
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-14 16:53 CEST by Pierre Ossman
Modified: 2016-05-12 14:03 CEST (History)
1 user (show)

See Also:
Acceptance Criteria:


Attachments

Description Pierre Ossman cendio 2014-10-14 16:53:12 CEST
From bug 2723:

* pcsctun has some uninitialised data:

> ==10080== Conditional jump or move depends on uninitialised value(s)
> ==10080==    at 0x3BFE20458C: SCardListReaders (in /usr/lib64/libpcsclite.so.1.0.0)
> ==10080==    by 0x4057CE: cb_SCardListReaders (main.c:1402)
> ==10080==    by 0x406AF4: conn_event (main.c:1700)
> ==10080==    by 0x414012: g_main_context_dispatch (gmain.c:2715)
> ==10080==    by 0x414347: g_main_context_iterate.clone.5 (gmain.c:3290)
> ==10080==    by 0x414709: g_main_loop_run (gmain.c:3484)
> ==10080==    by 0x406FF8: main (main.c:2062)
> ==10080== 
> ==10080== Thread 2:
> ==10080== Syscall param socketcall.sendto(msg) points to uninitialised byte(s)
> ==10080==    at 0x3BFBE0ECFB: send (in /usr/lib64/libpthread-2.18.so)
> ==10080==    by 0x3BFE206D26: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
> ==10080==    by 0x3BFE206E77: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
> ==10080==    by 0x3BFE202A93: SCardConnect (in /usr/lib64/libpcsclite.so.1.0.0)
> ==10080==    by 0x4064AD: cb_SCardConnect_worker (main.c:451)
> ==10080==    by 0x4282AE: g_thread_proxy (gthread.c:797)
> ==10080==    by 0x3BFBE07EE4: start_thread (in /usr/lib64/libpthread-2.18.so)
> ==10080==    by 0x3BFB6F4B8C: clone (in /usr/lib64/libc-2.18.so)
> ==10080==  Address 0x5840e7b is on thread 2's stack
> ==10080== 
> ==10080== Thread 1:
> ==10080== Syscall param socketcall.sendto(msg) points to uninitialised byte(s)
> ==10080==    at 0x3BFBE0ECFB: send (in /usr/lib64/libpthread-2.18.so)
> ==10080==    by 0x3BFE206D26: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
> ==10080==    by 0x3BFE206E77: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
> ==10080==    by 0x3BFE2043BD: SCardTransmit (in /usr/lib64/libpcsclite.so.1.0.0)
> ==10080==    by 0x4059BF: cb_SCardTransmit (main.c:1304)
> ==10080==    by 0x406AF4: conn_event (main.c:1700)
> ==10080==    by 0x414012: g_main_context_dispatch (gmain.c:2715)
> ==10080==    by 0x414347: g_main_context_iterate.clone.5 (gmain.c:3290)
> ==10080==    by 0x414709: g_main_loop_run (gmain.c:3484)
> ==10080==    by 0x406FF8: main (main.c:2062)
> ==10080==  Address 0xffeffffb0 is on thread 1's stack

* pcsctun also has a bunch of possible memory leaks:

> ==10080== 6 bytes in 1 blocks are possibly lost in loss record 7 of 61
> ==10080==    at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C28: g_malloc (gmem.c:159)
> ==10080==    by 0x42145D: g_strdup (gstrfuncs.c:364)
> ==10080==    by 0x40CB83: g_io_channel_init (giochannel.c:202)
> ==10080==    by 0x43154F: g_io_channel_unix_new (giounix.c:617)
> ==10080==    by 0x406F90: main (main.c:2050)
> ==10080== 
> ==10080== 13 bytes in 1 blocks are possibly lost in loss record 9 of 61
> ==10080==    at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C28: g_malloc (gmem.c:159)
> ==10080==    by 0x43276A: g_convert_with_iconv (gconvert.c:734)
> ==10080==    by 0x432A3B: g_convert (gconvert.c:885)
> ==10080==    by 0x4330E8: g_locale_to_utf8 (gconvert.c:1216)
> ==10080==    by 0x418477: parse_arg.clone.8 (goption.c:1136)
> ==10080==    by 0x418CFF: parse_short_option (goption.c:1401)
> ==10080==    by 0x419F0D: g_option_context_parse (goption.c:1902)
> ==10080==    by 0x406DD7: main (main.c:1993)
> ==10080== 
> ==10080== 18 bytes in 1 blocks are possibly lost in loss record 12 of 61
> ==10080==    at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C28: g_malloc (gmem.c:159)
> ==10080==    by 0x42145D: g_strdup (gstrfuncs.c:364)
> ==10080==    by 0x412DB9: g_source_set_name (gmain.c:1712)
> ==10080==    by 0x430DE7: g_io_unix_create_watch (giounix.c:352)
> ==10080==    by 0x40CC93: g_io_add_watch_full (giochannel.c:663)
> ==10080==    by 0x406FA8: main (main.c:2053)
> ==10080== 
> ==10080== 32 bytes in 1 blocks are possibly lost in loss record 19 of 61
> ==10080==    at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C28: g_malloc (gmem.c:159)
> ==10080==    by 0x412AC2: g_source_set_callback (gmain.c:1507)
> ==10080==    by 0x40CCAB: g_io_add_watch_full (giochannel.c:667)
> ==10080==    by 0x406FA8: main (main.c:2053)
> ==10080== 
> ==10080== 40 bytes in 1 blocks are possibly lost in loss record 33 of 61
> ==10080==    at 0x4A081D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C80: g_malloc0 (gmem.c:189)
> ==10080==    by 0x417F09: get_change.clone.3 (goption.c:1084)
> ==10080==    by 0x418491: parse_arg.clone.8 (goption.c:1141)
> ==10080==    by 0x418CFF: parse_short_option (goption.c:1401)
> ==10080==    by 0x419F0D: g_option_context_parse (goption.c:1902)
> ==10080==    by 0x406DD7: main (main.c:1993)
> ==10080== 
> ==10080== 40 bytes in 1 blocks are possibly lost in loss record 34 of 61
> ==10080==    at 0x4A081D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C80: g_malloc0 (gmem.c:189)
> ==10080==    by 0x417F09: get_change.clone.3 (goption.c:1084)
> ==10080==    by 0x4185D3: parse_arg.clone.8 (goption.c:1250)
> ==10080==    by 0x418CFF: parse_short_option (goption.c:1401)
> ==10080==    by 0x419F0D: g_option_context_parse (goption.c:1902)
> ==10080==    by 0x406DD7: main (main.c:1993)
> ==10080== 
> ==10080== 40 bytes in 1 blocks are possibly lost in loss record 35 of 61
> ==10080==    at 0x4A081D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C80: g_malloc0 (gmem.c:189)
> ==10080==    by 0x417F09: get_change.clone.3 (goption.c:1084)
> ==10080==    by 0x41860C: parse_arg.clone.8 (goption.c:1195)
> ==10080==    by 0x418CFF: parse_short_option (goption.c:1401)
> ==10080==    by 0x419F0D: g_option_context_parse (goption.c:1902)
> ==10080==    by 0x406DD7: main (main.c:1993)
> ==10080== 
> ==10080== 120 bytes in 1 blocks are possibly lost in loss record 40 of 61
> ==10080==    at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C28: g_malloc (gmem.c:159)
> ==10080==    by 0x431544: g_io_channel_unix_new (giounix.c:614)
> ==10080==    by 0x406F90: main (main.c:2050)
> ==10080== 
> ==10080== 120 bytes in 1 blocks are possibly lost in loss record 41 of 61
> ==10080==    at 0x4A081D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C80: g_malloc0 (gmem.c:189)
> ==10080==    by 0x4124CE: g_source_new (gmain.c:830)
> ==10080==    by 0x430DD7: g_io_unix_create_watch (giounix.c:351)
> ==10080==    by 0x40CC93: g_io_add_watch_full (giochannel.c:663)
> ==10080==    by 0x406FA8: main (main.c:2053)
> ==10080== 
> ==10080== 128 bytes in 1 blocks are possibly lost in loss record 42 of 61
> ==10080==    at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A0832B: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415CC6: g_realloc (gmem.c:224)
> ==10080==    by 0x40949A: g_ptr_array_maybe_expand (garray.c:1093)
> ==10080==    by 0x40A532: g_ptr_array_add (garray.c:1350)
> ==10080==    by 0x413D9F: g_main_context_check (gmain.c:3189)
> ==10080==    by 0x41428B: g_main_context_iterate.clone.5 (gmain.c:3287)
> ==10080==    by 0x414709: g_main_loop_run (gmain.c:3484)
> ==10080==    by 0x406FF8: main (main.c:2062)
> ==10080== 
> ==10080== 240 bytes in 1 blocks are possibly lost in loss record 45 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x420254: g_slice_alloc (gslice.c:719)
> ==10080==    by 0x420345: g_slice_alloc0 (gslice.c:1029)
> ==10080==    by 0x4124DB: g_source_new (gmain.c:831)
> ==10080==    by 0x430DD7: g_io_unix_create_watch (giounix.c:351)
> ==10080==    by 0x40CC93: g_io_add_watch_full (giochannel.c:663)
> ==10080==    by 0x406FA8: main (main.c:2053)
> ==10080== 
> ==10080== 406 (88 direct, 318 indirect) bytes in 1 blocks are definitely lost in loss record 47 of 61
> ==10080==    at 0x4A081D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x415C80: g_malloc0 (gmem.c:189)
> ==10080==    by 0x418E1A: g_option_context_new (goption.c:315)
> ==10080==    by 0x406DB3: main (main.c:1991)
> ==10080== 
> ==10080== 496 bytes in 1 blocks are possibly lost in loss record 49 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x420254: g_slice_alloc (gslice.c:719)
> ==10080==    by 0x4109ED: g_list_prepend (glist.c:275)
> ==10080==    by 0x417F67: add_pending_null.clone.4 (goption.c:1106)
> ==10080==    by 0x418CCE: parse_short_option (goption.c:1384)
> ==10080==    by 0x419F0D: g_option_context_parse (goption.c:1902)
> ==10080==    by 0x406DD7: main (main.c:1993)
> ==10080== 
> ==10080== 720 bytes in 3 blocks are possibly lost in loss record 52 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x42027B: g_slice_alloc (gslice.c:724)
> ==10080==    by 0x420345: g_slice_alloc0 (gslice.c:1029)
> ==10080==    by 0x4124DB: g_source_new (gmain.c:831)
> ==10080==    by 0x430DD7: g_io_unix_create_watch (giounix.c:351)
> ==10080==    by 0x40CC93: g_io_add_watch_full (giochannel.c:663)
> ==10080==    by 0x406FA8: main (main.c:2053)
> ==10080== 
> ==10080== 1,008 bytes in 1 blocks are possibly lost in loss record 53 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x420254: g_slice_alloc (gslice.c:719)
> ==10080==    by 0x40BDE2: g_hash_table_new_full (ghash.c:689)
> ==10080==    by 0x4049B5: conn_avail (main.c:1941)
> ==10080==    by 0x414012: g_main_context_dispatch (gmain.c:2715)
> ==10080==    by 0x414347: g_main_context_iterate.clone.5 (gmain.c:3290)
> ==10080==    by 0x414709: g_main_loop_run (gmain.c:3484)
> ==10080==    by 0x406FF8: main (main.c:2062)
> ==10080== 
> ==10080== 1,008 bytes in 1 blocks are possibly lost in loss record 54 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x42027B: g_slice_alloc (gslice.c:724)
> ==10080==    by 0x40BDE2: g_hash_table_new_full (ghash.c:689)
> ==10080==    by 0x4049B5: conn_avail (main.c:1941)
> ==10080==    by 0x414012: g_main_context_dispatch (gmain.c:2715)
> ==10080==    by 0x414347: g_main_context_iterate.clone.5 (gmain.c:3290)
> ==10080==    by 0x414709: g_main_loop_run (gmain.c:3484)
> ==10080==    by 0x406FF8: main (main.c:2062)
> ==10080== 
> ==10080== 1,008 bytes in 1 blocks are possibly lost in loss record 55 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x420254: g_slice_alloc (gslice.c:719)
> ==10080==    by 0x420345: g_slice_alloc0 (gslice.c:1029)
> ==10080==    by 0x4309C3: g_system_thread_new (gthread-posix.c:1102)
> ==10080==    by 0x4285B0: g_thread_new_internal (gthread.c:882)
> ==10080==    by 0x408B40: g_thread_create_full (gthread-deprecated.c:372)
> ==10080==    by 0x408B86: g_thread_create (gthread-deprecated.c:342)
> ==10080==    by 0x405076: cb_SCardGetStatusChange (main.c:1107)
> ==10080==    by 0x406AF4: conn_event (main.c:1700)
> ==10080==    by 0x414012: g_main_context_dispatch (gmain.c:2715)
> ==10080== 
> ==10080== 1,008 bytes in 1 blocks are possibly lost in loss record 56 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x42027B: g_slice_alloc (gslice.c:724)
> ==10080==    by 0x420345: g_slice_alloc0 (gslice.c:1029)
> ==10080==    by 0x4309C3: g_system_thread_new (gthread-posix.c:1102)
> ==10080==    by 0x4285B0: g_thread_new_internal (gthread.c:882)
> ==10080==    by 0x408B40: g_thread_create_full (gthread-deprecated.c:372)
> ==10080==    by 0x408B86: g_thread_create (gthread-deprecated.c:342)
> ==10080==    by 0x405076: cb_SCardGetStatusChange (main.c:1107)
> ==10080==    by 0x406AF4: conn_event (main.c:1700)
> ==10080==    by 0x414012: g_main_context_dispatch (gmain.c:2715)
> ==10080== 
> ==10080== 1,440 bytes in 6 blocks are possibly lost in loss record 57 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x42027B: g_slice_alloc (gslice.c:724)
> ==10080==    by 0x420D5D: g_slist_prepend (gslist.c:265)
> ==10080==    by 0x40896C: g_deprecated_thread_proxy (gthread-deprecated.c:296)
> ==10080==    by 0x3BFBE07EE4: start_thread (in /usr/lib64/libpthread-2.18.so)
> ==10080==    by 0x3BFB6F4B8C: clone (in /usr/lib64/libc-2.18.so)
> ==10080== 
> ==10080== 1,488 bytes in 3 blocks are possibly lost in loss record 58 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x42027B: g_slice_alloc (gslice.c:724)
> ==10080==    by 0x4109ED: g_list_prepend (glist.c:275)
> ==10080==    by 0x417F67: add_pending_null.clone.4 (goption.c:1106)
> ==10080==    by 0x418CCE: parse_short_option (goption.c:1384)
> ==10080==    by 0x419F0D: g_option_context_parse (goption.c:1902)
> ==10080==    by 0x406DD7: main (main.c:1993)
> ==10080== 
> ==10080== 1,488 bytes in 3 blocks are possibly lost in loss record 59 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x42027B: g_slice_alloc (gslice.c:724)
> ==10080==    by 0x420345: g_slice_alloc0 (gslice.c:1029)
> ==10080==    by 0x428769: g_thread_self (gthread.c:1000)
> ==10080==    by 0x4146AC: g_main_loop_run (gmain.c:3438)
> ==10080==    by 0x406FF8: main (main.c:2062)
> ==10080== 
> ==10080== 3,472 bytes in 7 blocks are possibly lost in loss record 61 of 61
> ==10080==    at 0x4A0858C: memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x4A08651: posix_memalign (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==10080==    by 0x41F05B: slab_allocator_alloc_chunk (gslice.c:1381)
> ==10080==    by 0x42027B: g_slice_alloc (gslice.c:724)
> ==10080==    by 0x420345: g_slice_alloc0 (gslice.c:1029)
> ==10080==    by 0x411855: find_source_list_for_priority.clone.3 (gmain.c:946)
> ==10080==    by 0x411ED7: source_add_to_context (gmain.c:970)
> ==10080==    by 0x412058: g_source_attach_unlocked (gmain.c:1041)
> ==10080==    by 0x41258D: g_source_attach (gmain.c:1085)
> ==10080==    by 0x415114: g_idle_add_full (gmain.c:4869)
> ==10080==    by 0x405DCF: cb_SCardGetStatusChange_worker (main.c:1044)
> ==10080==    by 0x4282AE: g_thread_proxy (gthread.c:797)
Comment 1 Peter Åstrand cendio 2015-10-28 14:21:55 CET
With 4.5.0rc1, there are less warnings. With:

$ pkcs11-tool --test --module /usr/lib64/opensc-pkcs11.so 


I get:
2015-10-28T14:21:05: pcsctun[E]: ==1785== Conditional jump or move depends on uninitialised value(s)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    at 0x3079C0388E: SCardListReaders (in /usr/lib64/libpcsclite.so.1.0.0)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x4057CE: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x406AF4: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414012: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414347: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414709: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x406FF8: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x307981ED5C: (below main) (libc-start.c:226)
2015-10-28T14:21:05: pcsctun[E]: ==1785== 
2015-10-28T14:21:05: pcsctun[E]: ==1785== Syscall param write(buf) points to uninitialised byte(s)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    at 0x307A40E77D: ??? (syscall-template.S:82)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x3079C082F8: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x3079C084CB: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x3079C063AE: SCardControl (in /usr/lib64/libpcsclite.so.1.0.0)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x405C20: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x406AF4: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414012: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414347: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414709: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x406FF8: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x307981ED5C: (below main) (libc-start.c:226)
2015-10-28T14:21:05: pcsctun[E]: ==1785==  Address 0x7fefedec0 is on thread 1's stack
2015-10-28T14:21:05: pcsctun[E]: ==1785== 
2015-10-28T14:21:05: pcsctun[E]: ==1785== Syscall param write(buf) points to uninitialised byte(s)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    at 0x307A40E77D: ??? (syscall-template.S:82)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x3079C082F8: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x3079C084CB: ??? (in /usr/lib64/libpcsclite.so.1.0.0)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x3079C05948: SCardTransmit (in /usr/lib64/libpcsclite.so.1.0.0)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x4059BF: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x406AF4: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414012: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414347: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x414709: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x406FF8: ??? (in /opt/thinlinc/lib/tlclient/pcsctun)
2015-10-28T14:21:05: pcsctun[E]: ==1785==    by 0x307981ED5C: (below main) (libc-start.c:226)
2015-10-28T14:21:05: pcsctun[E]: ==1785==  Address 0x7fefee7e0 is on thread 1's stack
2015-10-28T14:21:05: pcsctun[E]: ==1785==

Note You need to log in before you can comment on or make changes to this bug.