<def-group>
  <definition class="compliance" id="auditd_data_retention_flush" version="1">
    {{{ oval_metadata("The setting for flush in /etc/audit/auditd.conf", rule_title=rule_title) }}}

    <criteria>
        <criterion comment="flush setting in auditd.conf" test_ref="test_auditd_data_retention_flush" />
    </criteria>

  </definition>

  <ind:textfilecontent54_test check="all" 
  comment="test the value of flush parameter in /etc/audit/auditd.conf" 
  id="test_auditd_data_retention_flush" version="1">
    <ind:object object_ref="object_auditd_data_retention_flush" />
    <ind:state state_ref="state_auditd_data_retention_flush" />
  </ind:textfilecontent54_test>

  <ind:textfilecontent54_object id="object_auditd_data_retention_flush" version="1">
    <ind:filepath>/etc/audit/auditd.conf</ind:filepath>
    <!-- Allow only space (exactly) as delimiter: https://fedorahosted.org/audit/browser/trunk/src/auditd-config.c#L426 -->
    <!-- Require at least one space before and after the equal sign -->
    <ind:pattern operation="pattern match">^[ ]*flush[ ]+=[ ]+(\S+)[ ]*$</ind:pattern>
    <ind:instance datatype="int">1</ind:instance>
  </ind:textfilecontent54_object>

  <ind:textfilecontent54_state id="state_auditd_data_retention_flush" version="1">
    <ind:subexpression operation="case insensitive equals" var_ref="var_auditd_flush" />
  </ind:textfilecontent54_state>

  <external_variable comment="audit flush setting" datatype="string" id="var_auditd_flush" version="1" />


</def-group>
