lynxis lazus uploaded patch set #2 to this change.
The following approvals got outdated and were removed: Verified+1 by Jenkins Builder
Add osmo_apdu_segment_in2() to ensure correct parsing of GP GET DATA
osmo_apdu_segment_in() don't have the context of the previous APDU,
for nearly all calls this is fine, except for GP GET DATA, which can be a
case 2 or case 4 APDU.
GP GET DATA defines the Le field as 0x00 which is used to detect if this is a
case 2 or case 4.
But if the card responded to a case 2 GP GET DATA with Le = 0 with a SW 6cXX,
the previous GP GET DATA case 2 must set the Le field to XX, which got misinterpreted
by the osmo_apdu_segment_in() as a case 4 instead of a case 2 with Le != 0.
Introduce osmo_apdu_segment_in2() containing the previous APDU as context.
Related: SYS#8147
Change-Id: Ie238662e7e6a10dd4283ede0c8d8d73bc375c247
---
M TODO-RELEASE
M host/Makefile.am
M host/configure.ac
M host/include/osmocom/simtrace2/apdu_dispatch.h
M host/lib/apdu_dispatch.c
A host/tests/apdu_dispatch/Makefile.am
A host/tests/apdu_dispatch/apdu_dispatch_test.c
A host/tests/apdu_dispatch/apdu_dispatch_test.ok
A host/tests/testsuite.at
9 files changed, 156 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/simtrace2 refs/changes/85/43185/2
To view, visit change 43185. To unsubscribe, or for help writing mail filters, visit settings.