private_tcg_pts_attr_simple_comp_evid_t *this)
{
bio_writer_t *writer;
- u_int8_t flags = 0, qualifier = 0;
+ u_int8_t qualifier = 0;
writer = bio_writer_create(PTS_SIMPLE_COMP_EVID_SIZE);
- /* Determine the flags to set*/
- if (this->pcr_info_included)
- {
- flags += 128;
- }
- if (this->flags == PTS_SIMPLE_COMP_EVID_FLAG_NO_VER)
- {
- flags += 32;
- }
- else if (this->flags == PTS_SIMPLE_COMP_EVID_FLAG_VER_FAIL)
- {
- flags += 64;
- }
- else if (this->flags == PTS_SIMPLE_COMP_EVID_FLAG_VER_PASS)
- {
- flags += 96;
- }
-
- writer->write_uint8(writer, flags);
+ writer->write_uint8(writer, this->flags);
writer->write_uint24 (writer, this->depth);
writer->write_uint24 (writer, this->comp_vendor_id);
reader = bio_reader_create(this->value);
reader->read_uint8(reader, &flags);
- /* Determine the flags to set*/
- if ((flags >> 7) & 1)
- {
- this->pcr_info_included = TRUE;
- }
- if (!((flags >> 6) & 1) && !((flags >> 5) & 1))
- {
- this->flags = PTS_SIMPLE_COMP_EVID_FLAG_NO_VALID;
- }
- else if (!((flags >> 6) & 1) && ((flags >> 5) & 1))
- {
- this->flags = PTS_SIMPLE_COMP_EVID_FLAG_NO_VER;
- }
- else if (((flags >> 6) & 1) && !((flags >> 5) & 1))
- {
- this->flags = PTS_SIMPLE_COMP_EVID_FLAG_VER_FAIL;
- }
- else if (((flags >> 6) & 1) && ((flags >> 5) & 1))
- {
- this->flags = PTS_SIMPLE_COMP_EVID_FLAG_VER_PASS;
- }
+ this->flags = flags;
reader->read_uint24(reader, &this->depth);
reader->read_uint24(reader, &this->comp_vendor_id);
private_tcg_pts_attr_simple_evid_final_t *this)
{
bio_writer_t *writer;
- u_int8_t flags = 0;
writer = bio_writer_create(PTS_SIMPLE_EVID_FINAL_SIZE);
-
- /* Determine the flags to set*/
- if (this->flags == PTS_SIMPLE_EVID_FINAL_FLAG_TPM_QUOTE_INFO)
- {
- flags += 64;
- }
- else if (this->flags == PTS_SIMPLE_EVID_FINAL_FLAG_TPM_QUOTE_INFO2)
- {
- flags += 128;
- }
- else if (this->flags == PTS_SIMPLE_EVID_FINAL_FLAG_TPM_QUOTE_INFO2_CAP_VER)
- {
- flags += 192;
- }
- if (this->evid_sign_included)
- {
- flags += 32;
- }
-
- writer->write_uint8 (writer, flags);
+ writer->write_uint8 (writer, this->flags);
writer->write_uint8 (writer, PTS_SIMPLE_EVID_FINAL_RESERVED);
/* Optional fields */
reader = bio_reader_create(this->value);
reader->read_uint8(reader, &flags);
+ this->flags = flags;
reader->read_uint8(reader, &reserved);
- /* Determine the flags to set*/
- if ((flags >> 5) & 1)
- {
- this->flags |= PTS_SIMPLE_EVID_FINAL_FLAG_EVID;
- }
-
- if (!((flags >> 6) & PTS_SIMPLE_EVID_FINAL_FLAG_NO))
- {
- this->flags = PTS_SIMPLE_EVID_FINAL_FLAG_NO;
- }
- else if (!((flags >> 7) & 1) && ((flags >> 6) & 1))
- {
- this->flags = PTS_SIMPLE_EVID_FINAL_FLAG_TPM_QUOTE_INFO;
- }
- else if (((flags >> 7) & 1) && !((flags >> 6) & 1))
- {
- this->flags = PTS_SIMPLE_EVID_FINAL_FLAG_TPM_QUOTE_INFO2;
- }
- else if (((flags >> 7) & 1) && ((flags >> 6) & 1))
- {
- this->flags = PTS_SIMPLE_EVID_FINAL_FLAG_TPM_QUOTE_INFO2_CAP_VER;
- }
-
/* Optional Composite Hash Algorithm and TPM PCR Composite field is included */
if ((flags >> 6) & PTS_SIMPLE_EVID_FINAL_FLAG_NO)
{