diff
107         uint32_t payload_size;
108 +       if (!safe_subtract(&payload_size, smh->submessageLength, VALUE_BEING_SUBTRACTED))
109 +           return HANDLE_ERROR; // Or appropriate error handling
