小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


YosemiteのICカード読み込みでreturns SCARD_E_INSUFFICIENT_BUFFER

はじめに

Yosemite環境で住基カードを読み込ませた際に、以下のエラーになります。

SCardStatus NG
returns SCARD_E_INSUFFICIENT_BUFFERU(0x80100008)

Yosemiteのバグ

以下のページによるとYosemiteのバグのようです。

SCardStatus() does not correctly report the reader name length. The terminating NUL character of the reader name is not counted. So a second call to SCardStatus() using the size returned by the first SCardStatus() call will fail with 0x80100008 (that is SCARD_E_INSUFFICIENT_BUFFER).

It is a really stupid bug and very easy to fix for Apple.
Ludovic Rousseau blog: OS X Yosemite bug: SCardStatus returns SCARD_E_INSUFFICIENT_BUFFER はてなブックマーク - Ludovic Rousseau blog: OS X Yosemite bug: SCardStatus returns SCARD_E_INSUFFICIENT_BUFFER