<def-group>
 <!-- THIS FILE IS GENERATED by create_package_installed.py.  DO NOT EDIT.  -->
  <definition class="compliance" id="package_av_installed"
  version="1">
    <metadata>
      <title>Antivirus Installed</title>
      <affected family="unix">
        <platform>CentOS 4</platform>
		<platform>CentOS 5</platform>
		<platform>Red Hat Enterprise Linux 4</platform>
		<platform>Red Hat Enterprise Linux 5</platform>
      </affected>
      <description>The system should have AntiVirus software installed.</description>
    </metadata>
    <criteria operator="OR">
		<criteria operator="AND">
		  <criterion comment="package uvscan is installed" test_ref="test_package_uvscan_installed" />
			<criteria operator="OR">
			  <criterion comment="check for uvscan in /etc/crontab" test_ref="test_uvscan_periodic_cron_checking_etc_crontab" />
			  <criterion comment="check for uvscan in /etc/cron.d/*" test_ref="test_uvscan_periodic_cron_checking_etc_cron_d" />
			  <criterion comment="check for uvscan in /etc/cron.hourly/*" test_ref="test_uvscan_periodic_cron_checking_etc_cron_hourly" />
			  <criterion comment="check for uvscan in /etc/cron.daily/*" test_ref="test_uvscan_periodic_cron_checking_etc_cron_daily" />
		   </criteria>
		</criteria>
		<criterion comment="package LinuxShield is installed" test_ref="test_package_linuxshield_installed" />
    </criteria>
  </definition>

  <unix:file_test check="all" check_existence="all_exist" comment="/usr/local/uvscan/uvscan exists" id="test_package_uvscan_installed" version="1">
    <unix:object object_ref="object_usr_local_uvscan" />
  </unix:file_test>
  <unix:file_object comment="/usr/local/uvscan/uvscan exists" id="object_usr_local_uvscan" version="1">
    <unix:path operation="equals">/usr/local/uvscan</unix:path>
    <unix:filename>uvscan</unix:filename>
  </unix:file_object>
  
  <ind:textfilecontent54_test check="all" comment="check if uvscan is executed" id="test_uvscan_periodic_cron_checking_etc_crontab" version="1">
    <ind:object object_ref="object_uvscan_periodic_cron_checking_etc_crontab" />
  </ind:textfilecontent54_test>
  <ind:textfilecontent54_object id="object_uvscan_periodic_cron_checking_etc_crontab" version="1">
    <ind:filepath>/etc/crontab</ind:filepath>
    <ind:pattern operation="pattern match">^(?!#)(?:(?:\d*(?:,\d|-\d)?|\*)+\s(?:\d*(?:,\d|-\d)?|\*)+\s\*\s*\s\*|@hourly|@daily|@midnight)+.*uvscan</ind:pattern>
    <ind:instance datatype="int">1</ind:instance>
  </ind:textfilecontent54_object>
  <ind:textfilecontent54_test check="all" comment="check if uvscan is executed" id="test_uvscan_periodic_cron_checking_etc_cron_d" version="1">
    <ind:object object_ref="object_uvscan_periodic_cron_checking_etc_cron_d" />
  </ind:textfilecontent54_test>
  <ind:textfilecontent54_object id="object_uvscan_periodic_cron_checking_etc_cron_d" version="1">
    <ind:path>/etc/cron.d</ind:path>
    <ind:filename operation="pattern match">.*</ind:filename>
    <ind:pattern operation="pattern match">^(?!#)(?:(?:\d*(?:,\d|-\d)?|\*)+\s(?:\d*(?:,\d|-\d)?|\*)+\s\*\s*\s\*|@hourly|@daily|@midnight)+.*uvscan</ind:pattern>
    <ind:instance datatype="int">1</ind:instance>
  </ind:textfilecontent54_object>
  <ind:textfilecontent54_test check="all" comment="check if uvscan is executed" id="test_uvscan_periodic_cron_checking_etc_cron_hourly" version="1">
    <ind:object object_ref="object_uvscan_periodic_cron_checking_etc_cron_hourly" />
  </ind:textfilecontent54_test>
  <ind:textfilecontent54_object id="object_uvscan_periodic_cron_checking_etc_cron_hourly" version="1">
    <ind:path>/etc/cron.hourly</ind:path>
    <ind:filename operation="pattern match">.*</ind:filename>
    <ind:pattern operation="pattern match">^(?!#).*uvscan</ind:pattern>
    <ind:instance datatype="int">1</ind:instance>
  </ind:textfilecontent54_object>
  <ind:textfilecontent54_test check="all" comment="check if uvscan is executed" id="test_uvscan_periodic_cron_checking_etc_cron_daily" version="1">
    <ind:object object_ref="object_uvscan_periodic_cron_checking_etc_cron_daily" />
  </ind:textfilecontent54_test>
  <ind:textfilecontent54_object id="object_uvscan_periodic_cron_checking_etc_cron_daily" version="1">
    <ind:path>/etc/cron.daily</ind:path>
    <ind:filename operation="pattern match">.*</ind:filename>
    <ind:pattern operation="pattern match">^(?!#).*uvscan</ind:pattern>
    <ind:instance datatype="int">1</ind:instance>
  </ind:textfilecontent54_object>

  <unix:file_test check="all" check_existence="all_exist" comment="/opt/NAI/LinuxShield/bin/nails exists" id="test_package_linuxshield_installed" version="1">
    <unix:object object_ref="object_opt_nai_linuxshield_bin_nails" />
  </unix:file_test>
  <unix:file_object comment="/opt/NAI/LinuxShield/bin/nails exists" id="object_opt_nai_linuxshield_bin_nails" version="1">
    <unix:path operation="equals">/opt/NAI/LinuxShield/bin</unix:path>
    <unix:filename>nails</unix:filename>
  </unix:file_object>
  

</def-group>