version 1.78.2.3, 2008/03/20 06:16:41
|
version 1.79, 2008/01/16 12:00:14
|
|
|
| |
#include <Pegasus/Common/Config.h> | #include <Pegasus/Common/Config.h> |
#include <Pegasus/Common/String.h> | #include <Pegasus/Common/String.h> |
#include <Pegasus/Common/Array.h> |
|
#include <Pegasus/Common/Linkage.h> | #include <Pegasus/Common/Linkage.h> |
#include <Pegasus/Common/Logger.h> | #include <Pegasus/Common/Logger.h> |
#include <Pegasus/Common/Network.h> | #include <Pegasus/Common/Network.h> |
|
|
# define PEGASUS_GID_T Uint32 | # define PEGASUS_GID_T Uint32 |
#endif | #endif |
| |
#if defined(PEGASUS_OS_TYPE_WINDOWS) |
|
# define PEGASUS_SYSTEM_ERRORMSG_NLS \ |
|
System::getErrorMSG_NLS(GetLastError(),0) |
|
# define PEGASUS_SYSTEM_NETWORK_ERRORMSG_NLS \ |
|
System::getErrorMSG_NLS(WSAGetLastError(),0) |
|
# define PEGASUS_SYSTEM_ERRORMSG \ |
|
System::getErrorMSG(GetLastError(),0) |
|
# define PEGASUS_SYSTEM_NETWORK_ERRORMSG \ |
|
System::getErrorMSG(WSAGetLastError(),0) |
|
#elif defined(PEGASUS_OS_ZOS) |
|
# define PEGASUS_SYSTEM_ERRORMSG_NLS \ |
|
System::getErrorMSG_NLS(errno,__errno2()) |
|
# define PEGASUS_SYSTEM_NETWORK_ERRORMSG_NLS \ |
|
System::getErrorMSG_NLS(errno,__errno2()) |
|
# define PEGASUS_SYSTEM_ERRORMSG \ |
|
System::getErrorMSG(errno,__errno2()) |
|
# define PEGASUS_SYSTEM_NETWORK_ERRORMSG \ |
|
System::getErrorMSG(errno,__errno2()) |
|
#else |
|
# define PEGASUS_SYSTEM_ERRORMSG_NLS \ |
|
System::getErrorMSG_NLS(errno,0) |
|
# define PEGASUS_SYSTEM_NETWORK_ERRORMSG_NLS \ |
|
System::getErrorMSG_NLS(errno,0) |
|
# define PEGASUS_SYSTEM_ERRORMSG \ |
|
System::getErrorMSG(errno,0) |
|
# define PEGASUS_SYSTEM_NETWORK_ERRORMSG \ |
|
System::getErrorMSG(errno,0) |
|
#endif |
|
|
|
// | // |
// Protocal Type | // Protocal Type |
// | // |
|
|
class PEGASUS_COMMON_LINKAGE System | class PEGASUS_COMMON_LINKAGE System |
{ | { |
public: | public: |
|
|
/* Creates a String object containing the system message |
|
from the errno and if supported from a second level error |
|
number. The _NLS Method is looking up an internationalized version of |
|
the message. |
|
@param errorCode The system errno. |
|
@param errorCode2 The secondary error number like errno2 on z/OS |
|
*/ |
|
static String getErrorMSG_NLS(int errorCode,int errorCode2); |
|
static String getErrorMSG(int errorCode,int errorCode2); |
|
|
|
/** getCurrentTime - Gets the current time as seconds and milliseconds | /** getCurrentTime - Gets the current time as seconds and milliseconds |
into the provided variables using system functions. | into the provided variables using system functions. |
@param seconds Return for the seconds component of the time. | @param seconds Return for the seconds component of the time. |
|
|
| |
// Gets IP address in binary form. af indicates the type of | // Gets IP address in binary form. af indicates the type of |
// address (ipv4 or ipv6) returned. Address will be copied to dst. | // address (ipv4 or ipv6) returned. Address will be copied to dst. |
static Boolean _acquireIP(const char* hostname, int *af, void *dst); |
static Boolean acquireIP(const char* hostname, int *af, void *dst); |
| |
/** | /** |
Returns true if IPv6 stack is active by checking return code from | Returns true if IPv6 stack is active by checking return code from |
|
|
static Boolean isIPv6StackActive(); | static Boolean isIPv6StackActive(); |
#endif | #endif |
| |
/** |
|
Returns all interface addresses. Both ip4 and ip6 interface addresses |
|
will be returned. |
|
*/ |
|
static Array<String> getInterfaceAddrs(); |
|
|
|
static Uint32 lookupPort( | static Uint32 lookupPort( |
const char * serviceName, | const char * serviceName, |
Uint32 defaultPort); | Uint32 defaultPort); |
|
|
| |
/** | /** |
Changes the process user context to the specified user and group. | Changes the process user context to the specified user and group. |
IMPORTANT: This method is not reentrant and not async signal safe. |
IMPORTANT: This method uses non-reentrant functions and should only |
It should only be called in a single-threaded program. |
be called in a single-threaded program. |
@param userName User name to set as the process user context. | @param userName User name to set as the process user context. |
@param uid User ID to set as the process user context. | @param uid User ID to set as the process user context. |
@param gid Group ID to set as the process group context. | @param gid Group ID to set as the process group context. |