diff options
Diffstat (limited to 'src/tss2-mu/tpms-types.c')
-rw-r--r-- | src/tss2-mu/tpms-types.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/tss2-mu/tpms-types.c b/src/tss2-mu/tpms-types.c index 17d920f7..b913595f 100644 --- a/src/tss2-mu/tpms-types.c +++ b/src/tss2-mu/tpms-types.c @@ -274,6 +274,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ ret = fn1(buffer, buffer_size, &local_offset, dest ? &dest->m1 : &tmp_dest.m1); \ if (ret != TSS2_RC_SUCCESS) \ return ret; \ @@ -337,6 +340,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ ret = fn1(buffer, buffer_size, &local_offset, dest ? &dest->m1 : NULL); \ if (ret != TSS2_RC_SUCCESS) \ return ret; \ @@ -404,6 +410,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ ret = fn1(buffer, buffer_size, &local_offset, dest ? &dest->m1 : NULL); \ if (ret != TSS2_RC_SUCCESS) \ return ret; \ @@ -475,6 +484,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ LOG_DEBUG(\ "Unmarshalling " #type " from 0x%" PRIxPTR " to buffer 0x%" PRIxPTR \ " at index 0x%zx", (uintptr_t)dest, (uintptr_t)buffer, offset?*offset:0xffff); \ @@ -563,6 +575,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ ret = fn1(buffer, buffer_size, &local_offset, dest ? &dest->m1 : NULL); \ if (ret != TSS2_RC_SUCCESS) \ return ret; \ @@ -659,6 +674,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ ret = fn1(buffer, buffer_size, &local_offset, dest ? &dest->m1 : NULL); \ if (ret != TSS2_RC_SUCCESS) \ return ret; \ @@ -763,6 +781,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ ret = fn1(buffer, buffer_size, &local_offset, dest ? &dest->m1 : NULL); \ if (ret != TSS2_RC_SUCCESS) \ return ret; \ @@ -885,6 +906,9 @@ TSS2_RC Tss2_MU_##type##_Unmarshal(uint8_t const buffer[], size_t buffer_size, \ return TSS2_MU_RC_BAD_REFERENCE; \ } \ \ + if (dest) \ + memset(dest, 0, sizeof(*dest)); \ +\ ret = fn1(buffer, buffer_size, &local_offset, dest ? &dest->m1 : NULL); \ if (ret != TSS2_RC_SUCCESS) \ return ret; \ |