有料でも結構です。専門知識がある方と相談したいのです。
下記の相談をしたいと思っております。この人力検索の質問の主は上記ですが、もし下記の質問にご回答頂けるならば、是非よろしくお願いいたします。
解決した場合には、1000P以上差し上げようと思っています。一ヶ月以上色々試しましたが解決せず本当に悩んでいます。よろしくお願いします。
---------------------------------------------------------------------------------------------------------------------------
玄箱PRO/Debian/lenny/カーネル2.6.25.4です。
pcscd:1.4.102
ccid:1.3.8
上記2つはapt-getで入れました。
外部カードリーダーを使用するプログラムを実行すると、システムログに
pcscd: winscard_svc.c:756:MSGCheckHandleAssociation() Client failed to authenticate
と表示されて使うことができません。
認証されていないとのエラーですが、原因として何があるでしょうか。
---------------------------------------------------------------------------------------------------------------------------
以下の2点は試されました?
1) pcsc_scan コマンド
pcsc_scan コマンドを使うと、reader のデバイスが正しく認識できているかどうかが確認できます。
2) pcscd をデバッグモードで起動
pcscd に --debug オプションを付けて起動すると、より詳細な情報が得られます。
あと本家のMLは覗いてみました?過去ログの検索も出来るようです。
とりあえずエラーの出ているpcscdを最新版にしてみてはいかがでしょうか?
aptでソースをとってくるとpcsc-liteというソースができるのでこれが実際のソフト名のようです。
以下から最新版をとってこれます。
http://pcsclite.alioth.debian.org/
その他気になる部分はちょっと長いのでブログの方を見てください。
トラバしておいたので。
pcsc_scanではカード名、リーダー名も表示されますので、正しく認識できていると思います。
デバッグモードで起動し、外部カードリーダーを使うソフトを実行すると少しエラーが詳しくなりました。
pcscd: prothandler.c:128:PHSetProtocol() Attempting PTS to T=1
pcscd: ifdhandler.c:488:IFDHSetProtocolParameters() lun: 0, protocol T=1
pcscd: ifdhandler.c:1451:extra_egt() Extra EGT patch applied
pcscd: winscard.c:428:SCardConnect() Active Protocol: T=1
pcscd: winscard.c:438:SCardConnect() hCard Identity: 1091e
pcscd: winscard_msg_srv.c:287:SHMProcessEventsContext() correctly processed client: 8
pcscd: winscard_svc.c:756:MSGCheckHandleAssociation() Client failed to authenticate
pcscd: winscard_svc.c:161:ContextThread() MSGFunctionDemarshall failed: -1
pcscd: winscard.c:250:SCardReleaseContext() Releasing Context: 17012829
pcscd: winscard.c:845:SCardDisconnect() Active Contexts: 1
と表示されます。
何か上記エラーからお分かりになりませんでしょうか。