From c1fb5b130eb7e33a70a6e838868e5d37d211c948 Mon Sep 17 00:00:00 2001 From: carblue Date: Sun, 6 Oct 2019 16:00:58 +0200 Subject: [PATCH] opensc-tool print_file: fix addressing records --- src/tools/opensc-tool.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/tools/opensc-tool.c b/src/tools/opensc-tool.c index c850a21d..f829332f 100644 --- a/src/tools/opensc-tool.c +++ b/src/tools/opensc-tool.c @@ -438,13 +438,13 @@ static int print_file(sc_card_t *in_card, const sc_file_t *file, free(buf); } else { unsigned char buf[256]; - size_t i; + size_t rec_nr; - for (i=0; i < file->record_count; i++) { - printf("Record %"SC_FORMAT_LEN_SIZE_T"u\n", i); + for (rec_nr = 1; rec_nr <= file->record_count; rec_nr++) { + printf("Record %"SC_FORMAT_LEN_SIZE_T"u\n", rec_nr); r = sc_lock(card); if (r == SC_SUCCESS) - r = sc_read_record(in_card, i, buf, 256, 0); + r = sc_read_record(in_card, rec_nr, buf, sizeof(buf), SC_RECORD_BY_REC_NR); sc_unlock(card); if (r > 0) util_hex_dump_asc(stdout, buf, r, 0);