@@ -999,8 +999,8 @@ static int seos_pacs_adf_select(char *oid, int oid_len, uint8_t *get_data, int g
999999 snprintf (selectedOID , sizeof (selectedOID ), "%s" , oid );
10001000
10011001 uint16_t selectedOIDLen = strlen (selectedOID );
1002- char selectedOIDLenHex [5 ];
1003- snprintf (selectedOIDLenHex , sizeof (selectedOIDLenHex ), "%02X" , (selectedOIDLen ) / 2 );
1002+ char selectedOIDLenHex [3 ];
1003+ snprintf (selectedOIDLenHex , sizeof (selectedOIDLenHex ), "%02X" , (selectedOIDLen >> 1 ) & 0xFF );
10041004
10051005 char selectedADF [strlen (ADFprefix ) + strlen (selectedOIDLenHex ) + selectedOIDLen + 1 ];
10061006 snprintf (selectedADF , sizeof (selectedADF ), "%s%s%s" , ADFprefix , selectedOIDLenHex , selectedOID );
@@ -1113,8 +1113,8 @@ static int seos_adf_select(char *oid, int oid_len, int key_index) {
11131113 char selectedOID [100 ];
11141114 snprintf (selectedOID , sizeof (selectedOID ), "%s" , oid );
11151115 uint16_t selectedOIDLen = strlen (selectedOID );
1116- char selectedOIDLenHex [5 ];
1117- snprintf (selectedOIDLenHex , sizeof (selectedOIDLenHex ), "%02X" , (selectedOIDLen ) / 2 );
1116+ char selectedOIDLenHex [3 ];
1117+ snprintf (selectedOIDLenHex , sizeof (selectedOIDLenHex ), "%02X" , (selectedOIDLen >> 1 ) & 0xFF );
11181118
11191119 char selectedADF [strlen (ADFprefix ) + strlen (selectedOIDLenHex ) + selectedOIDLen + 1 ];
11201120 snprintf (selectedADF , sizeof (selectedADF ), "%s%s%s" , ADFprefix , selectedOIDLenHex , selectedOID );
0 commit comments