diff --git a/base/hostinfo.cc b/base/hostinfo.cc index 5efb773562..cb5c04efcf 100644 --- a/base/hostinfo.cc +++ b/base/hostinfo.cc @@ -26,16 +26,37 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include -#include -#include -#include #include #include #include +#include +#include +#include +#include +#include + +#include "base/misc.hh" #include "sim/host.hh" +using namespace std; + +string +__get_hostname() +{ + char host[256]; + if (gethostname(host, sizeof host) == -1) + warn("could not get host name!"); + return host; +} + +string & +hostname() +{ + static string hostname = __get_hostname(); + return hostname; +} + uint64_t procInfo(char *filename, char *target) { diff --git a/base/hostinfo.hh b/base/hostinfo.hh index 2293d2b6a7..453a1e69a8 100644 --- a/base/hostinfo.hh +++ b/base/hostinfo.hh @@ -29,8 +29,12 @@ #ifndef __HOSTINFO_HH__ #define __HOSTINFO_HH__ +#include + #include "sim/host.hh" +std::string &hostname(); + uint64_t procInfo(char *filename, char *target); inline uint64_t memUsage()