Removed empty message, NovaWin_UserNameToSid() is verbose by itself.

(cherry picked from commit 137ff854afafb74c269ff3db2c0741f09a6cdb3d)
Fix make dist

- pcre_include.h was missing in libutils
- depecated.h was missing in libutils
- compile does not exist
(cherry picked from commit 70da6faadd57e6bf387253e67a90d5e61a3a4409)
replaced tabs by spaces
added a note that the ps command on linux has been change to adopt for big rss values.

Modified by Kristian Amlie <kristian.amlie@cfengine.com>
(cherry picked from commit 75448130fe519815e17012e5c81dfe02bc0c2b75)
Fix memory leak in IsProcessNameRunning().

When it finds a matching row, it breaks out of the loop over rows;
otherwise, it free()s the fragments into which it parsed the line that
just failed.  The matching line's fragments need free()d just as much.
Assorted clean-up in processes_select.c

Casting the paramater of isspace to int is dumb; even without the
overt cast, that would happen.  As it happens, isspace wants to be
given an int whose value is either that of an unsigned char or EOF
(which is -1).  So, when passing a char to it (which is what we're
doing) we *do* need to cast it - to unsigned char - after all.
Likewise for isalnum().

Various loops were needlessly complicated by mishandling the 0 case,
leading to kludges to not end up with the wrong answer.  Use the right
test, avoid the dumb kludges.

Prefer strlcpy over strncpy, adjust a buffer size to match and kill
the wanton memset(,0,)s implicit in an initializer that assured the
strncpy() would have a trailing '\0'.

Kill a spurious continue (in an if, whose else was the rest of the
loop anyway).

Removed misleading " INFO - " from the front of a LOG_LEVEL_VERBOSE.
Chop() was being called with the wrong size for its buffer.
A loop variable could be made more local and const.
Turn some untidy while loops into for loops.
Split some lines to make them more readable.
Made diverse other locals more local.
Fewer parentheses.
RedMine 6397 mitigation: use alternate column instead of empty.

In SplitProcLine(), we parse the line two ways; if the two don't
agree, we winge about it; but we use the first one anyway.  We see
some cases where Solaris ps gets a better answer from the second than
from the first; so use the second by default and fall back to the
first if it's empty.
Rework SplitProcLine(): smarter growing of fields outside columns.

GetProcessColumnNames() records the start and end columns of the
headings for ps-output.  SplitProcLine() uses these in its second
heuristic for parsing the columns from data lines.  (The first
heuristic simply splits on spaces, aside from a minor kludge for
STIME.  If the two heuristics disagree, we Log() a warning.)  It used
to grow the field outwards, to a space on each side, but limiting
growth to the right to (arbitrarily) ten characters.

Having now studied actual ps output (details documented in a comment
at the start of the heuristic), I've changed this so that:
 * for numeric fields, it grows left, potentially into the previous
   column but never to its start;
 * for text columns it grows right but never overlaps the next column
   header.

It also now strips all leading and trailing space (it used to neglect
this for the last column), which eliminates the need for Chop().  I've
also eliminated the assumption that the last column is CMD/COMMAND
(it's easier and safer to test for last column).