Update HACKING
Made the acceptance test template more Windows friendly.
(cherry picked from commit c1cf05a1984980c5fda172454679deb415de70cb)
Don't return FNCALL_FAILURE in FnCallReturnsZero.

While it might seem more correct, for "returnszero()" it has the
unintended side effect of making this policy

  classes:
    "commandfailed" not => returnszero("/bin/nosuchcommand", "noshell");

not set the "commandfailed" class. This happens because FNCALL_FAILURE
will never set *any* class, regardless of the negation used.
Support code for Windows Powershell support.

Powershell is implemented for all promise types/functions where
useshell is supported, which are:
  - execresult()
  - returnszero()
  - "commands" promise type

For the two functions, one can now specify "powershell" instead of
"noshell" or "useshell". The "commands" promise type previously
supported only boolean values. These are retained for backwards
compatibility, but the new, preferred keywords are "noshell",
"useshell" and "powershell".

Also removed the need for shell commands to start with a word that is
an absolute filename. Anything you'd want to use a shell for will
defeat this security measure anyway (pipe, chained command), and it
doesn't go well together with shell builtins on either platform (Unix
or Win).

Absolute filenames are still enforced for the "noshell" type.

This solves issue 2143.
Updated documentation for new powershell support.
Added powershell hard class on Windows.

Part of issue 2143, to make Powershell more convenient to use in a
potentially heterogenous environment.
Merge branch 'master' of git://github.com/cfengine/core into winPowershell

Conflicts:
	cf-agent/verify_exec.c
	libpromises/evalfunction.c
	libpromises/exec_tools.c
	libpromises/unix.c
Merge pull request #658 from cduclos/master

The joys of exotic unixes
netinet/ip.h requires netinet/in_systm.h

In Linux and other Unixes this is implicitly included, however in
some more exotic Unixes we need to explicitly include it.
(cherry picked from commit 2bdb35364e4308b0939cb957019edd2651cfbd3e)
My ChangeLog entries.
fix for redmine #2635
Merge pull request #655 from kacfengine/winPowershell

Powershell support
Merge branch 'master' into 3.5.x
Merge pull request #661 from kacfengine/changelog

My ChangeLog entries.
Merge pull request #652 from sigurdteigen/cleanup/hacking

Update HACKING
Update HACKING
(cherry picked from commit 9cac8346863dfbc95a4f37568b414b085c77caa2)
My ChangeLog entries.
(cherry picked from commit 2fe97fafc460043f1f77dbe7347305b941c89579)
s/CfOut/Log to fix compile error
s/CfOut/Log to fix compile error
(cherry picked from commit 7d60e40ce0cdb72b913aa57c7bc5f5059792d3c7)
Redmine #2675: /bin/bash is not available on all supported plaforms

The test script test/acceptance/08_commands/01_modules/003.cf.script
uses a /bin/bash shebang, and the Bash shell is not available on
stock HP-UX systems among others, preventing the test from running
properly. This commit changes bash to sh to conform with all the
other test scripts.