Skip to content
This repository was archived by the owner on Mar 27, 2026. It is now read-only.
This repository was archived by the owner on Mar 27, 2026. It is now read-only.

emvtool info "list index out of range" #16

@lukegb

Description

@lukegb

Running against HEAD, I get a "IndexError: list index out of range" error:

[lukegb@porcorosso:~/Projects/nixpkgs]$ ./result/bin/emvtool info

1PAY.SYS.DDF01 (Index of apps for chip payments)
┌FCI Proprietary Data──────────┬───────┐
│ Tag  │ Name                  │ Value │
├──────┼───────────────────────┼───────┤
│ [88] │ Short File Identifier │ [01]  │
└──────┴───────────────────────┴───────┘
┌File: 1,1────────────────────┬─────────────────────────────────────────────────────────────────────────────────┐
│ Tag  │ Name                 │ Value                                                                           │
├──────┼──────────────────────┼─────────────────────────────────────────────────────────────────────────────────┤
│ [61] │ Application Template │ { (4F) Application Dedicated File (ADF) Name: [A0 00 00 00 03 10 10],  (50)     │
│      │                      │ Application Label: "Visa Debit",  (87) Application Priority Indicator: 3,  (73) │
│      │                      │ Directory Discretionary Template: { ([9F 0A]) Application Selection Registered  │
│      │                      │ Proprietary Data: <ASRPD: Electronic Product Identification: Debit>}}           │
└──────┴──────────────────────┴─────────────────────────────────────────────────────────────────────────────────┘
┌File: 1,2────────────────────┬────────────────────────────────────────────────────────────────────────┐
│ Tag  │ Name                 │ Value                                                                  │
├──────┼──────────────────────┼────────────────────────────────────────────────────────────────────────┤
│ [61] │ Application Template │ { (4F) Application Dedicated File (ADF) Name: [A0 00 00 00 26],  (50)  │
│      │                      │ Application Label: "NBS ATM",  (87) Application Priority Indicator: 1} │
└──────┴──────────────────────┴────────────────────────────────────────────────────────────────────────┘
┌File: 1,3────────────────────┬─────────────────────────────────────────────────────────────────────────────┐
│ Tag  │ Name                 │ Value                                                                       │
├──────┼──────────────────────┼─────────────────────────────────────────────────────────────────────────────┤
│ [61] │ Application Template │ { (4F) Application Dedicated File (ADF) Name: [A0 00 00 00 29 10 10],  (50) │
│      │                      │ Application Label: "LINK ATM",  (87) Application Priority Indicator: 2}     │
└──────┴──────────────────────┴─────────────────────────────────────────────────────────────────────────────┘
┌File: 1,4────────────────────┬─────────────────────────────────────────────────────────────────────────────┐
│ Tag  │ Name                 │ Value                                                                       │
├──────┼──────────────────────┼─────────────────────────────────────────────────────────────────────────────┤
│ [61] │ Application Template │ { (4F) Application Dedicated File (ADF) Name: [A0 00 00 00 03 80 02],  (50) │
│      │                      │ Application Label: "VISA Auth",  (87) Application Priority Indicator: 0}    │
└──────┴──────────────────────┴─────────────────────────────────────────────────────────────────────────────┘
Traceback (most recent call last):
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/bin/.emvtool-wrapped", line 9, in <module>
    sys.exit(run())
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/command/client.py", line 46, in run
    cli(obj={})
  File "/nix/store/xl89fr1rakb0n3ydhgd69bxig5hpb257-python3.8-click-7.1.2/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/nix/store/xl89fr1rakb0n3ydhgd69bxig5hpb257-python3.8-click-7.1.2/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/nix/store/xl89fr1rakb0n3ydhgd69bxig5hpb257-python3.8-click-7.1.2/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/nix/store/xl89fr1rakb0n3ydhgd69bxig5hpb257-python3.8-click-7.1.2/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/nix/store/xl89fr1rakb0n3ydhgd69bxig5hpb257-python3.8-click-7.1.2/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/nix/store/xl89fr1rakb0n3ydhgd69bxig5hpb257-python3.8-click-7.1.2/lib/python3.8/site-packages/click/decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/command/client.py", line 134, in info
    render_app(card, "1PAY.SYS.DDF01", redact)
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/command/client.py", line 116, in render_app
    rec = card.read_record(j, sfi=i).data
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/card.py", line 94, in read_record
    return self.tp.exchange(ReadCommand(record_number, sfi))
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/transmission.py", line 52, in exchange
    res = RAPDU.unmarshal(data + [sw1, sw2])
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/protocol/response.py", line 27, in unmarshal
    obj.data = TLV.unmarshal(data[:-2])
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/protocol/structures.py", line 56, in unmarshal
    length, length_len = read_length(data[i:])
  File "/nix/store/4l6sm2xpfh5mc5fp8ddz3znjwyp4p76i-python3.8-python-emv-1.0.10/lib/python3.8/site-packages/emv/protocol/data.py", line 70, in read_length
    length = (length << 8) + data[i + j]
IndexError: list index out of range

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions