15547 : use a clean env for builtin check

solaris has /bin/cd as a command to ensure posix compatibility. So
we need to avoid using '/bin' in path if we want to ensure that we
are looking at shell builtin cd.
15547 : valid locales as sentinel and check

Using spurious values for LC_ALL and LANG values in solaris causes
some commands to barf. Since we are only checking for overrides, we
can aswell use a valid locale.
15547 : Add home environemnt to pkgutil

pkgutil expects home to be set when run as non-user. Add $HOME when
invoking pkgutil
(#15547) remove the spaec between method and ()
(#15676) Fix puppet module face SSL acceptance tests to use masters real hostname

Previously we had been using 'localhost' as the location of the master, which
is a dangerous assumption with systest, since the master may be located on
another host or 'localhost' may not give us the expected results.

This patch changes the usage of localhost to use the variable 'master' which
should point to the canonical hostname of the master each and every time.
Merge pull request #966 from kbarber/ticket/3.x/15676-ssl_acceptance_test_uses_localhost

(#15676) Fix puppet module face SSL acceptance tests to use masters real hostname
(#15547) mock of facter :operatingsystem pending

Unless we are able to mock the operating system Fact, we will not be
able to run all the mount parsing tests running on each platforms.

However this is not required. We could aswell run the platform specific
test on the specific platform. However this is not done at present.
We are just making it pending for solaris since other platforms pass.

for the mount_spec, the mocked operating system value is not reflected
in lib/puppet/provider/mount/parsed.rb needing @blockdevice to be passed
in even though we are impersonating as Darwin
Merge branch 'runit' of https://github.com/vrthra/puppet into 3.x
Merge pull request #974 from vrthra/3.x

(#15547) remove the spaec between method and ()
Remove Network::Authorization code which was only used for XMLRPC

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Remove deprecated method of accessing files in modules

It was possible to refer to a file in a module without including the
'/module/' path component. This has been deprecated for at least one major
release.

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Remove code for XMLRPC namespaces

XMLRPC is no longer used and this was dead code.

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Merge RestAuthConfig into AuthConfig

There is no longer a meaningful distinction between REST authorization and
XMLRPC authorization.  AuthConfig provided a base class for both XMLRPC and
REST.  This is a problem because it makes the code difficult to understand in
a world where XMLRPC does not exist.  This patch fixes the problem by merging
the behavior of the RestAuthConfig class into the AuthConfig class.  The
AuthConfig class is now solely responsible for REST authorization.

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Rename {rest_,}authorization.rb

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Add allow_ip and deny_ip keywords to auth.conf

This commit splits IP based authorization into its own keywords. The allow and
deny keywords no longer operate on IP addresses. The new keywords function
like allow and deny but operate exclusively on IPv4 and IPv6 addresses.
Back references are currently unsupported for allow_ip and deny_ip.

Without this patch there is a security related issue where Puppet could not
distinguish between a certificate name that contains an IP address (cert auth)
and an ip address itself being used to authenticate (ip based auth).  This
patch fixes the problem by separating these out as described above.

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Rename rest_authconfig_spec to authconfig_spec

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Merge the old RestAuthConfig specs into the specs for AuthConfig

Since the underlying classes have been merged it doesn't make sense to have
separate spec files.

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Refactor AuthConfig parsing into AuthConfigParser

This pulls parsing and file management out of the AuthConfig class. It
introduces the AuthConfigParser class which is responsible for parsing and
returning a new AuthConfig instance. Reloading the AuthConfig from a changed
auth.conf is pulled out into Puppet::Network::Authorization, which already had
partial responsibility for this.

Paired-with: Jeff McCune <jeff@puppetlabs.com>
Remove proxy methods going from Rights to Right

These methods were unnecessary, as it's easy to get the specific Right object
and call a method on it.

Paired-with: Jeff McCune <jeff@puppetlabs.com>