(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.44 and 1.53

version 1.44, 2004/08/25 11:15:54 version 1.53, 2005/05/20 21:09:45
Line 1 
Line 1 
 //%2003////////////////////////////////////////////////////////////////////////  //%2005////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001, 2002  BMC Software, Hewlett-Packard Development  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 // Company, L. P., IBM Corp., The Open Group, Tivoli Systems.  // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
 // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.; // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.;
 // IBM Corp.; EMC Corporation, The Open Group. // IBM Corp.; EMC Corporation, The Open Group.
   // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; VERITAS Software Corporation; The Open Group.
 // //
 // 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 29 
 // //
 // Author: Mike Brasher (mbrasher@bmc.com) // Author: Mike Brasher (mbrasher@bmc.com)
 // //
 // Modified By:  // Modified By: Nag Boranna, Hewlett-Packard Company (nagaraja_boranna@hp.com)
 //     Nag Boranna, Hewlett-Packard Company (nagaraja_boranna@hp.com)  //              Dave Rosckes (rosckes@us.ibm.com)
 //  
 // Modified By: Dave Rosckes (rosckes@us.ibm.com)  
 //              Robert Kieninger, IBM (kieningr@de.ibm.com) for Bug#667 //              Robert Kieninger, IBM (kieningr@de.ibm.com) for Bug#667
   //              David Dillard, VERITAS Software Corp.
   //                  (david.dillard@veritas.com)
   //              Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com)
   //              Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
Line 58 
Line 64 
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
  
   #if defined(PEGASUS_OS_VMS)
       //
       // Needed to save filename. We do NOT use dlopen and dlsym.
       // VMS implementation uses OS specific code for these functions.
       //
       static String saveFileName;
   #endif
   
 /** 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 140 
Line 154 
         DynamicLibraryHandle libraryHandle,         DynamicLibraryHandle libraryHandle,
         const char* symbolName);         const char* symbolName);
  
   #if defined(PEGASUS_OS_VMS)
       static DynamicSymbolHandle loadVmsDynamicSymbol(
           const char* symbolName,
           const char* fileName,
           const char *vmsProviderDir);
   #endif
   
     static String getHostName();     static String getHostName();
     static String getFullyQualifiedHostName ();     static String getFullyQualifiedHostName ();
     static String getSystemCreationClassName ();     static String getSystemCreationClassName ();
       static String getHostIP(const String &hostName);
  
     static Uint32 _acquireIP(const char* hostname);     static Uint32 _acquireIP(const char* hostname);
  
Line 190 
Line 212 
     @param userName     User name to be checked.     @param userName     User name to be checked.
     @return             true if the user is a privileged user, else false     @return             true if the user is a privileged user, else false
     */     */
     static Boolean isPrivilegedUser(const String userName);      static Boolean isPrivilegedUser(const String& userName);
  
     /**     /**
     This function returns the privileged user name on the system.     This function returns the privileged user name on the system.
Line 216 
Line 238 
     static Boolean isGroupMember(const char* userName, const char* groupName);     static Boolean isGroupMember(const char* userName, const char* groupName);
  
     /**     /**
       Changes the process user context to the specified user.
   
       @param userName     User name to set as the process user context.
   
       @return             True if the user context is successfully changed,
                           false otherwise.
       */
   #ifndef PEGASUS_OS_OS400
       static Boolean changeUserContext(const char* userName);
   #endif
       /**
     This function is used to get the process ID of the calling process.     This function is used to get the process ID of the calling process.
  
     @return             Process ID     @return             Process ID
Line 258 
Line 291 
     */     */
     static Boolean changeFilePermissions(const char* path, mode_t mode);     static Boolean changeFilePermissions(const char* path, mode_t mode);
  
       /** Checks whether the specified file is owned by the effective user for
           the current process.
           @param path Path of the file to check.
           @return True if the file is owned by the effective user for the
           current process, false otherwise.
       */
       static Boolean verifyFileOwnership(const char* path);
   
     /**     /**
         Flag indicating whether shared libraries are loaded with the         Flag indicating whether shared libraries are loaded with the
         BIND_VERBOSE option.         BIND_VERBOSE option.
Line 266 
Line 307 
      */      */
     static Boolean bindVerbose;     static Boolean bindVerbose;
  
     /** 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          Writes a message to the system log.  This method encapsulates the
     */          semantics of opening the system log, writing the specified message,
     static void openlog(const String);          and closing the log.
   
     /** This function is an abstraction for the syslog interface used in the Logger          @param ident An identifier to be prepended to the log messages
         class.  Each platform intending to use system logs should support this interface          (typically a program name).
     */          @param severity A severity value to be associated with the message.
     static void syslog(Uint32, const char *);          Severity values are defined in Logger.h.
           @param message A message to be written to the system log.
     /** This function is an abstraction for the closelog interface used in the Logger      */
         class.  Each platform intending to use system logs should support this interface      static void syslog(
     */          const String& ident,
     static void closelog();          Uint32 severity,
           const char* message);
  
     // System ID constants for Logger::put and Logger::trace     // System ID constants for Logger::put and Logger::trace
     static const String CIMSERVER;     static const String CIMSERVER;
  
     // System ID constants for Logger::put and Logger::trace     // System ID constants for Logger::put and Logger::trace
     static const String CIMLISTENER;     static const String CIMLISTENER;
   
 }; };
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END


Legend:
Removed from v.1.44  
changed lines
  Added in v.1.53

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2