PC/SC transmit timeout
Hfmcons
hfmcons@gmail.com
Pátek Leden 18 22:07:54 CET 2008
This function is not in Microsoft WinSCard API and is deprecated in
pcsc-lite API.
popis tohoto rozhraní zřejmě nebude zadarmo.
S pozdravem,
Miloš Dašek
----- Original Message -----
From: Miroslav Sinko
To: hw-list@list.hw.cz
Sent: Friday, January 18, 2008 9:01 PM
Subject: OT: PC/SC transmit timeout
Dobry den,
ospravednujem sa za programatorsku OT otazku. Dnes som v robote
presurfoval pol dna a nic rozumne som nenasiel.. Nemate niekto
programatorske skusenosti s rozhranim PC/SC (SmartCard)? Konkretne
bezim na WinXP. Na konci spomeniem aj Linux, ale pri Win musim ostat a
flame nechcem.
Problem je nasledovny: mame inteligentne medium od zahranicnej firmy, s
ktorou spolupracujeme. To medium sa sprava ako SmartCard standardu ISO
14443A, az na casove intervaly medzi prijatim a odoslanim dat. Niektore
prikazy spracovava aj 20s (kryptograficke algoritmy) a to vadi funkcii
SCardTransmit. Po cca 10s od vyslania dat vrati 0x0000001F, co nie je
ani platny PC/SC error (0x801xxxxx, prip. rozsirenia 0x802, atd), ale
zjavne standardny WinAPI error ERROR_GEN_FAILURE (A device attached to
the system is not functioning) - vcelku zodpoveda...
Otazky:
-je mozne nejako nastavit timeout pre funkciu SCardTransmit? Na nete
som nasiel funkciu SCardSetTimeout, ktoru vsak WinAPI nikdy nemalo
implementovanu a aj na inych platformach je deprecated.
-alebo je mozne vysielat a prijimat data z media inac ako "blocking"
funkciou SCardTransmit? Povedzme 1 funkcia na vyslatie a potom sa v
cykle dotazovat, ci medium nema data pre PC. MSDN, aj net som fakt dost
dokladne prehladal... Ak by bol sposob iny, ako s pouzitim PC/SC
rozhrania, tak by som sa mu asi nebranil, aj ked chceli sme to mat
takto standardne pre buducnost. Momentalne mame reader OmniKey CardMan
5321 (ani v jeho proprietarnych funkciach som nic pouzitelne nenasiel).
Tuto druhu otazku davam preto, lebo mame testovaci system s Linuxom od
tej spolupracujucej firmy (bez zdrojakov a ani nebudu, ale vraj nejdu
cez PC/SC) a tam to funguje. Viditelny rozdiel je ten, ze na mojom
systeme indikacna LED readra kratko zablika pri prilozeni media (na
prilozenie media cakam funkciou SCardGetStatusChange) a po vyslani dat
do media trvalo svieti. Po timeoute LED zhasne a vrati sa error. Na
linuxe LED blika uz pred prilozenim media a blika aj po vyslani dat,
kym caka na odpoved. Po cca 20s pride odpoved a az potom zhasne. Takze
oni pouzivaju iny system obsluhy readra na komunikaciu s mediom...
Ak by sa nasiel niekto, kto by vedel poradit, budem vdacny.
miro
------------- další část ---------------
HTML příloha byla odstraněna...
URL: http://list.hw.cz/pipermail/hw-list/attachments/20080118/19de9c0d/attachment-0002.htm
Další informace o konferenci Hw-list