card-piv.c tries to read the first 8 bytes of an object to get object size so it can allocate a buffer. It then reads the whole object. apdu.c has changed over the years, and apdu.c will keep reading as long as the card returns status of 61 XX thus apdu.c will read the whole object while discarding the extra data and returning to the caller only the first part of the data. This in effect causes a double read of objects. This patch sets SC_APDU_FLAGS_NO_GET_RESP to tell apdu to stop doing the extra get-response commands thus avoiding most of the extra overhead. This in not an optimal patch as it only works with T=1 cards/readers but the patch is confined to just card-piv.c. A better patch is in the works. Fixes #462 |
||
---|---|---|
MacOSX | ||
doc | ||
etc | ||
m4 | ||
packaging/debian.templates | ||
solaris | ||
src | ||
win32 | ||
.gitignore | ||
.travis.yml | ||
CONTRIBUTING.md | ||
COPYING | ||
Makefile.am | ||
Makefile.mak | ||
NEWS | ||
README | ||
README.md | ||
bootstrap | ||
bootstrap.ci | ||
configure.ac | ||
version.m4 |
README.md
OpenSC documentation wiki is available online at https://github.com/OpenSC/OpenSC/wiki
Please take a look at the documentation before trying to use OpenSC.