Project

General

Profile

Patchs for long CAPMTs

Added by Enigma131 enig 5 months ago

Hi,
I have discover errors for long CAPMTs (> 256 Bytes) when decrypting via PCMCIA.

First one concerns en50221_send_capmt in files en50221_apps.c and en50221.h :

(en50221_slot_t *slot, const uint8_t *capmt, uint8_t capmtlen);
must be modified to :
(en50221_slot_t *slot, const uint8_t *capmt, uint16_t capmtlen);

Second one concerns en50221_app_pdu_send in file en50221.c :
} else if (datalen < 0x100) {
buf7 = 0x82;
must be modified to :
} else if (datalen < 0x100) {
buf7 = 0x81;

and
} else if (datalen < 0x10000) {
buf7 = 0x83;
must be modified to :
} else if (datalen < 0x10000) {
buf7 = 0x82;


Replies (2)

RE: Patchs for long CAPMTs - Added by saen acro 5 months ago

Enigma131 enig wrote:

Hi,
I have discover errors for long CAPMTs (> 256 Bytes) when decrypting via PCMCIA.

First one concerns en50221_send_capmt in files en50221_apps.c and en50221.h :

 (en50221_slot_t *slot, const uint8_t *capmt, uint8_t capmtlen);

must be modified to :

 (en50221_slot_t *slot, const uint8_t *capmt, uint16_t capmtlen);

Second one concerns en50221_app_pdu_send in file en50221.c :

 } else if (datalen < 0x100) {
     buf[7] = 0x82;

must be modified to :

 } else if (datalen < 0x100) {
     buf[7] = 0x81;

and

   } else if (datalen < 0x10000) {
     buf[7] = 0x83;

must be modified to :

   } else if (datalen < 0x10000) {
     buf[7] = 0x82;

Post patch in Issues area or in github repo

    (1-2/2)