<def-group>
  <definition class="compliance" id="service_%SERVICENAME%_enabled"
  version="1">
    <metadata>
      <title>Service %SERVICENAME% Enabled</title>
      <affected family="unix">
        <platform>Red Hat Enterprise Linux 6</platform>
      </affected>
      <description>The %SERVICENAME% service should be enabled if possible.</description>
    </metadata>
    <criteria comment="package %PACKAGENAME% installed and service %SERVICENAME% is configured to start" operator="AND">
    <extend_definition comment="%PACKAGENAME% installed" definition_ref="package_%PACKAGENAME%_installed" />
    <criteria operator="OR" comment="service %SERVICENAME% is configured to start">
      <criterion comment="%SERVICENAME% runlevel 0" test_ref="test_runlevel0_%SERVICENAME%" />
      <criterion comment="%SERVICENAME% runlevel 1" test_ref="test_runlevel1_%SERVICENAME%" />
      <criterion comment="%SERVICENAME% runlevel 2" test_ref="test_runlevel2_%SERVICENAME%" />
      <criterion comment="%SERVICENAME% runlevel 3" test_ref="test_runlevel3_%SERVICENAME%" />
      <criterion comment="%SERVICENAME% runlevel 4" test_ref="test_runlevel4_%SERVICENAME%" />
      <criterion comment="%SERVICENAME% runlevel 5" test_ref="test_runlevel5_%SERVICENAME%" />
      <criterion comment="%SERVICENAME% runlevel 6" test_ref="test_runlevel6_%SERVICENAME%" />
    </criteria>
    </criteria>
  </definition>
  <unix:runlevel_test check="all" check_existence="any_exist"
  comment="Runlevel test" id="test_runlevel0_%SERVICENAME%"
  version="2">
    <unix:object object_ref="obj_runlevel0_%SERVICENAME%" />
    <unix:state state_ref="state_service_%SERVICENAME%_on" />
  </unix:runlevel_test>
  <unix:runlevel_test check="all" check_existence="any_exist"
  comment="Runlevel test" id="test_runlevel1_%SERVICENAME%"
  version="2">
    <unix:object object_ref="obj_runlevel1_%SERVICENAME%" />
    <unix:state state_ref="state_service_%SERVICENAME%_on" />
  </unix:runlevel_test>
  <unix:runlevel_test check="all" check_existence="any_exist"
  comment="Runlevel test" id="test_runlevel2_%SERVICENAME%"
  version="2">
    <unix:object object_ref="obj_runlevel2_%SERVICENAME%" />
    <unix:state state_ref="state_service_%SERVICENAME%_on" />
  </unix:runlevel_test>
  <unix:runlevel_test check="all" check_existence="any_exist"
  comment="Runlevel test" id="test_runlevel3_%SERVICENAME%"
  version="2">
    <unix:object object_ref="obj_runlevel3_%SERVICENAME%" />
    <unix:state state_ref="state_service_%SERVICENAME%_on" />
  </unix:runlevel_test>
  <unix:runlevel_test check="all" check_existence="any_exist"
  comment="Runlevel test" id="test_runlevel4_%SERVICENAME%"
  version="2">
    <unix:object object_ref="obj_runlevel4_%SERVICENAME%" />
    <unix:state state_ref="state_service_%SERVICENAME%_on" />
  </unix:runlevel_test>
  <unix:runlevel_test check="all" check_existence="any_exist"
  comment="Runlevel test" id="test_runlevel5_%SERVICENAME%"
  version="2">
    <unix:object object_ref="obj_runlevel5_%SERVICENAME%" />
    <unix:state state_ref="state_service_%SERVICENAME%_on" />
  </unix:runlevel_test>
  <unix:runlevel_test check="all" check_existence="any_exist"
  comment="Runlevel test" id="test_runlevel6_%SERVICENAME%"
  version="2">
    <unix:object object_ref="obj_runlevel6_%SERVICENAME%" />
    <unix:state state_ref="state_service_%SERVICENAME%_on" />
  </unix:runlevel_test>
  <unix:runlevel_object id="obj_runlevel0_%SERVICENAME%" version="1">
    <unix:service_name>%SERVICENAME%</unix:service_name>
    <unix:runlevel operation="equals">0</unix:runlevel>
  </unix:runlevel_object>
  <unix:runlevel_object id="obj_runlevel1_%SERVICENAME%" version="1">
    <unix:service_name>%SERVICENAME%</unix:service_name>
    <unix:runlevel operation="equals">1</unix:runlevel>
  </unix:runlevel_object>
  <unix:runlevel_object id="obj_runlevel2_%SERVICENAME%" version="1">
    <unix:service_name>%SERVICENAME%</unix:service_name>
    <unix:runlevel operation="equals">2</unix:runlevel>
  </unix:runlevel_object>
  <unix:runlevel_object id="obj_runlevel3_%SERVICENAME%" version="1">
    <unix:service_name>%SERVICENAME%</unix:service_name>
    <unix:runlevel operation="equals">3</unix:runlevel>
  </unix:runlevel_object>
  <unix:runlevel_object id="obj_runlevel4_%SERVICENAME%" version="1">
    <unix:service_name>%SERVICENAME%</unix:service_name>
    <unix:runlevel operation="equals">4</unix:runlevel>
  </unix:runlevel_object>
  <unix:runlevel_object id="obj_runlevel5_%SERVICENAME%" version="1">
    <unix:service_name>%SERVICENAME%</unix:service_name>
    <unix:runlevel operation="equals">5</unix:runlevel>
  </unix:runlevel_object>
  <unix:runlevel_object id="obj_runlevel6_%SERVICENAME%" version="1">
    <unix:service_name>%SERVICENAME%</unix:service_name>
    <unix:runlevel operation="equals">6</unix:runlevel>
  </unix:runlevel_object>
  <unix:runlevel_state comment="configured to start" id="state_service_%SERVICENAME%_on" version="1">
    <unix:start datatype="boolean">true</unix:start>
    <unix:kill datatype="boolean">false</unix:kill>
  </unix:runlevel_state>
</def-group>
