Provided by: libpcp3-dev_4.0.1-1_amd64 bug

NAME

       pmGetContextHostName,  pmGetContextHostName_r  -  return  the  hostname  associated with a
       Performance Co-Pilot context

C SYNOPSIS

       #include <pcp/pmapi.h>

       const char *pmGetContextHostName(int id);
       char *pmGetContextHostName_r(int id, char *buf, int buflen);

       cc ... -lpcp

DESCRIPTION

       Given  a  valid  PCP  context  identifier  previously  created  with  pmNewContext(3)   or
       pmDupContext(3),  the  pmGetContextHostName  function returns the hostname associated with
       id.  The pmGetContextHostName_r function does the same, but stores the result in  a  user-
       supplied  buffer  buf of length buflen, which should have room for at least MAXHOSTNAMELEN
       bytes.

       If the context id is associated with an archive source of data, the hostname  returned  is
       extracted from the archive label using pmGetArchiveLabel(3).

       For  live  contexts,  an  attempt will first be made to retrieve the hostname from the PCP
       collector system using pmFetch(3) with the pmcd.hostname metric.  This allows client tools
       using  this interface to retrieve an accurate host identifier even in the presence of port
       forwarding and tunnelled connections.

       Should this not succeed, then a fallback method is used.  For local contexts - with  local
       meaning  any  of  DSO, ``localhost'' or Unix domain socket connection - a hostname will be
       sought via gethostname(3).  For other contexts, the hostname extracted  from  the  initial
       context host specification will be used.

RETURN VALUE

       If  id  is  not  a  valid  PCP  context identifier, the returned hostname is a zero length
       string.

NOTES

       pmGetContextHostName returns a pointer to a static buffer, so the returned value  is  only
       valid  until  the  next call to pmGetContextHostName and hence is not thread-safe.  Multi-
       threaded applications should use pmGetContextHostName_r instead.

PCP ENVIRONMENT

       Environment variables with the prefix PCP_ are used to parameterize the file and directory
       names used by PCP.  On each installation, the file /etc/pcp.conf contains the local values
       for these variables.  The $PCP_CONF  variable  may  be  used  to  specify  an  alternative
       configuration  file,  as  described  in  pcp.conf(5).   Values  for these variables may be
       obtained programmatically using the pmGetConfig(3) function.

SEE ALSO

       PCPIntro(1), PMAPI(3), gethostname(3), pmDupContext(3), pmFetch(3),  pmGetArchiveLabel(3),
       pmNewContext(3), pcp.conf(5) and pcp.env(5).