(file) Return to System.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/System.h between version 1.13.2.4 and 1.33

version 1.13.2.4, 2001/12/01 02:48:19 version 1.33, 2003/08/04 13:30:39
Line 1 
Line 1 
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001 The Open group, BMC Software, Tivoli Systems, IBM  // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,
   // The Open Group, Tivoli Systems
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a copy // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to // of this software and associated documentation files (the "Software"), to
Line 25 
Line 26 
 // Modified By: // Modified By:
 //              Nag Boranna, Hewlett-Packard Company (nagaraja_boranna@hp.com) //              Nag Boranna, Hewlett-Packard Company (nagaraja_boranna@hp.com)
 // //
   // Modified By: Dave Rosckes (rosckes@us.ibm.com)
   //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
 #ifndef Pegasus_System_h #ifndef Pegasus_System_h
Line 32 
Line 35 
  
 #include <Pegasus/Common/Config.h> #include <Pegasus/Common/Config.h>
 #include <Pegasus/Common/String.h> #include <Pegasus/Common/String.h>
   #include <Pegasus/Common/Linkage.h>
   #include <Pegasus/Common/Logger.h>
   
   //
   // Protocal Type
   //
   #define TCP                        "tcp"
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
   
 /** This is an opaque type which is used to represent dynamic library /** This is an opaque type which is used to represent dynamic library
     handles returned by the System::loadDynamicLibrary() method and     handles returned by the System::loadDynamicLibrary() method and
     accepted by the System::loadDynamicProcedure() method.     accepted by the System::loadDynamicProcedure() method.
Line 44 
Line 55 
 /** This is an opaque type which is returned by System::loadDynamicSymbol(). /** This is an opaque type which is returned by System::loadDynamicSymbol().
     Values of this type may be casted to the appropriate target type.     Values of this type may be casted to the appropriate target type.
 */ */
   #if !defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) && !defined(PEGASUS_PLATFORM_OS400_ISERIES_IBM)
 typedef struct DynamicSymbolHandle_* DynamicSymbolHandle; typedef struct DynamicSymbolHandle_* DynamicSymbolHandle;
   #else
   extern "C" {typedef int (* DynamicSymbolHandle)(void);}
   #endif
   
  
  
 /** The System class defines wrappers for operating system related calls. /** The System class defines wrappers for operating system related calls.
Line 96 
Line 112 
  
     static Boolean renameFile(const char* oldPath, const char* newPath);     static Boolean renameFile(const char* oldPath, const char* newPath);
  
       static Boolean copyFile(const char* fromPath, const char* toPath);
   
       /** Unix issue:<br><br><b>RTLD_<bah></b> issue. Currently Pegasus uses RTLD_NOW during
           loading of the library if supported by OS.  Previous to 2.2, Pegasus used RTLD_GLOBAL on Linux
           - that behaviour is now deprecated.
       */
     static DynamicLibraryHandle loadDynamicLibrary(const char* fileName);     static DynamicLibraryHandle loadDynamicLibrary(const char* fileName);
  
         static void unloadDynamicLibrary(DynamicLibraryHandle libraryHandle);         static void unloadDynamicLibrary(DynamicLibraryHandle libraryHandle);
Line 107 
Line 129 
         const char* symbolName);         const char* symbolName);
  
     static String getHostName();     static String getHostName();
       static String getFullyQualifiedHostName ();
       static String getSystemCreationClassName ();
  
     static String getCurrentLoginName();      static Uint32 lookupPort(
           const char * serviceName,
           Uint32 defaultPort);
   
       static String getEffectiveUserName();
  
     /**     /**
     This function is used to input a password with echo disabled.     This function is used to input a password with echo disabled.
Line 140 
Line 168 
  
     @return             true if the username is valid, else false     @return             true if the username is valid, else false
     */     */
     static Boolean isSystemUser(char* userName);      static Boolean isSystemUser(const char* userName);
   
       /**
       Checks whether the given user is a privileged user.
   
       @param userName     User name to be checked.
       @return             true if the user is a privileged user, else false
       */
       static Boolean isPrivilegedUser(const String userName);
   
       /**
       This function returns the privileged user name on the system.
   
       @return             the privileged user name
       */
       static String getPrivilegedUserName();
  
     /**     /**
     This function is used to check whether the user running the command is      This function is used to get the process ID of the calling process.
     a privileged user. On Unix implementation it checks whether the user  
     is a root user.      @return             Process ID
       */
       static Uint32 getPID();
   
       static Boolean truncateFile(const char* path, size_t newSize);
   
       /** Compare two strings but ignore any case differences.
           This method is provided only because some platforms lack a strcasecmp
           function in the standard library.
       */
       static Sint32 strcasecmp(const char* s1, const char* s2);
   
       /** Return just the file or directory name from the path into basename.
           This method returns a file or directory name at the end of a path.
           The path can be relative or absolute. If the path is the root,
           then empty string is returned.
       */
       static char *extract_file_name(const char *fullpath, char *basename);
   
       /** Return just the pathname into dirname. The fullpath can be relative
           or absolute. This method returns a path minus the file or
           directory name at the end of a supplied path (fullpath).
           If the fullpath is the root, then fullpath is returned.
           The resulting path will contain a trailing slash unless fullpath is
           a file or directory name, in which case, just the file or directory
           name is returned.
       */
       static char *extract_file_path(const char *fullpath, char *dirname);
   
       // Is absolute path?
       static Boolean is_absolute_path(const char *path);
   
   #if defined(PEGASUS_OS_HPUX)
       static Boolean bindVerbose;
   #endif
   
       /** This function is an abstraction for the openlog interface used in the Logger
           class.  Each platform intending to use system logs should support this interface
       */
       static void openlog(const String);
   
       /** This function is an abstraction for the syslog interface used in the Logger
           class.  Each platform intending to use system logs should support this interface
       */
       static void syslog(Uint32, const char *);
  
     @return             true if the user running the command is a      /** This function is an abstraction for the closelog interface used in the Logger
                         privileged user, else false          class.  Each platform intending to use system logs should support this interface
     */     */
     static Boolean isPrivilegedUser();      static void closelog();
  
       // System ID constants for Logger::put and Logger::trace
       static const String CIMSERVER;
 }; };
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END


Legend:
Removed from v.1.13.2.4  
changed lines
  Added in v.1.33

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2