Return empty ATR vector in getATR API

The ATR is not supported by SPI in the secure element. The HAL should
return empty vector instead of returning the ATP.

Bug: 131298247
Test: AccessRule loaded successfully
      atest VtsHalSecureElementV1_0TargetTest

Merged-In: Id7cb9c1aa0b3a4fed96d7ecaa8933b464942137d
Change-Id: Id7cb9c1aa0b3a4fed96d7ecaa8933b464942137d
diff --git a/1.0/SecureElement.cpp b/1.0/SecureElement.cpp
index 94546ef..7c1d0f5 100644
--- a/1.0/SecureElement.cpp
+++ b/1.0/SecureElement.cpp
@@ -71,12 +71,14 @@
 Return<void> SecureElement::getAtr(getAtr_cb _hidl_cb) {
   ALOGD("%s: Enter", __func__);
   hidl_vec<uint8_t> response;
-  uint8_t* ATP;
-  ATP = StEse_getAtr();
-  uint8_t len = *ATP;
-  if (len) {
-    response.resize(len);
-    memcpy(&response[0], ATP, len);
+  uint8_t* ATR;
+  ATR = StEse_getAtr();
+  if (ATR != nullptr) {
+    uint8_t len = *ATR;
+    if (len) {
+      response.resize(len);
+      memcpy(&response[0], ATR, len);
+    }
   }
   _hidl_cb(response);
   return Void();
diff --git a/1.1/SecureElement.cpp b/1.1/SecureElement.cpp
index 8a87808..434d403 100644
--- a/1.1/SecureElement.cpp
+++ b/1.1/SecureElement.cpp
@@ -103,12 +103,14 @@
 Return<void> SecureElement::getAtr(getAtr_cb _hidl_cb) {
   ALOGD("%s: Enter", __func__);
   hidl_vec<uint8_t> response;
-  uint8_t* ATP;
-  ATP = StEse_getAtr();
-  uint8_t len = *ATP;
-  if (len) {
-    response.resize(len);
-    memcpy(&response[0], ATP, len);
+  uint8_t* ATR;
+  ATR = StEse_getAtr();
+  if (ATR != nullptr) {
+    uint8_t len = *ATR;
+    if (len) {
+      response.resize(len);
+      memcpy(&response[0], ATR, len);
+    }
   }
   _hidl_cb(response);
   return Void();
diff --git a/ese-spi-driver/StEseApi.cc b/ese-spi-driver/StEseApi.cc
index 60a49cf..c31549c 100644
--- a/ese-spi-driver/StEseApi.cc
+++ b/ese-spi-driver/StEseApi.cc
@@ -31,7 +31,7 @@
 /* ESE Context structure */
 ese_Context_t ese_ctxt;
 
-const char* halVersion = "ST54-SE HAL1.0 Version 1.0.18";
+const char* halVersion = "ST54-SE HAL1.0 Version 1.0.19";
 
 pthread_mutex_t mutex;
 
@@ -227,12 +227,13 @@
  *
  * Description      This function get the last ATR received.
  *
- * Returns          pointer to the ATP array.
+ * Returns          pointer to the ATR array.
  *
  ******************************************************************************/
 uint8_t* StEse_getAtr(void) {
   STLOG_HAL_D("%s : Enter", __func__);
-  return Atp_getAtp();
+  // The ATR is not supported by SPI in the secure element
+  return nullptr;
 }
 
 /******************************************************************************
diff --git a/ese-spi-driver/StEseApi.h b/ese-spi-driver/StEseApi.h
index a6aa1af..452278d 100644
--- a/ese-spi-driver/StEseApi.h
+++ b/ese-spi-driver/StEseApi.h
@@ -111,7 +111,7 @@
  *
  * @param    void
  *
- * @return   pointer to the ATP array.
+ * @return   pointer to the ATR array.
  *
  */
 uint8_t* StEse_getAtr(void);