Lots of changes, such as execution time-outs for all external commands, and new CRIT-level output

===

UPDATED - Ignore one more version of a harmless rpm.versions.d/local.versions file so that we don't get a warning about it.

===

UPDATED - Ignore some harmless default root cron files so that we don't get a warning about them containing "interesting commands" like rm, kill, etc.

The default 'tmpwatch' cron will NOT be ignored, I verified that it can actually delete /tmp/mysql.sock (usually after 10 days). I did add an md5sum hash to ignore one that was specifically modified not to delete symlinks from /tmp and /var/tmp.

===

UPDATED - Default modsec2.conf size now appears to be 1447 bytes, so update the check that looked for the file size to be >1200 bytes to >1447 bytes as an indication that it might contain custom rules.

===

ADDED - File permission check for /bin/rm.  If not executable by mortal users this can break File Manager's ability to delete files.

Credit:
  Juan-Carlos Newton

===

UPDATED - In permissions check, mode 755 is now acceptable for /home in addition to 711.

Credit:
  Peter Elsner

===

FIXED - Grammar in NFS filesystem check (cosmetic)

Credit:
  David Nielson

===

ADDED - Check for mod_ruid2 + Jail Apache Virtual Hosts tweak:

[WARN] * mod_ruid2: is enabled with Jail Apache Virtual Hosts tweak, this might break Mailman, see cases 84393, 104017, and tickets 5015613, 5227891

Credit:
  Peter Elsner

===

ADDED - Check for mod_ruid2 + Jail Apache Virtual Hosts tweak + suPHP:

[WARN] * mod_ruid2: is enabled with Jail Apache Virtual Hosts tweak and suPHP handler, these are NOT COMPATIBLE, see cases 70561, 105901

===

ADDED - INFO output for mail server type (the setting in cpanel.config).  Will also tell you if this setting is missing.

[INFO] * Mailserver: dovecot

Credit:
  Juan-Carlos Newton

===

FIXED - External commands are now all run under an execution timeout with a default of 15 seconds, previously this was only reserved for things like 'rpm' which were known to hang.  This should hopefully prevent SSP from ever getting hung up on something, so be patient if it appears to hang.  It will print a message if any command has timed out.  The 'rpm' command is also now only executed twice, so in the event that RPM is completely broken you should only see SSP hang for a total of about 30 seconds.  Previously 'rpm' was run 5 times, sometimes without any execution time-out.

RPM check (running "rpm -qa ..."). This will timeout after 15 seconds.
Timeout while executing: rpm -qa --queryformat %{ARCH}\t%{NAME}\t%{VERSION}\t%{RELEASE}\n
RPM query OpenSSL changelog (running "rpm -q ..."). This will timeout after 15 seconds.
Timeout while executing: rpm -q --changelog openssl

===

FIXED - A side-benefit of the external process execution re-work is that SSP previously imported some cPanel perl modules from /usr/local/cpanel to do this, but it does not any more.  The necessary code has been copied directly into SSP.  This should keep SSP working in the event that cpanel perl or any of its modules under /usr/local/cpanel are broken, which happened recently.  In that event, SSP was dead in the water, now it should be good to go.

===

UPDATED - Any check which requires action such as a pre-defined response and/or escalation is now prefixed with [CRIT] instead of [WARN].  In addition to this, all CRIT-level output is collected and presented in a summary (yes, that means they're printed twice, they're worth it) at the end of the SSP output, so there should be no chance that you miss the output unless the execution of SSP is terminated early (which is another reason every command is now run with a time-out).

Credit:
  A whole lot of people have asked for something like this, more than I can remember.  Thanks, everybody!

===