Change: Add alternate unescape form to mustache render quotes test

The mustache spec allows variables to be inside of `{{{`.
This extends the test to cover that style in addition to including the
characters to not escape.
Merge pull request #1917 from nickanderson/redmine/6516

Change: Add alternate unescape form to mustache render quotes test
Reload HA configuration when policy is changed.

After policy is changed make sure that HA configuration is reloaded.
This is needed by the cf-serverd as we don't want to restart it all
the time HA configuration is changed.
Conform to revised coding style for do { ... } while (...);

Spacing change only: put the opening { on a line of its own, not after
the do, so that it lines up with the closing }; and put the while on
the same line as the closing, so as to make clear that we're not
looking at a while (...) { /* empty */ } written as while (...);

Did also include one blank line for clarity of reading.
Change "Unacceptable model uncertainty" message and its log level.

It's not the most intelligible message - so reword it to give the
reader some chance of understanding it - and it's kinda spammy (albeit
more so than usual, lately, thanks to my recent bug in the parser).
Also add the name of the field we thought we were parsing, as that's
relevant.
Interpret failing function calls in ifvarclass/if/unless as class not set.

ifvarclass is treated explicitly during the evaluation of a promise.
Function calls might fail due to unexpanded variables in arguments or
for other reasons, in which case the classes should be assumed not to
be set.

Remove unused function in eval_context.c, make static equivalent
in promises.c, where it is used.

Include acceptance test.

Fixes Redmine 6327. Can't be cleanly cherry-picked into 3.6.x.
disable unstable unit test on Solaris
Merge pull request #1921 from ediosyncratic/do-while-style-fix

Conform to revised coding style for do { ... } while (...);
Merge pull request #1923 from ediosyncratic/model-uncertainty-quieter

Change "Unacceptable model uncertainty" message and its log level.
Fix blatant memory trample.
Fix for uninitialized pointer free in SocketConnect().

As pointed out by @worr in #1918, failure of getaddrinfo() may leave
response2 unset, in which case calling freeaddrinfo() on it is apt to
crash.  None the less, nothing guarantees that failing getaddrinfo()
won't set the response list (e.g. when OOM prevents it allocating
space for further entries).  So initialise it to NULL.

Also move the declaration closer to its use.
Protect against freeaddrinfo(NULL);

Apparently some implementations don't handle this gracefully.
/me bangs head on wall, but is glad I googled.
Fix another addrinfo corner case in SocketConnect().

The initial call to getaddrinfo() is subject to the same concerns as
the secondary one, as noticed by @jimis in code review.
Merge pull request #1924 from vohi/redmine/6327

Redmine 6327 - Interpret failing function calls in ifvarclass/if/unless as class not set
Merge pull request #1919 from ediosyncratic/trample-fix

Fix a memory trample and some bad freeaddrinfo() calls.
Improve test case for ifvarclass with functions

As per feedback to ediosyncratic, make sure we test the positive
case as well, and use standard "ok" class to mark pass/fail.
Merge pull request #1928 from vohi/master

Improve test case for ifvarclass with functions
Audit getaddrinfo() uses for proper freeing, redmine #6539.
redmine6531: Fix some strings of 9s to be of sensible lengths.

We got weirdness on Solaris and Aches because integers were rejected
as invalid if they happened to exceed 1410065407 (0x540be3ff),
a.k.a. on(2014,8,6,6,50,7); which just happens to be an imminent date
we tried to use.  (Yes, imminent; month and day are zero-based, not
quite what one might have expected.)  We discovered this was the upper
bound for signed integers, 9999999999 (ten 9s), wrapped into a 32-bit
int's range.  The lower bound was eleven 9s, negated; and the range
for unsigned ints was from zero to this eleven 9s value, so we even
had inconsistency between the upper bound of signed int and the
matching bound for unsigned.  Head.  Desk.

At the same time, CF_HIGHINIT and CF_LOWINIT (were undocumented and)
had likewise different numbers of 9s to them.  This made no sense
either.  So I've amended the sequences of 9s so that: corresponding
bounds actually match; and the values that result are faithfully
represented as 32-bit int values.  I've also added relevant comments.
The use of strings of 9s as bounds remains eccentric, but at least
it's not brokenly so.
Truncate over-long strings of 9s.

We use long strings of 9s as bounding values for integers.  On 32-bit
values, if those long strings exceed 999999999 the resulting int wraps
and is smaller, so don't use more than nine 9s in a row.

In contrib/cfengine.el, avoid repetition of these strings of 9s by
defining two new constants for the ranges that involve them.