Sha256: 7254090def60a4f10e9b1957afac9f2c28f1fbd431180bbfae03d7dd27833bce

Contents?: true

Size: 990 Bytes

Versions: 16

Compression:

Stored size: 990 Bytes

Contents

#include <internal/facts/posix/operating_system_resolver.hpp>
#include <leatherman/logging/logging.hpp>
#include <leatherman/execution/execution.hpp>
#include <sys/utsname.h>

using namespace std;
using namespace leatherman::execution;

namespace facter { namespace facts { namespace posix {

    operating_system_resolver::data operating_system_resolver::collect_data(collection& facts)
    {
        // Default to the base implementation
        data result = resolvers::operating_system_resolver::collect_data(facts);

        struct utsname name;
        memset(&name, 0, sizeof(name));
        if (uname(&name) == -1) {
            LOG_DEBUG("uname failed: {1} ({2}): OS hardware is unavailable.", strerror(errno), errno);
        } else {
            result.hardware = name.machine;
        }

        // By default, the architecture is the same as the hardware model
        result.architecture = result.hardware;
        return result;
    }

}}}  // namespace facter::facts::posix

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
facter-3.12.2.cfacter.20181217 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.12.1.cfacter.20181031 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.11.6.cfacter.20181031 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.12.1.cfacter.20181023 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.11.5.cfacter.20181022 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.12.0.cfacter.20181004 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.12.0.cfacter.20181001 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.12.0.cfacter.20180918 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.11.4.cfacter.20180821 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.11.3.cfacter.20180716 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.11.2.cfacter.20180612 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.9.6.cfacter.20180612 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.11.2.cfacter.20180606 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.9.6.cfacter.20180606 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
facter-3.11.0.cfacter.20180319 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc
cfacter-3.11.0.rc.20180314 ext/facter/facter/lib/src/facts/posix/operatingsystem_resolver.cc