Index: Schemas/Pegasus/ManagedSystem/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/Schemas/Pegasus/ManagedSystem/Makefile,v retrieving revision 1.13 diff -a -b --context -r1.13 Makefile *** Schemas/Pegasus/ManagedSystem/Makefile 25 Aug 2004 21:00:31 -0000 1.13 --- Schemas/Pegasus/ManagedSystem/Makefile 21 Dec 2004 20:13:35 -0000 *************** *** 27,32 **** --- 27,37 ---- FILE_PREFIX=HPUX endif + ifeq ($(OS), VMS) + EXTENDED_MANAGEDSYSTEM_NS_SUPPORTED = true + FILE_PREFIX=HPUX + endif + install: $(MKDIRHIER) "$(LOCAL_STATE_PREFIX)" $(MAKE) "REPOSITORY_DIR=$(LOCAL_STATE_PREFIX)" repository Index: mak/build.mak =================================================================== RCS file: /cvs/MSB/pegasus/mak/build.mak,v retrieving revision 1.4 diff -a -b --context -r1.4 build.mak *** mak/build.mak 13 Feb 2002 20:04:40 -0000 1.4 --- mak/build.mak 21 Dec 2004 20:13:39 -0000 *************** *** 6,11 **** --- 6,29 ---- endef + ifeq ($(PEGASUS_OS_TYPE),VMS) + + $(OBJ_DIR)/target: $(ERROR) + ifndef VMSPROGRAM + library/create/object $(FULL_VMSLIB) + endif + @ $(MKDIRHIER) $(REP_DIR) + @ $(MKDIRHIER) $(OBJ_DIR) + @ $(TOUCH) $(OBJ_VMSDIR)]target + + $(BIN_DIR)/target: $(ERROR) + @ $(MKDIRHIER) $(BIN_DIR) + @ $(TOUCH) $(BIN_VMSDIR)]target + + $(LIB_DIR)/target: $(ERROR) + @ $(MKDIRHIER) $(LIB_DIR) + @ $(TOUCH) $(LIB_VMSDIR)]target + else $(OBJ_DIR)/target: $(ERROR) @ $(MKDIRHIER) $(OBJ_DIR) $(foreach i, $(OBJECT_DIRS), $(MKDIRHIER) $(OBJ_DIR)/$(i) $(BUILD_NL) ) *************** *** 18,20 **** --- 36,39 ---- $(LIB_DIR)/target: $(ERROR) @ $(MKDIRHIER) $(LIB_DIR) @ $(TOUCH) $(LIB_DIR)/target + endif Index: mak/config.mak =================================================================== RCS file: /cvs/MSB/pegasus/mak/config.mak,v retrieving revision 1.67 diff -a -b --context -r1.67 config.mak *** mak/config.mak 14 Dec 2004 12:56:55 -0000 1.67 --- mak/config.mak 21 Dec 2004 20:13:39 -0000 *************** *** 338,341 **** PEGASUS_DEST_LIB_DIR = lib endif ! DEFINES += -DPEGASUS_DEST_LIB_DIR=\"$(PEGASUS_DEST_LIB_DIR)\" --- 338,346 ---- PEGASUS_DEST_LIB_DIR = lib endif ! ifeq ($(OS),VMS) ! DEFINES += -DPEGASUS_DEST_LIB_DIR="""$(PEGASUS_DEST_LIB_DIR)""" ! else ! DEFINES += -DPEGASUS_DEST_LIB_DIR=\"$(PEGASUS_DEST_LIB_DIR)\" ! endif ! Index: mak/depend.mak =================================================================== RCS file: /cvs/MSB/pegasus/mak/depend.mak,v retrieving revision 1.1.1.1 diff -a -b --context -r1.1.1.1 depend.mak *** mak/depend.mak 14 Jan 2001 19:50:21 -0000 1.1.1.1 --- mak/depend.mak 21 Dec 2004 20:13:39 -0000 *************** *** 1,5 **** ifeq ($(OS_TYPE),windows) include $(ROOT)/mak/depend-windows.mak else ! include $(ROOT)/mak/depend-unix.mak endif --- 1,9 ---- ifeq ($(OS_TYPE),windows) include $(ROOT)/mak/depend-windows.mak else ! ifeq ($(OS_TYPE),vms) ! include $(ROOT)/mak/depend-vms.mak ! else ! include $(ROOT)/mak/depend-unix.mak ! endif endif Index: mak/library.mak =================================================================== RCS file: /cvs/MSB/pegasus/mak/library.mak,v retrieving revision 1.15 diff -a -b --context -r1.15 library.mak *** mak/library.mak 29 Jun 2004 20:38:12 -0000 1.15 --- mak/library.mak 21 Dec 2004 20:13:40 -0000 *************** *** 41,46 **** --- 41,49 ---- ifeq ($(OS_TYPE),nsk) include $(ROOT)/mak/library-nsk.mak endif + ifeq ($(OS_TYPE),vms) + include $(ROOT)/mak/library-vms.mak + endif ################################################################################ ## Index: mak/objects.mak =================================================================== RCS file: /cvs/MSB/pegasus/mak/objects.mak,v retrieving revision 1.6 diff -a -b --context -r1.6 objects.mak *** mak/objects.mak 18 Mar 2002 13:43:04 -0000 1.6 --- mak/objects.mak 21 Dec 2004 20:13:40 -0000 *************** *** 10,12 **** --- 10,15 ---- ifeq ($(OS_TYPE),nsk) include $(ROOT)/mak/objects-nsk.mak endif + ifeq ($(OS_TYPE),vms) + include $(ROOT)/mak/objects-vms.mak + endif Index: mak/program.mak =================================================================== RCS file: /cvs/MSB/pegasus/mak/program.mak,v retrieving revision 1.26 diff -a -b --context -r1.26 program.mak *** mak/program.mak 8 Aug 2003 11:47:32 -0000 1.26 --- mak/program.mak 21 Dec 2004 20:13:41 -0000 *************** *** 17,22 **** --- 17,25 ---- ifeq ($(OS_TYPE),nsk) include $(ROOT)/mak/program-nsk.mak endif + ifeq ($(OS_TYPE),vms) + include $(ROOT)/mak/program-vms.mak + endif #l10n messages: $(ERROR) Index: src/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Makefile,v retrieving revision 1.19 diff -a -b --context -r1.19 Makefile *** src/Makefile 3 Aug 2004 23:28:44 -0000 1.19 --- src/Makefile 21 Dec 2004 20:13:42 -0000 *************** *** 23,25 **** --- 23,28 ---- config: @ $(MAKE) "-SC" Providers/generic/ConfigSettingProvider/load config + vms: + @ $(MAKE) "-SC" Pegasus/ProviderManager2/Default -f makefile_vms + Index: src/Clients/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Clients/Makefile,v retrieving revision 1.28 diff -a -b --context -r1.28 Makefile *** src/Clients/Makefile 3 Dec 2004 01:49:47 -0000 1.28 --- src/Clients/Makefile 21 Dec 2004 20:13:42 -0000 *************** *** 30,35 **** --- 30,41 ---- nisinfo endif + ifeq ($(OS),VMS) + DIRS += \ + ntpinfo \ + dnsinfo \ + nisinfo + endif #The following tests are NOT included as part of the standard #regession test. The cimuser tests require PrivilegedUser Index: src/Pegasus/Client/tests/DeleteNamespace/DeleteNamespace.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Client/tests/DeleteNamespace/DeleteNamespace.cpp,v retrieving revision 1.18 diff -a -b --context -r1.18 DeleteNamespace.cpp *** src/Pegasus/Client/tests/DeleteNamespace/DeleteNamespace.cpp 17 Oct 2004 20:39:14 -0000 1.18 --- src/Pegasus/Client/tests/DeleteNamespace/DeleteNamespace.cpp 21 Dec 2004 20:13:59 -0000 *************** *** 25,33 **** --- 25,34 ---- // //============================================================================== // // Author: Warren Otsuka (warren_otsuka@hp.com) // // Modified By: Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) +// Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 388,394 **** --- 388,398 ---- om.registerOptions(optionsTable, NUM_OPTIONS); + #if defined (PEGASUS_OS_VMS) + String configFile = "cimserver.conf"; + #else String configFile = pegasusHome + "/cimserver.conf"; + #endif cout << "Config file from " << configFile << endl; *************** Index: src/Pegasus/Common/AcceptLanguageElement.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/AcceptLanguageElement.cpp,v retrieving revision 1.5 diff -a -b --context -r1.5 AcceptLanguageElement.cpp *** src/Pegasus/Common/AcceptLanguageElement.cpp 17 Oct 2004 20:39:16 -0000 1.5 --- src/Pegasus/Common/AcceptLanguageElement.cpp 21 Dec 2004 20:13:59 -0000 *************** *** 25,32 **** // //============================================================================== // // Author: Humberto Rivero (hurivero@us.ibm.com) // !// Modified By: // //%///////////////////////////////////////////////////////////////////////////// --- 25,32 ---- // //============================================================================== // // Author: Humberto Rivero (hurivero@us.ibm.com) // !// Modified By: Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 34,39 **** --- 34,43 ---- #include #include + #if defined(PEGASUS_OS_VMS) + #include + #endif + PEGASUS_NAMESPACE_BEGIN #define PEGASUS_ARRAY_T AcceptLanguageElement Index: src/Pegasus/Common/AnonymousPipe.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/AnonymousPipe.cpp,v retrieving revision 1.2 diff -a -b --context -r1.2 AnonymousPipe.cpp *** src/Pegasus/Common/AnonymousPipe.cpp 17 Oct 2004 20:39:16 -0000 1.2 --- src/Pegasus/Common/AnonymousPipe.cpp 21 Dec 2004 20:14:00 -0000 *************** *** 25,32 **** // //============================================================================== // // Author: Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // !// Modified By: // //%///////////////////////////////////////////////////////////////////////////// --- 25,32 ---- // //============================================================================== // // Author: Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // !// Modified By: Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 45,50 **** --- 45,52 ---- # include "AnonymousPipeWindows.cpp" #elif defined (PEGASUS_OS_TYPE_UNIX) # include "AnonymousPipeUnix.cpp" + #elif defined (PEGASUS_OS_VMS) + # include "AnonymousPipeVms.cpp" #else # error "Unsupported platform" #endif Index: src/Pegasus/Common/AsyncOpNode.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/AsyncOpNode.cpp,v retrieving revision 1.35 diff -a -b --context -r1.35 AsyncOpNode.cpp *** src/Pegasus/Common/AsyncOpNode.cpp 17 Oct 2004 20:39:16 -0000 1.35 --- src/Pegasus/Common/AsyncOpNode.cpp 21 Dec 2004 20:14:00 -0000 *************** *** 25,34 **** --- 25,35 ---- // //============================================================================== // // Author: Mike Day (mdday@us.ibm.com) // // Modified By: Amit K Arora, IBM (amita@in.ibm.com) for Bug#1188 +// Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 34,39 **** --- 34,43 ---- #include #include + #if defined(PEGASUS_OS_VMS) + #include + #endif + PEGASUS_NAMESPACE_BEGIN #if defined(PEGASUS_PLATFORM_WIN32_IX86_MSVC) Index: src/Pegasus/Common/CIMDateTime.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/CIMDateTime.cpp,v retrieving revision 1.45 diff -a -b --context -r1.45 CIMDateTime.cpp *** src/Pegasus/Common/CIMDateTime.cpp 14 Dec 2004 19:16:38 -0000 1.45 --- src/Pegasus/Common/CIMDateTime.cpp 21 Dec 2004 20:14:00 -0000 *************** *** 32,37 **** --- 32,38 ---- // Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // Willis White (whiwill@ibm.com) PEP #192 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 53,58 **** --- 54,61 ---- # include #elif defined(PEGASUS_OS_TYPE_NSK) # include + #elif defined(PEGASUS_OS_VMS) + # include #else # error "Unsupported platform" #endif Index: src/Pegasus/Common/Config.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/Config.h,v retrieving revision 1.51 diff -a -b --context -r1.51 Config.h *** src/Pegasus/Common/Config.h 17 Oct 2004 20:39:17 -0000 1.51 --- src/Pegasus/Common/Config.h 21 Dec 2004 20:14:02 -0000 *************** *** 63,68 **** --- 63,72 ---- # include #elif defined (PEGASUS_PLATFORM_DARWIN_PPC_GNU) # include + #elif defined (PEGASUS_PLATFORM_VMS_ALPHA_DECCXX) + # include + #elif defined (PEGASUS_PLATFORM_VMS_IPF_DECCXX) + # include #else # error ": Unsupported Platform" #endif Index: src/Pegasus/Common/Constants.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/Constants.h,v retrieving revision 1.60 diff -a -b --context -r1.60 Constants.h *** src/Pegasus/Common/Constants.h 6 Dec 2004 13:14:48 -0000 1.60 --- src/Pegasus/Common/Constants.h 21 Dec 2004 20:14:02 -0000 *************** *** 31,36 **** --- 31,37 ---- // (carolann_graves@hp.com) // Yi Zhou, Hewlett-Packard Company (yi.zhou@hp.com) // Willis White (whiwill@us.ibm.com) Bug 1596 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 364,369 **** --- 365,380 ---- # define PEGASUS_PAM_STANDALONE_PROC_NAME "/opt/lsb-pegasus/sbin/cimservera" # undef PEGASUS_PROVIDER_AGENT_PROC_NAME # define PEGASUS_PROVIDER_AGENT_PROC_NAME "/opt/lsb-pegasus/sbin/cimprovagt" + # elif defined(PEGASUS_OS_VMS) + # undef PEGASUS_SSLCLIENT_CERTIFICATEFILE + # define PEGASUS_SSLCLIENT_CERTIFICATEFILE "/var/opt/wbem/client.pem" + # undef PEGASUS_SSLCLIENT_RANDOMFILE + # define PEGASUS_SSLCLIENT_RANDOMFILE "/var/opt/wbem/ssl.rnd" + # undef PEGASUS_SSLSERVER_RANDOMFILE + # define PEGASUS_SSLSERVER_RANDOMFILE "/var/opt/wbem/cimserver.rnd" + # undef PEGASUS_PAM_STANDALONE_PROC_NAME + # undef PEGASUS_PROVIDER_AGENT_PROC_NAME + # define PEGASUS_PROVIDER_AGENT_PROC_NAME "/var/opt/wbem/bin/cimprovagt" # endif #endif Index: src/Pegasus/Common/Dir.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/Dir.cpp,v retrieving revision 1.14 diff -a -b --context -r1.14 Dir.cpp *** src/Pegasus/Common/Dir.cpp 17 Oct 2004 20:39:17 -0000 1.14 --- src/Pegasus/Common/Dir.cpp 21 Dec 2004 20:14:02 -0000 *************** *** 29,34 **** --- 29,35 ---- // // Modified By: Rudy chuet (rudy.schuet@compaq.com) 11/12/01 // added nsk platform support + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 40,45 **** --- 41,48 ---- # include "DirUnix.cpp" #elif defined(PEGASUS_OS_TYPE_NSK) # include "DirNsk.cpp" + #elif defined(PEGASUS_OS_VMS) + # include "DirVms.cpp" #else # error "Unsupported platform" #endif Index: src/Pegasus/Common/DynamicLibrary.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/DynamicLibrary.cpp,v retrieving revision 1.9 diff -a -b --context -r1.9 DynamicLibrary.cpp *** src/Pegasus/Common/DynamicLibrary.cpp 17 Oct 2004 20:39:17 -0000 1.9 --- src/Pegasus/Common/DynamicLibrary.cpp 21 Dec 2004 20:14:03 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Chip Vincent (cvincent@us.ibm.com) // // Modified By: + // Sean Keenan, Hewlett Packard Company // //%///////////////////////////////////////////////////////////////////////////// *************** *** 41,46 **** --- 42,49 ---- # include "DynamicLibraryHPUX.cpp" #elif defined(PEGASUS_OS_TYPE_UNIX) # include "DynamicLibraryUnix.cpp" + #elif defined(PEGASUS_OS_VMS) + # include "DynamicLibraryVms.cpp" #else # error "Unsupported platform" #endif Index: src/Pegasus/Common/DynamicLibrary.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/DynamicLibrary.h,v retrieving revision 1.12 diff -a -b --context -r1.12 DynamicLibrary.h *** src/Pegasus/Common/DynamicLibrary.h 17 Oct 2004 20:39:17 -0000 1.12 --- src/Pegasus/Common/DynamicLibrary.h 21 Dec 2004 20:14:03 -0000 *************** *** 27,33 **** // // Author: Chip Vincent (cvincent@us.ibm.com) // ! // Modified By: // //%///////////////////////////////////////////////////////////////////////////// --- 27,33 ---- // // Author: Chip Vincent (cvincent@us.ibm.com) // ! // Modified By: Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 65,70 **** --- 65,73 ---- #elif defined(PEGASUS_OS_ZOS) typedef dllhandle * LIBRARY_HANDLE; typedef void * LIBRARY_SYMBOL; + #elif defined(PEGASUS_OS_VMS) + typedef void * LIBRARY_HANDLE; + typedef void * LIBRARY_SYMBOL; #endif public: *************** *** 83,92 **** --- 86,109 ---- String getFileName(void) const; LIBRARY_HANDLE getHandle(void) const; LIBRARY_SYMBOL getSymbol(const String & symbolName); + // + // VMS implementation uses OS specific code for these functions. + // + #if defined(PEGASUS_OS_VMS) + LIBRARY_SYMBOL getVmsSymbol(const char* symbolName, const char* fileName, const char *vmsProviderDir); + #endif private: String _fileName; LIBRARY_HANDLE _handle; + // + // Needed to save filename. We do NOT use dlopen and dlsym. + // VMS implementation uses OS specific code for these functions. + // + #if defined(PEGASUS_OS_VMS) + String vmsSaveFileName; + #endif + }; Index: src/Pegasus/Common/FileSystem.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/FileSystem.cpp,v retrieving revision 1.52 diff -a -b --context -r1.52 FileSystem.cpp *** src/Pegasus/Common/FileSystem.cpp 17 Oct 2004 20:39:17 -0000 1.52 --- src/Pegasus/Common/FileSystem.cpp 21 Dec 2004 20:14:03 -0000 *************** *** 31,36 **** --- 31,37 ---- // Ramnath Ravindran(Ramnath.Ravindran@compaq.com) // Amit K Arora, IBM (amita@in.ibm.com) // Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 429,436 **** } path = tempPath.subString(0, pos); tempPath.remove(0,pos+token); ! if (FileSystem::exists( path + "/" + filename ) == true) { root = path + "/" + filename; break; } else { --- 430,441 ---- } path = tempPath.subString(0, pos); tempPath.remove(0,pos+token); ! if (FileSystem::exists( path + "/" + filename) == true) { ! #if defined(PEGASUS_OS_VMS) ! root = filename; ! #else root = path + "/" + filename; + #endif break; } else { *************** *** 456,461 **** --- 461,468 ---- fileName = libraryName; #elif defined(PEGASUS_OS_DARWIN) fileName = String("lib") + libraryName + String(".dylib"); + #elif defined(PEGASUS_OS_VMS) + fileName = String("lib") + libraryName; #else fileName = String("lib") + libraryName + String(".so"); #endif Index: src/Pegasus/Common/HTTPAcceptor.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/HTTPAcceptor.cpp,v retrieving revision 1.52 diff -a -b --context -r1.52 HTTPAcceptor.cpp *** src/Pegasus/Common/HTTPAcceptor.cpp 17 Oct 2004 20:39:17 -0000 1.52 --- src/Pegasus/Common/HTTPAcceptor.cpp 21 Dec 2004 20:14:03 -0000 *************** *** 33,38 **** --- 33,39 ---- // Dave Rosckes (rosckes@us.ibm.com) // Denise Eckstein (denise.eckstein@hp.com) // Alagaraja Ramasubramanian (alags_raj@in.ibm.com) for Bug#1090 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 105,111 **** struct sockaddr* address; ! #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) size_t address_size; #elif defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || (defined(PEGASUS_PLATFORM_SOLARIS_ SPARC_CC) && !defined(SUNOS_5_6)) socklen_t address_size; --- 106,112 ---- struct sockaddr* address; ! #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_OS_VMS) size_t address_size; #elif defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || (defined(PEGASUS_PLATFORM_SOLARIS_ SPARC_CC) && !defined(SUNOS_5_6)) socklen_t address_size; *************** *** 349,355 **** // set the close-on-exec bit for this file handle. // any unix that forks needs this bit set. ! #ifndef PEGASUS_PLATFORM_WIN32_IX86_MSVC int sock_flags; if( (sock_flags = fcntl(_rep->socket, F_GETFD, 0)) < 0) { --- 350,356 ---- // set the close-on-exec bit for this file handle. // any unix that forks needs this bit set. ! #if !defined PEGASUS_PLATFORM_WIN32_IX86_MSVC && !defined(PEGASUS_OS_VMS) int sock_flags; if( (sock_flags = fcntl(_rep->socket, F_GETFD, 0)) < 0) { *************** *** 565,571 **** // Accept the connection (populate the address): struct sockaddr* accept_address; ! #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) size_t address_size; #elif defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || (defined(PEGASUS_OS_SOLARIS) && !d efined(SUNOS_5_6)) socklen_t address_size; --- 566,572 ---- // Accept the connection (populate the address): struct sockaddr* accept_address; ! #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_OS_VMS) size_t address_size; #elif defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || (defined(PEGASUS_OS_SOLARIS) && !d efined(SUNOS_5_6)) socklen_t address_size; *************** *** 605,611 **** } // set the close on exec flag ! #ifndef PEGASUS_PLATFORM_WIN32_IX86_MSVC int sock_flags; if( (sock_flags = fcntl(socket, F_GETFD, 0)) < 0) { --- 606,612 ---- } // set the close on exec flag ! #if !defined PEGASUS_PLATFORM_WIN32_IX86_MSVC && !defined(PEGASUS_OS_VMS) int sock_flags; if( (sock_flags = fcntl(socket, F_GETFD, 0)) < 0) { Index: src/Pegasus/Common/HTTPConnection.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/HTTPConnection.cpp,v retrieving revision 1.85 diff -a -b --context -r1.85 HTTPConnection.cpp *** src/Pegasus/Common/HTTPConnection.cpp 9 Dec 2004 21:49:52 -0000 1.85 --- src/Pegasus/Common/HTTPConnection.cpp 21 Dec 2004 20:14:04 -0000 *************** *** 38,43 **** --- 38,44 ---- // Amit K Arora, IBM (amita@in.ibm.com) for Bug#1097 // Sushma Fernandes, IBM (sushma@hp.com) for Bug#2057 // Brian G. Campbell, EMC (campbell_brian@emc.com) - PEP140/phase2 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 1702,1707 **** --- 1703,1718 ---- } bytesRead += n; + #if defined (PEGASUS_OS_VMS) + // if (n < sizeof(buffer)) + // { + // + // Read is smaller than the buffer size. + // No more to read, continue. + // + // break; + // } + #endif } Tracer::trace(TRC_HTTP, Tracer::LEVEL4, Index: src/Pegasus/Common/IPC.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/IPC.cpp,v retrieving revision 1.29 diff -a -b --context -r1.29 IPC.cpp *** src/Pegasus/Common/IPC.cpp 17 Oct 2004 20:39:17 -0000 1.29 --- src/Pegasus/Common/IPC.cpp 21 Dec 2004 20:14:05 -0000 *************** *** 30,35 **** --- 30,36 ---- // Modified By: Mike Day (mdday@us.ibm.com) // Amit K Arora, IBM (amita@in.ibm.com) for PEP#101 // Alagaraja Ramasubramanian (alags_raj@in.ibm.com) for Bug#1090 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 39,44 **** --- 40,47 ---- # include "IPCWindows.cpp" #elif defined(PEGASUS_OS_TYPE_UNIX) # include "IPCUnix.cpp" + #elif defined(PEGASUS_OS_VMS) + # include "IPCVms.cpp" #else # error "Unsupported platform" #endif Index: src/Pegasus/Common/IPC.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/IPC.h,v retrieving revision 1.37 diff -a -b --context -r1.37 IPC.h *** src/Pegasus/Common/IPC.h 25 Oct 2004 18:26:02 -0000 1.37 --- src/Pegasus/Common/IPC.h 21 Dec 2004 20:14:05 -0000 *************** *** 31,40 **** // Ramnath Ravindran (Ramnath.Ravindran@compaq.com) // David Eger (dteger@us.ibm.com) // Amit K Arora, IBM (amita@in.ibm.com) for PEP#101 // //%///////////////////////////////////////////////////////////////////////////// ! #if !defined(PEGASUS_OS_SOLARIS) && !defined(PEGASUS_OS_LSB) #define PEGASUS_NEED_CRITICAL_TYPE #endif --- 31,41 ---- // Ramnath Ravindran (Ramnath.Ravindran@compaq.com) // David Eger (dteger@us.ibm.com) // Amit K Arora, IBM (amita@in.ibm.com) for PEP#101 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// ! #if !defined(PEGASUS_OS_SOLARIS) && !defined(PEGASUS_OS_LSB) && !defined(PEGASUS_OS_VMS) #define PEGASUS_NEED_CRITICAL_TYPE #endif *************** *** 64,69 **** --- 65,72 ---- # include "IPCOs400.h" #elif defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) # include "IPCUnix.h" + #elif defined(PEGASUS_OS_VMS) + # include "IPCVms.h" #else # error "Unsupported platform" #endif *************** *** 674,679 **** --- 677,684 ---- # include "IPCUnix_inline.h" #elif defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) # include "IPCUnix_inline.h" + #elif defined(PEGASUS_OS_VMS) + # include "IPCVms_inline.h" #endif PEGASUS_NAMESPACE_END Index: src/Pegasus/Common/PegasusVersion.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/PegasusVersion.h,v retrieving revision 1.32 diff -a -b --context -r1.32 PegasusVersion.h *** src/Pegasus/Common/PegasusVersion.h 17 Oct 2004 20:39:17 -0000 1.32 --- src/Pegasus/Common/PegasusVersion.h 21 Dec 2004 20:14:06 -0000 *************** *** 29,34 **** --- 29,35 ---- // // Modified By: Jenny Yu (jenny_yu@hp.com) // Warren Otsuka (warren.otsuka@hp.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 48,53 **** --- 49,58 ---- # include # elif defined(PEGASUS_PLATFORM_LINUX_IA64_GNU) # include + # elif defined(PEGASUS_PLATFORM_VMS_ALPHA_DECCXX) + # include + # elif defined(PEGASUS_PLATFORM_VMS_IPF_DECCXX) + # include # endif #endif Index: src/Pegasus/Common/System.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/System.cpp,v retrieving revision 1.23 diff -a -b --context -r1.23 System.cpp *** src/Pegasus/Common/System.cpp 17 Oct 2004 20:39:17 -0000 1.23 --- src/Pegasus/Common/System.cpp 21 Dec 2004 20:14:07 -0000 *************** *** 34,39 **** --- 34,40 ---- // PEGASUS_OR_IOS_BINARY // Robert Kieninger, IBM (kieningr@de.ibm.com) for Bug#667 // Dave Sudlik, IBM (dsudlik@us.ibm.com) for Bug#1462 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 62,67 **** --- 63,70 ---- # include "SystemUnix.cpp" #elif defined(PEGASUS_OS_TYPE_NSK) # include "SystemNsk.cpp" + #elif defined(PEGASUS_OS_VMS) + # include "SystemVms.cpp" #else # error "Unsupported platform" #endif Index: src/Pegasus/Common/System.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/System.h,v retrieving revision 1.45 diff -a -b --context -r1.45 System.h *** src/Pegasus/Common/System.h 17 Oct 2004 20:39:17 -0000 1.45 --- src/Pegasus/Common/System.h 21 Dec 2004 20:14:07 -0000 *************** *** 32,37 **** --- 32,38 ---- // // Modified By: Dave Rosckes (rosckes@us.ibm.com) // Robert Kieninger, IBM (kieningr@de.ibm.com) for Bug#667 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 60,65 **** --- 61,74 ---- 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 handles returned by the System::loadDynamicLibrary() method and accepted by the System::loadDynamicProcedure() method. *************** *** 142,147 **** --- 151,163 ---- DynamicLibraryHandle libraryHandle, 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 getFullyQualifiedHostName (); static String getSystemCreationClassName (); ================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/Thread.cpp,v retrieving revision 1.72 diff -a -b --context -r1.72 Thread.cpp *** src/Pegasus/Common/Thread.cpp 25 Oct 2004 18:26:02 -0000 1.72 --- src/Pegasus/Common/Thread.cpp 21 Dec 2004 20:14:08 -0000 *************** *** 31,36 **** --- 31,37 ---- // added nsk platform support // Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) // Amit K Arora, IBM (amita@in.ibm.com) for PEP#101 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 45,50 **** --- 46,53 ---- # include "ThreadUnix.cpp" #elif defined(PEGASUS_OS_TYPE_NSK) # include "ThreadNsk.cpp" + #elif defined(PEGASUS_OS_VMS) + # include "ThreadVms.cpp" #else # error "Unsupported platform" #endif *************** *** 71,80 **** Boolean Thread::_signals_blocked = false; // l10n ! #ifndef PEGASUS_OS_ZOS ! PEGASUS_THREAD_KEY_TYPE Thread::_platform_thread_key = -1; ! #else PEGASUS_THREAD_KEY_TYPE Thread::_platform_thread_key; #endif Boolean Thread::_key_initialized = false; Boolean Thread::_key_error = false; --- 74,87 ---- Boolean Thread::_signals_blocked = false; // l10n ! #if defined PEGASUS_OS_ZOS || defined PEGASUS_OS_VMS ! // ! // These platforms have PEGASUS_THREAD_KEY_TYPE defined ! // as unsigned int! ! // PEGASUS_THREAD_KEY_TYPE Thread::_platform_thread_key; + #else + PEGASUS_THREAD_KEY_TYPE Thread::_platform_thread_key = -1; #endif Boolean Thread::_key_initialized = false; Boolean Thread::_key_error = false; Index: src/Pegasus/Common/Thread.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/Thread.h,v retrieving revision 1.42 diff -a -b --context -r1.42 Thread.h *** src/Pegasus/Common/Thread.h 17 Oct 2004 20:39:17 -0000 1.42 --- src/Pegasus/Common/Thread.h 21 Dec 2004 20:14:08 -0000 *************** *** 30,35 **** --- 30,36 ---- // Modified By: Markus Mueller // Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) // Amit K Arora, IBM (amita@in.ibm.com) for PEP#101 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 630,635 **** --- 631,638 ---- # include "ThreadzOS_inline.h" #elif defined(PEGASUS_OS_TYPE_UNIX) # include "ThreadUnix_inline.h" + #elif defined(PEGASUS_OS_VMS) + # include "ThreadVms_inline.h" #endif PEGASUS_NAMESPACE_END Index: src/Pegasus/Common/TraceFileHandler.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/TraceFileHandler.cpp,v retrieving revision 1.17 diff -a -b --context -r1.17 TraceFileHandler.cpp *** src/Pegasus/Common/TraceFileHandler.cpp 17 Oct 2004 20:39:17 -0000 1.17 --- src/Pegasus/Common/TraceFileHandler.cpp 21 Dec 2004 20:14:08 -0000 *************** *** 30,35 **** --- 30,36 ---- // Modified By: Rudy Schuet (rudy.schuet@compaq.com) 11/12/01 // added nsk platform support // Amit K Arora, IBM (amita@in.ibm.com) for Bug#1527 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 44,49 **** --- 45,52 ---- # include #elif defined(PEGASUS_OS_TYPE_NSK) # include + #elif defined(PEGASUS_OS_VMS) + # include #else # error "Unsupported platform" #endif Index: src/Pegasus/Common/XmlReader.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/XmlReader.cpp,v retrieving revision 1.105 diff -a -b --context -r1.105 XmlReader.cpp *** src/Pegasus/Common/XmlReader.cpp 17 Oct 2004 20:39:18 -0000 1.105 --- src/Pegasus/Common/XmlReader.cpp 21 Dec 2004 20:14:09 -0000 *************** *** 31,43 **** // (carolann_graves@hp.com) // Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com) // Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) // //%///////////////////////////////////////////////////////////////////////////// #include #include #include #include ! #if defined(PEGASUS_OS_TYPE_UNIX) #include #endif #include "CIMName.h" --- 31,44 ---- // (carolann_graves@hp.com) // Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com) // Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// #include #include #include #include ! #if defined(PEGASUS_OS_TYPE_UNIX) || defined(PEGASUS_OS_VMS) #include #endif #include "CIMName.h" Index: src/Pegasus/Common/pegasus_socket.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/pegasus_socket.h,v retrieving revision 1.15 diff -a -b --context -r1.15 pegasus_socket.h *** src/Pegasus/Common/pegasus_socket.h 7 Dec 2004 22:43:14 -0000 1.15 --- src/Pegasus/Common/pegasus_socket.h 21 Dec 2004 20:14:10 -0000 *************** *** 29,34 **** --- 29,36 ---- // // Modified By: Amit Arora (amita@in.ibm.com) for Bug#1170 // Heather Sterling, IBM (hsterl@us.ibm.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) + // //%///////////////////////////////////////////////////////////////////////////// *************** *** 70,76 **** PEGASUS_NAMESPACE_BEGIN ! #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) typedef size_t PEGASUS_SOCKLEN_SIZE; #elif defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || (defined(PEGASUS_OS_SOLARIS) && !d efined(SUNOS_5_6)) --- 72,78 ---- PEGASUS_NAMESPACE_BEGIN ! #if defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_OS_VMS) typedef size_t PEGASUS_SOCKLEN_SIZE; #elif defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || (defined(PEGASUS_OS_SOLARIS) && !d efined(SUNOS_5_6)) Index: src/Pegasus/Common/tests/AnonymousPipe/Child/Child.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/tests/AnonymousPipe/Child/Child.cpp,v retrieving revision 1.4 diff -a -b --context -r1.4 Child.cpp *** src/Pegasus/Common/tests/AnonymousPipe/Child/Child.cpp 17 Oct 2004 20:39:22 -0000 1.4 --- src/Pegasus/Common/tests/AnonymousPipe/Child/Child.cpp 21 Dec 2004 20:14:11 -0000 *************** *** 29,34 **** --- 29,35 ---- // (carolann_graves@hp.com) // // Modified By: Seema Gupta (gseema@in.ibm.com) for PEP135 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 37,42 **** --- 38,50 ---- #include #include + #if defined (PEGASUS_OS_VMS) + #include + #include + #include + #include + #endif + PEGASUS_USING_PEGASUS; PEGASUS_USING_STD; *************** *** 66,71 **** --- 74,89 ---- AutoPtr pipeToParent (new AnonymousPipe (NULL, writeHandle)); + #if defined (PEGASUS_OS_VMS) + // + // Child: Close parent handles + // + pipeFromParent->closeWriteHandle (); + pipeToParent->closeReadHandle (); + #endif + #if defined (PEGASUS_OS_VMS) + #else + #endif // // Test readBuffer and writeBuffer // Index: src/Pegasus/Common/tests/AnonymousPipe/Parent/AnonymousPipe.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/tests/AnonymousPipe/Parent/AnonymousPipe.cpp,v retrieving revision 1.6 diff -a -b --context -r1.6 AnonymousPipe.cpp *** src/Pegasus/Common/tests/AnonymousPipe/Parent/AnonymousPipe.cpp 17 Oct 2004 20:39:22 -0000 1.6 --- src/Pegasus/Common/tests/AnonymousPipe/Parent/AnonymousPipe.cpp 21 Dec 2004 20:14:12 -0000 *************** *** 25,33 **** --- 25,34 ---- // //============================================================================== // // Author: Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // // Modified By: Seema Gupta (gseema@in.ibm.com) for PEP135 +// Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 46,51 **** --- 46,59 ---- #include #elif defined (PEGASUS_OS_OS400) # include + #elif defined (PEGASUS_OS_VMS) + # include + # include + # include + # include + # include + # include + # include #else # include #endif *************** *** 126,131 **** --- 135,190 ---- << endl; PEGASUS_ASSERT (0); } + #elif defined (PEGASUS_OS_VMS) + // + // fork and exec the child process + // + int status, + cstatus; + + status = vfork (); + switch (status) + { + case 0: + if ((status = execl ((const char *) childPathCStr, + (const char *) childPathCStr, + childReadHandle.get (), + childWriteHandle.get (), + (char *) 0)) + == -1) + { + // + // execl failed: close pipe handles + // + pipeToChild->closeReadHandle (); + pipeToChild->closeWriteHandle (); + pipeFromChild->closeReadHandle (); + pipeFromChild->closeWriteHandle (); + + cerr << "Parent failed to execl: " << strerror (errno) << endl; + PEGASUS_ASSERT (0); + } + break; + + case -1: + // + // fork failed: close pipe handles + // + pipeToChild->closeReadHandle (); + pipeToChild->closeWriteHandle (); + pipeFromChild->closeReadHandle (); + pipeFromChild->closeWriteHandle (); + + cerr << "Parent failed to fork: " << strerror (errno) << endl; + PEGASUS_ASSERT (0); + break; + + default: + // + // Parent: Close child handles + // + pipeToChild->closeReadHandle (); + pipeFromChild->closeWriteHandle (); #else // // fork and exec the child process *************** *** 348,353 **** --- 407,417 ---- readBufferStatus = pipeFromChild->readBuffer ((char *) &bufferLength, sizeof (Uint32)); PEGASUS_ASSERT (readBufferStatus == AnonymousPipe::STATUS_CLOSED); + + #if defined (PEGASUS_OS_VMS) + break; + } + #endif } catch (Exception & e) { Index: src/Pegasus/Common/tests/DynamicLibrary/DynamicLibrary.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/tests/DynamicLibrary/DynamicLibrary.cpp,v retrieving revision 1.10 diff -a -b --context -r1.10 DynamicLibrary.cpp *** src/Pegasus/Common/tests/DynamicLibrary/DynamicLibrary.cpp 17 Oct 2004 20:39:25 -0000 1.10 --- src/Pegasus/Common/tests/DynamicLibrary/DynamicLibrary.cpp 21 Dec 2004 20:14:14 -0000 *************** *** 25,32 **** // //============================================================================== // // Author: Chip Vincent (cvincent@us.ibm.com) // !// Modified By: // //%///////////////////////////////////////////////////////////////////////////// --- 25,32 ---- // //============================================================================== // // Author: Chip Vincent (cvincent@us.ibm.com) // !// Modified By: Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 46,51 **** --- 46,54 ---- #elif defined(PEGASUS_OS_DARWIN) static const String VALID_FILE_NAME = "libDynLib.dylib"; static const String INVALID_FILE_NAME = "libBADDynLib.dylib"; + #elif defined(PEGASUS_OS_VMS) + static const String VALID_FILE_NAME = "TestDynLib"; + static const String INVALID_FILE_NAME = "BADTestDynLib"; #else static const String VALID_FILE_NAME = "libDynLib.so"; static const String INVALID_FILE_NAME = "libBADDynLib.so"; Index: src/Pegasus/Common/tests/Flavor/Flavor.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/tests/Flavor/Flavor.cpp,v retrieving revision 1.6 diff -a -b --context -r1.6 Flavor.cpp *** src/Pegasus/Common/tests/Flavor/Flavor.cpp 17 Oct 2004 20:39:26 -0000 1.6 --- src/Pegasus/Common/tests/Flavor/Flavor.cpp 21 Dec 2004 20:14:15 -0000 *************** *** 25,33 **** // //============================================================================== // // Author: Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // !// Modified By: // //%///////////////////////////////////////////////////////////////////////////// --- 25,33 ---- // //============================================================================== // // Author: Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // !// Modified By: Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 50,56 **** void test01 () { ! #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) static const CIMFlavor CIMFLAVOR_ALL = CIMFlavor::OVERRIDABLE + CIMFlavor::TOSUBCLASS + CIMFlavor::TOINSTANCE + CIMFlavor::TRANSLATABLE + CIMFlavor::DISABLEOVERRIDE + CIMFlavor::RESTRICTED; --- 50,56 ---- void test01 () { ! #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) || defined (PEGASUS_OS_VMS) static const CIMFlavor CIMFLAVOR_ALL = CIMFlavor::OVERRIDABLE + CIMFlavor::TOSUBCLASS + CIMFlavor::TOINSTANCE + CIMFlavor::TRANSLATABLE + CIMFlavor::DISABLEOVERRIDE + CIMFlavor::RESTRICTED; Index: src/Pegasus/Common/tests/Qualifier/Qualifier.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/tests/Qualifier/Qualifier.cpp,v retrieving revision 1.25 diff -a -b --context -r1.25 Qualifier.cpp *** src/Pegasus/Common/tests/Qualifier/Qualifier.cpp 17 Oct 2004 20:39:30 -0000 1.25 --- src/Pegasus/Common/tests/Qualifier/Qualifier.cpp 21 Dec 2004 20:14:18 -0000 *************** *** 25,35 **** --- 25,36 ---- // //============================================================================== // // Author: Mike Brasher (mbrasher@bmc.com) // // Modified By: Karl Schopmeyer (k.schopemyer@opengroup.org) // Mar 2002 - Add more tests for flavors // Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) +// Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 56,62 **** */ int main(int argc, char** argv) { ! #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) static const CIMFlavor CIMFLAVOR_ALL = CIMFlavor::OVERRIDABLE + CIMFlavor::TOSUBCLASS + CIMFlavor::TOINSTANCE + CIMFlavor::TRANSLATABLE + CIMFlavor::DISABLEOVERRIDE + CIMFlavor::RESTRICTED; --- 56,62 ---- */ int main(int argc, char** argv) { ! #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) || defined (PEGASUS_OS_VMS) static const CIMFlavor CIMFLAVOR_ALL = CIMFlavor::OVERRIDABLE + CIMFlavor::TOSUBCLASS + CIMFlavor::TOINSTANCE + CIMFlavor::TRANSLATABLE + CIMFlavor::DISABLEOVERRIDE + CIMFlavor::RESTRICTED; Index: src/Pegasus/Common/tests/Thread/Thread.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Common/tests/Thread/Thread.cpp,v retrieving revision 1.12 diff -a -b --context -r1.12 Thread.cpp *** src/Pegasus/Common/tests/Thread/Thread.cpp 17 Oct 2004 20:39:33 -0000 1.12 --- src/Pegasus/Common/tests/Thread/Thread.cpp 21 Dec 2004 20:14:19 -0000 *************** *** 29,34 **** --- 29,36 ---- // // Modified By: // Steve Hills (steve.hills@ncr.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) + // //%///////////////////////////////////////////////////////////////////////////// #include *************** *** 415,425 **** // Simulate a deadlocked thread while( true ) { ! #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) pthread_testcancel(); ! #endif pegasus_sleep( 2000 ); } --- 431,445 ---- // Simulate a deadlocked thread while( true ) { ! #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) || defined(PEGASUS_OS_VMS) ! // ! // sleep is NOT a thread cancellation point ! // for VMS. ! // pthread_testcancel(); ! #endif pegasus_sleep( 2000 ); } Index: src/Pegasus/Compiler/cimmof.y =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Compiler/cimmof.y,v retrieving revision 1.36 diff -a -b --context -r1.36 cimmof.y *** src/Pegasus/Compiler/cimmof.y 28 Aug 2004 13:19:19 -0000 1.36 --- src/Pegasus/Compiler/cimmof.y 21 Dec 2004 20:14:22 -0000 *************** *** 38,44 **** #define YYSTACKSIZE 2000 #include ! #if !defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) && !defined(__OS400__) #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) #include #else --- 38,44 ---- #define YYSTACKSIZE 2000 #include ! #if !defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) && !defined(__OS400__) && !defined(PEGASUS_OS_VMS) #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) #include #else Index: src/Pegasus/Compiler/cimmof_tab.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Compiler/cimmof_tab.cpp,v retrieving revision 1.31 diff -a -b --context -r1.31 cimmof_tab.cpp *** src/Pegasus/Compiler/cimmof_tab.cpp 17 Oct 2004 20:39:36 -0000 1.31 --- src/Pegasus/Compiler/cimmof_tab.cpp 21 Dec 2004 20:14:24 -0000 *************** *** 105,111 **** #define YYSTACKSIZE 2000 #include ! #if !defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) && !defined(__OS400__) #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) #include #else --- 105,111 ---- #define YYSTACKSIZE 2000 #include ! #if !defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) && !defined(__OS400__) && !defined(PEGASUS_OS_VMS) #if defined(PEGASUS_PLATFORM_DARWIN_PPC_GNU) #include #else Index: src/Pegasus/Compiler/parser.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Compiler/parser.cpp,v retrieving revision 1.17 diff -a -b --context -r1.17 parser.cpp *** src/Pegasus/Compiler/parser.cpp 17 Oct 2004 20:39:36 -0000 1.17 --- src/Pegasus/Compiler/parser.cpp 21 Dec 2004 20:14:24 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Bob Blair (bblair@bmc.com) // // Modified By: + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 63,69 **** //------------------------------------------------------------------- int parser::setInputBufferFromName(const String &filename) { ! #ifdef PEGASUS_PLATFORM_OS400_ISERIES_IBM // 't' not supported on OS/400 FILE *f = fopen(filename.getCString(),"r"); #else --- 64,70 ---- //------------------------------------------------------------------- int parser::setInputBufferFromName(const String &filename) { ! #if defined PEGASUS_PLATFORM_OS400_ISERIES_IBM || defined (PEGASUS_OS_VMS) // 't' not supported on OS/400 FILE *f = fopen(filename.getCString(),"r"); #else Index: src/Pegasus/Compiler/load/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Compiler/load/Makefile,v retrieving revision 1.26 diff -a -b --context -r1.26 Makefile *** src/Pegasus/Compiler/load/Makefile 9 Aug 2004 23:29:57 -0000 1.26 --- src/Pegasus/Compiler/load/Makefile 21 Dec 2004 20:14:25 -0000 *************** *** 34,40 **** --- 34,44 ---- @ $(ECHO) WARNING - This Makefile is deprecated and will be removed in the near future @ $(ECHO) Please use the equivalent makefile in Schemas @ $(ECHO) +++++ Removing existing repository named $(REPOSITORY_ROOT) + ifeq ($(OS),VMS) + @ $(RMREPOSITORY) $(REPOSITORY_VMSROOT) + else @ $(RMREPOSITORY) $(REPOSITORY_ROOT) + endif @ $(ECHO) +++++ Populating CIM repository - this will take a while @ $(ECHO) +++++ Loading CIM_Core$(SCHEMA_VER).mof into root namespace... cimmof "-I$(MOF_PATH)" -nroot $(MOF_PATH)/CIM_Core$(SCHEMA_VER).mof *************** *** 46,61 **** # deleted since there is no use for it any more. short: @ $(ECHO) +++++ Populating CIM repository - this will take a minute @ $(RMREPOSITORY) $(REPOSITORY_ROOT) $(ECHO) +++++ Loading CIM_Core.mof into root namespace... cimmof "-I$(MOF_PATH)" "-n$(NAMESPACE)" $(MOF_PATH)/CIM_Core$(SCHEMA_VER).mof clean: @ $(ECHO) +++++ Removing existing CIM Repository named $(REPOSITORY_ROOT) @ $(RMREPOSITORY) $(REPOSITORY_ROOT) install: @echo Deprecated. Will use the one defined in Schema directory. depend: sub: --- 50,73 ---- # deleted since there is no use for it any more. short: @ $(ECHO) +++++ Populating CIM repository - this will take a minute + ifeq ($(OS),VMS) + @ $(RMREPOSITORY) $(REPOSITORY_VMSROOT) + else @ $(RMREPOSITORY) $(REPOSITORY_ROOT) + endif $(ECHO) +++++ Loading CIM_Core.mof into root namespace... cimmof "-I$(MOF_PATH)" "-n$(NAMESPACE)" $(MOF_PATH)/CIM_Core$(SCHEMA_VER).mof clean: @ $(ECHO) +++++ Removing existing CIM Repository named $(REPOSITORY_ROOT) + ifeq ($(OS),VMS) + @ $(RMREPOSITORY) $(REPOSITORY_VMSROOT) + else @ $(RMREPOSITORY) $(REPOSITORY_ROOT) + endif install: @echo Deprecated. Will use the one defined in Schema directory. depend: sub: Index: src/Pegasus/Config/ConfigFileDir.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Config/ConfigFileDir.h,v retrieving revision 1.10 diff -a -b --context -r1.10 ConfigFileDir.h *** src/Pegasus/Config/ConfigFileDir.h 17 Oct 2004 20:39:37 -0000 1.10 --- src/Pegasus/Config/ConfigFileDir.h 21 Dec 2004 20:14:25 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Warren Otsuka, Hewlett-Packard Company (warren.otsuka@hp.com) // // Modified By: Jenny Yu, Hewlett-Packard Company (jenny.yu@hp.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 44,49 **** --- 45,52 ---- #include "ConfigFileDirAix.h" #elif PEGASUS_PLATFORM_DARWIN_PPC_GNU #include "ConfigFileDirDarwin.h" + #elif defined (PEGASUS_OS_VMS) + #include "ConfigFileDirVms.h" #else /** Default file name for the current configuration. Index: src/Pegasus/Config/DefaultPropertyTable.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Config/DefaultPropertyTable.h,v retrieving revision 1.19 diff -a -b --context -r1.19 DefaultPropertyTable.h *** src/Pegasus/Config/DefaultPropertyTable.h 17 Oct 2004 20:39:37 -0000 1.19 --- src/Pegasus/Config/DefaultPropertyTable.h 21 Dec 2004 20:14:25 -0000 *************** *** 29,34 **** --- 29,35 ---- // // Modified By: Jenny Yu, Hewlett-Packard Company (jenny.yu@hp.com) // Heather Sterling, IBM (hsterl@us.ibm.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 41,46 **** --- 42,49 ---- #include "DefaultPropertyTableHpux.h" #elif defined(PEGASUS_PLATFORM_OS400_ISERIES_IBM) #include "DefaultPropertyTableOS400.h" + #elif defined (PEGASUS_OS_VMS) + #include "DefaultPropertyTableVms.h" #else {"httpPort", "5988", 0, 0, 0, 1}, {"httpsPort", "5989", 0, 0, 0, 1}, Index: src/Pegasus/Config/FixedPropertyTable.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/Config/FixedPropertyTable.h,v retrieving revision 1.8 diff -a -b --context -r1.8 FixedPropertyTable.h *** src/Pegasus/Config/FixedPropertyTable.h 17 Oct 2004 20:39:37 -0000 1.8 --- src/Pegasus/Config/FixedPropertyTable.h 21 Dec 2004 20:14:27 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Warren Otsuka, Hewlett-Packard Company (warren.otsuka@hp.com) // // Modified By: Jenny Yu, Hewlett-Packard Company (jenny.yu@hp.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 42,47 **** --- 43,50 ---- #include "FixedPropertyTableOS400.h" #elif defined(PEGASUS_PLATFORM_AIX_RS_IBMCXX) #include "FixedPropertyTableAix.h" + #elif defined (PEGASUS_OS_VMS) + #include "FixedPropertyTableVms.h" #else {"bogus", "MyBogusValue"} // Remove this line if others are added #endif Index: src/Pegasus/HandlerService/HandlerTable.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/HandlerService/HandlerTable.cpp,v retrieving revision 1.12 diff -a -b --context -r1.12 HandlerTable.cpp *** src/Pegasus/HandlerService/HandlerTable.cpp 17 Oct 2004 20:39:54 -0000 1.12 --- src/Pegasus/HandlerService/HandlerTable.cpp 21 Dec 2004 20:14:30 -0000 *************** *** 25,34 **** --- 25,35 ---- // //============================================================================== // // Author: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com) // // Modified By: Sushma Fernandes, // Hewlett-Packard Company (sushma_fernandes@hp.com) // : Yi Zhou Hewlett-Packard Company (yi_zhou@hp.com) +// Sean Keenan (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 61,74 **** CIMHandler* HandlerTable::loadHandler(const String& handlerId) { ! String fileName = ConfigManager::getHomedPath(PEGASUS_DEST_LIB_DIR) + ! String("/") + FileSystem::buildLibraryFileName(handlerId); DynamicLibraryHandle libraryHandle = System::loadDynamicLibrary(fileName.getCString()); if (!libraryHandle) { ! #ifdef PEGASUS_OS_TYPE_WINDOWS throw DynamicLoadFailed(fileName); #else String errorMsg = System::dynamicLoadError(); --- 61,78 ---- CIMHandler* HandlerTable::loadHandler(const String& handlerId) { ! #if defined (PEGASUS_OS_VMS) ! String fileName = FileSystem::buildLibraryFileName(handlerId); ! #else ! String fileName = ConfigManager::getHomedPath((PEGASUS_DEST_LIB_DIR) + ! String("/") + FileSystem::buildLibraryFileName(handlerId)); ! #endif DynamicLibraryHandle libraryHandle = System::loadDynamicLibrary(fileName.getCString()); if (!libraryHandle) { ! #if defined(PEGASUS_OS_TYPE_WINDOWS) || defined(PEGASUS_OS_VMS) throw DynamicLoadFailed(fileName); #else String errorMsg = System::dynamicLoadError(); Index: src/Pegasus/IndicationService/tests/IndicationProcess/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/IndicationService/tests/IndicationProcess/Makefile,v retrieving revision 1.5 diff -a -b --context -r1.5 Makefile *** src/Pegasus/IndicationService/tests/IndicationProcess/Makefile 29 Jun 2004 20:57:47 -0000 1.5 --- src/Pegasus/IndicationService/tests/IndicationProcess/Makefile 21 Dec 2004 20:14:34 -0000 *************** *** 10,16 **** SOURCES = IndicationProcess.cpp include $(ROOT)/mak/program.mak tests: --- 10,20 ---- SOURCES = IndicationProcess.cpp + ifeq ($(OS),VMS) + LOCAL_DEFINES = -DINDICATION_DIR="""$(DISPLAYCONSUMER_DIR)""" -DPEGASUS_INTERNALONLY + endif + include $(ROOT)/mak/program.mak tests: Index: src/Pegasus/IndicationService/tests/ProcessIndication/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/IndicationService/tests/ProcessIndication/Makefile,v retrieving revision 1.4 diff -a -b --context -r1.4 Makefile *** src/Pegasus/IndicationService/tests/ProcessIndication/Makefile 14 Dec 2004 13:32:28 -0000 1.4 --- src/Pegasus/IndicationService/tests/ProcessIndication/Makefile 21 Dec 2004 20:14:35 -0000 *************** *** 11,16 **** --- 11,20 ---- SOURCES = ProcessIndication.cpp + ifeq ($(OS),VMS) + LOCAL_DEFINES = -DINDICATION_DIR="""$(DISPLAYCONSUMER_DIR)""" -DPEGASUS_INTERNALONLY + endif + include $(ROOT)/mak/program.mak tests: Index: src/Pegasus/ProviderManager/ProviderManagerService.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager/ProviderManagerService.cpp,v retrieving revision 1.132 diff -a -b --context -r1.132 ProviderManagerService.cpp *** src/Pegasus/ProviderManager/ProviderManagerService.cpp 17 Oct 2004 20:39:58 -0000 1.132 --- src/Pegasus/ProviderManager/ProviderManagerService.cpp 21 Dec 2004 20:14:39 -0000 *************** *** 25,39 **** --- 25,40 ---- // //============================================================================== // // Author: Chip Vincent (cvincent@us.ibm.com) // // Modified By: Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // Mike Day, IBM (mdday@us.ibm.com) // Karl Schopmeyer(k.schopmeyer@opengroup.org) - Fix associators. // Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com) // Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) // Amit K Arora (amita@in.ibm.com) for PEP-101 // Seema Gupta (gseema@in.ibm.com) for PEP135 +// Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 231,236 **** --- 231,238 ---- fileName = location; #elif defined(PEGASUS_OS_DARWIN) fileName.append(String("lib") + location + String(".dylib")); + #elif defined(PEGASUS_OS_VMS) + fileName = location + String (".exe"); #else fileName.append(String("lib") + location + String(".so")); #endif *************** *** 336,341 **** --- 338,345 ---- fileName = Location; #elif defined(PEGASUS_OS_DARWIN) fileName = String("lib") + Location + String(".dylib"); + #elif defined(PEGASUS_OS_VMS) + fileName = Location + String(".exe"); #else fileName = String("lib") + Location + String(".so"); #endif Index: src/Pegasus/ProviderManager/ProviderModule.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager/ProviderModule.cpp,v retrieving revision 1.32 diff -a -b --context -r1.32 ProviderModule.cpp *** src/Pegasus/ProviderManager/ProviderModule.cpp 19 Nov 2004 20:49:48 -0000 1.32 --- src/Pegasus/ProviderManager/ProviderModule.cpp 21 Dec 2004 20:14:39 -0000 *************** *** 25,35 **** --- 25,36 ---- // //============================================================================== // // Author: Chip Vincent (cvincent@us.ibm.com) // // Modified By: Yi Zhou, Hewlett-Packard Company(yi_zhou@hp.com) // Mike Day IBM Corporation (mdday@us.ibm.com) // Adrian Schuur, schuur@de.ibm.com // Jenny Yu, Hewlett-Packard Company (jenny_yu@hp.com) +// Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 94,99 **** --- 94,101 ---- #elif defined(PEGASUS_OS_DARWIN) _interfaceFileName= String("lib")+interfaceName+String("Adapter.dylib"); + #elif defined(PEGASUS_OS_VMS) + _interfaceFileName=interfaceName+String("Adapter.exe"); #else _interfaceFileName= String("lib")+interfaceName+String("Adapter.so"); Index: src/Pegasus/ProviderManager2/BasicProviderManagerRouter.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager2/BasicProviderManagerRouter.cpp,v retrieving revision 1.14 diff -a -b --context -r1.14 BasicProviderManagerRouter.cpp *** src/Pegasus/ProviderManager2/BasicProviderManagerRouter.cpp 17 Oct 2004 20:40:00 -0000 1.14 --- src/Pegasus/ProviderManager2/BasicProviderManagerRouter.cpp 21 Dec 2004 20:14:39 -0000 *************** *** 29,34 **** --- 29,35 ---- // Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) // // Modified By: Seema Gupta(gseema@in.ibm.com) for PEP135 + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 79,86 **** --- 80,91 ---- PEGASUS_INDICATION_CALLBACK indicationCallback) : _manager(0) { + #if defined (PEGASUS_OS_VMS) + _physicalName = FileSystem::buildLibraryFileName(physicalName); + #else _physicalName = ConfigManager::getHomedPath(PEGASUS_DEST_LIB_DIR) + String("/") + FileSystem::buildLibraryFileName(physicalName); + #endif _logicalName = logicalName; _interfaceName = interfaceName; Index: src/Pegasus/ProviderManager2/OOPProviderManagerRouter.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager2/OOPProviderManagerRouter.cpp,v retrieving revision 1.5 diff -a -b --context -r1.5 OOPProviderManagerRouter.cpp *** src/Pegasus/ProviderManager2/OOPProviderManagerRouter.cpp 17 Oct 2004 20:40:00 -0000 1.5 --- src/Pegasus/ProviderManager2/OOPProviderManagerRouter.cpp 21 Dec 2004 20:14:40 -0000 *************** *** 25,33 **** // //============================================================================== // // Author: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) // Jenny Yu, Hewlett-Packard Company (jenny_yu@hp.com) // !// Modified By: // //%///////////////////////////////////////////////////////////////////////////// --- 25,33 ---- // //============================================================================== // // Author: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) // Jenny Yu, Hewlett-Packard Company (jenny_yu@hp.com) // !// Modified By: Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 49,62 **** #include #if defined (PEGASUS_OS_TYPE_WINDOWS) ! #include // For CreateProcess() ! #else ! # if defined (PEGASUS_OS_OS400) # include ! # else # include // For fork(), exec(), and _exit() ! # endif ! #include #endif #include "OOPProviderManagerRouter.h" --- 49,68 ---- #include #if defined (PEGASUS_OS_TYPE_WINDOWS) ! # include // For CreateProcess() ! #elif defined (PEGASUS_OS_OS400) # include ! #elif defined (PEGASUS_OS_VMS) ! # include ! # include ! # include ! # include ! # include ! # include ! # include ! #else # include // For fork(), exec(), and _exit() ! # include #endif #include "OOPProviderManagerRouter.h" *************** *** 329,334 **** --- 335,403 ---- CloseHandle(piProcInfo.hProcess); CloseHandle(piProcInfo.hThread); + + #elif defined (PEGASUS_OS_VMS) + + // + // fork and exec the child process + // + int status; + + status = vfork (); + switch (status) + { + case 0: + try + { + // + // Execute the cimprovagt program + // + String agentCommandPath = + ConfigManager::getHomedPath(PEGASUS_PROVIDER_AGENT_PROC_NAME); + CString agentCommandPathCString = agentCommandPath.getCString(); + + char readHandle[32]; + char writeHandle[32]; + pipeToAgent->exportReadHandle(readHandle); + pipeFromAgent->exportWriteHandle(writeHandle); + + if ((status = execl(agentCommandPathCString, agentCommandPathCString, + readHandle, writeHandle, + (const char*)_moduleName.getCString(), (char*)0)) == -1); + { + // If we're still here, there was an error + Tracer::trace(TRC_DISCARDED_DATA, Tracer::LEVEL2, + "execl() failed. errno = %d.", errno); + _exit(1); + } + break; + } + catch (...) + { + // There's not much we can do here in no man's land + try + { + PEG_TRACE_STRING(TRC_DISCARDED_DATA, Tracer::LEVEL2, + "Caught exception before calling execl()."); + } + catch (...) + { + } + _exit(1); + } + break; + + case -1: + Tracer::trace(TRC_PROVIDERMANAGER, Tracer::LEVEL2, + "fork() failed. errno = %d.", errno); + PEG_METHOD_EXIT(); + throw Exception(MessageLoaderParms( + "ProviderManager.OOPProviderManagerRouter.CIMPROVAGT_START_FAILED", + "Failed to start cimprovagt \"$0\".", + _moduleName)); + break; + + default: #else pid_t pid = fork(); if (pid < 0) *************** *** 400,405 **** --- 469,481 ---- _pipeFromAgent.reset(pipeFromAgent.release()); PEG_METHOD_EXIT(); + + #if defined (PEGASUS_OS_VMS) + // + // Denote end of switch + // + } + #endif } // Note: Caller must lock _agentMutex Index: src/Pegasus/ProviderManager2/ProviderManager.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager2/ProviderManager.cpp,v retrieving revision 1.15 diff -a -b --context -r1.15 ProviderManager.cpp *** src/Pegasus/ProviderManager2/ProviderManager.cpp 17 Oct 2004 20:40:01 -0000 1.15 --- src/Pegasus/ProviderManager2/ProviderManager.cpp 21 Dec 2004 20:14:40 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Chip Vincent (cvincent@us.ibm.com) // // Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) + // Sean Keenan, Hewlett-Packard Company // //%///////////////////////////////////////////////////////////////////////////// *************** *** 49,60 **** --- 50,79 ---- { String fileName = FileSystem::buildLibraryFileName(physicalName); + #if defined(PEGASUS_OS_VMS) + String temp; + + temp = fileName + String(".exe"); + + temp = FileSystem::getAbsoluteFileName( + ConfigManager::getHomedPath( + getenv("PEGASUS_SYSSHAREA")), temp); + if (temp == String::EMPTY) + { + return temp; + } + else + { + return fileName; + } + #else fileName = FileSystem::getAbsoluteFileName( ConfigManager::getHomedPath( ConfigManager::getInstance()->getCurrentValue("providerDir")), fileName); return fileName; + #endif } void ProviderManager::setIndicationCallback( Index: src/Pegasus/ProviderManager2/CMPI/CMPI_DateTime.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager2/CMPI/CMPI_DateTime.cpp,v retrieving revision 1.9 diff -a -b --context -r1.9 CMPI_DateTime.cpp *** src/Pegasus/ProviderManager2/CMPI/CMPI_DateTime.cpp 17 Oct 2004 20:40:01 -0000 1.9 --- src/Pegasus/ProviderManager2/CMPI/CMPI_DateTime.cpp 21 Dec 2004 20:14:40 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Adrian Schuur, schuur@de.ibm.com // // Modified By: + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 109,116 **** --- 110,121 ---- CMPIDateTime *newDateTime() { struct timeval tv; + #if defined (PEGASUS_OS_VMS) + gettimeofday(&tv,NULL); + #else struct timezone tz; gettimeofday(&tv,&tz); + #endif return (CMPIDateTime*)new CMPI_Object(makeCIMDateTime(tv.tv_sec,tv.tv_usec,0)); } Index: src/Pegasus/ProviderManager2/CMPI/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager2/CMPI/Makefile,v retrieving revision 1.11 diff -a -b --context -r1.11 Makefile *** src/Pegasus/ProviderManager2/CMPI/Makefile 29 Jun 2004 20:57:47 -0000 1.11 --- src/Pegasus/ProviderManager2/CMPI/Makefile 21 Dec 2004 20:14:42 -0000 *************** *** 45,49 **** CMPI_Predicate.cpp \ CMPI_SelectExpAccessor.cpp include $(ROOT)/mak/library.mak include $(ROOT)/mak/install.mak --- 45,61 ---- CMPI_Predicate.cpp \ CMPI_SelectExpAccessor.cpp ! ifeq ($(OS),VMS) ! # ! # Large number of objects causes command line to be too long. ! # Added them to the linker options file. ! # ! OBJECTS_IN_OPTIONFILE = YES ! endif ! include $(ROOT)/mak/library.mak include $(ROOT)/mak/install.mak Index: src/Pegasus/ProviderManager2/Default/ProviderModule.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager2/Default/ProviderModule.cpp,v retrieving revision 1.8 diff -a -b --context -r1.8 ProviderModule.cpp *** src/Pegasus/ProviderManager2/Default/ProviderModule.cpp 19 Nov 2004 20:54:00 -0000 1.8 --- src/Pegasus/ProviderManager2/Default/ProviderModule.cpp 21 Dec 2004 20:14:43 -0000 *************** *** 32,37 **** --- 32,38 ---- // Yi Zhou, Hewlett-Packard Company(yi_zhou@hp.com) // Mike Day, IBM (mdday@us.ibm.com) // Adrian Schuur, IBM (schuur@de.ibm.com) + // Sean Keenan, Hewlett-Packard Company // //%///////////////////////////////////////////////////////////////////////////// *************** *** 65,70 **** --- 66,73 ---- _interfaceFileName=interfaceName+String("Adapter"); #elif defined(PEGASUS_OS_DARWIN) _interfaceFileName= String("lib")+interfaceName+String("Adapter.dylib"); + #elif defined(PEGASUS_OS_VMS) + _interfaceFileName= String("lib")+interfaceName+String("Adapter.exe"); #else _interfaceFileName= String("lib")+interfaceName+String("Adapter.so"); #endif *************** *** 103,108 **** --- 106,113 ---- _interfaceFileName = _interfaceName; #elif defined(PEGASUS_OS_DARWIN) _interfaceFileName = String("lib") + _interfaceName + String(".dylib"); + #elif defined(PEGASUS_OS_VMS) + _interfaceFileName = String("lib") + _interfaceName + String(".exe"); #else _interfaceFileName = String("lib") + _interfaceName + String(".so"); #endif Index: src/Pegasus/ProviderManager2/tests/ProviderManagerModule/ProviderManagerModule.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Pegasus/ProviderManager2/tests/ProviderManagerModule/ProviderManagerModule.cpp,v retrieving revision 1.12 diff -a -b --context -r1.12 ProviderManagerModule.cpp *** src/Pegasus/ProviderManager2/tests/ProviderManagerModule/ProviderManagerModule.cpp 17 Oct 2004 20:40:05 -0000 1.12 --- src/Pegasus/ProviderManager2/tests/ProviderManagerModule/ProviderManagerModule.cpp 21 Dec 2004 20:14:51 -0000 *************** *** 25,32 **** --- 25,33 ---- // //============================================================================== // // Author: Chip Vincent (cvincent@us.ibm.com) // // Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) +// Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 136,143 **** // Use "bin" directory for Windows, to be consistent with the default // providerDir value in Config/ProviderDirPropertyOwner.cpp. ! #ifdef PEGASUS_PLATFORM_WIN32_IX86_MSVC fileName=String(getenv("PEGASUS_HOME"))+String("/bin/")+FILE_NAME; #else fileName=String(getenv("PEGASUS_HOME"))+String("/lib/")+FILE_NAME; #endif --- 136,145 ---- // Use "bin" directory for Windows, to be consistent with the default // providerDir value in Config/ProviderDirPropertyOwner.cpp. ! #if defined (PEGASUS_PLATFORM_WIN32_IX86_MSVC) fileName=String(getenv("PEGASUS_HOME"))+String("/bin/")+FILE_NAME; + #elif defined (PEGASUS_OS_VMS) + fileName= FILE_NAME; #else fileName=String(getenv("PEGASUS_HOME"))+String("/lib/")+FILE_NAME; #endif Index: src/Providers/IndicationConsumer/SimpleDisplayConsumer/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/IndicationConsumer/SimpleDisplayConsumer/Makefile,v retrieving revision 1.4 diff -a -b --context -r1.4 Makefile *** src/Providers/IndicationConsumer/SimpleDisplayConsumer/Makefile 29 Jun 2004 20:57:52 -0000 1.4 --- src/Providers/IndicationConsumer/SimpleDisplayConsumer/Makefile 21 Dec 2004 20:15:08 -0000 *************** *** 16,20 **** SimpleDisplayConsumerMain.cpp \ SimpleDisplayConsumer.cpp include $(ROOT)/mak/library.mak install: --- 16,30 ---- SimpleDisplayConsumerMain.cpp \ SimpleDisplayConsumer.cpp ! ifeq ($(OS),VMS) ! # ! # VMS uses different escape characters for including double quotes. ! # ! LOCAL_DEFINES = -DPEGASUS_CONSUMER_INTERNAL -DINDICATION_DIR="""$(DISPLAYCONSUMER_DIR)""" -DPEGASUS_INTERNALONLY ! endif ! include $(ROOT)/mak/library.mak install: Index: src/Providers/ManagedSystem/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/Makefile,v retrieving revision 1.21 diff -a -b --context -r1.21 Makefile *** src/Providers/ManagedSystem/Makefile 13 Feb 2004 22:09:22 -0000 1.21 --- src/Providers/ManagedSystem/Makefile 21 Dec 2004 20:15:08 -0000 *************** *** 55,59 **** --- 55,69 ---- NISServerService/testclient endif + ifeq ($(PEGASUS_OS_TYPE),VMS) + DIRS += NTPProviderSecurity \ + NTPService \ + NTPService/tests \ + NTPService/testclient \ + DNSService \ + DNSService/tests \ + DNSService/tests/testclient + endif + include $(ROOT)/mak/recurse.mak Index: src/Providers/ManagedSystem/ComputerSystem/ComputerSystem.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/ComputerSystem/ComputerSystem.cpp,v retrieving revision 1.8 diff -a -b --context -r1.8 ComputerSystem.cpp *** src/Providers/ManagedSystem/ComputerSystem/ComputerSystem.cpp 17 Oct 2004 20:40:17 -0000 1.8 --- src/Providers/ManagedSystem/ComputerSystem/ComputerSystem.cpp 21 Dec 2004 20:15:08 -0000 *************** *** 29,34 **** --- 29,35 ---- // // Modified By: Rudy Schuet (rudy.schuet@compaq.com) 11/12/01 // added nsk platform support + // Sean Keenan Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 38,43 **** --- 39,46 ---- # include "ComputerSystem_HPUX.cpp" #elif defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) # include "ComputerSystem_Linux.cpp" + #elif defined(PEGASUS_OS_VMS) + # include "ComputerSystem_Vms.cpp" #else # include "ComputerSystem_Stub.cpp" #endif Index: src/Providers/ManagedSystem/ComputerSystem/tests/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/ComputerSystem/tests/Makefile,v retrieving revision 1.5 diff -a -b --context -r1.5 Makefile *** src/Providers/ManagedSystem/ComputerSystem/tests/Makefile 29 Jun 2004 20:57:52 -0000 1.5 --- src/Providers/ManagedSystem/ComputerSystem/tests/Makefile 21 Dec 2004 20:15:09 -0000 *************** *** 28,33 **** --- 28,34 ---- #// David Kennedy #// Christopher Neufeld #// Mike Glantz, Hewlett-Packard Company + #// Sean Keenan #// #//%//////////////////////////////////////////////////////////////////////////// *************** *** 57,62 **** --- 58,72 ---- include $(ROOT)/mak/program.mak + ifeq ($(OS),VMS) + LFLAGS +=/sysexe + TMPVMSOBJECTS = $(SOURCES:.cpp=$(OBJ),pegasus_vmshome:[obj.Providers.ManagedSystem.ComputerSystem]ComputerSystem.obj,) + + SOURCES = \ + TestCSProvider.cpp + + endif + general: tests: Index: src/Providers/ManagedSystem/DNSService/DNSService.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/DNSService/DNSService.cpp,v retrieving revision 1.4 diff -a -b --context -r1.4 DNSService.cpp *** src/Providers/ManagedSystem/DNSService/DNSService.cpp 17 Oct 2004 20:40:18 -0000 1.4 --- src/Providers/ManagedSystem/DNSService/DNSService.cpp 21 Dec 2004 20:15:09 -0000 *************** *** 29,34 **** --- 29,35 ---- // // Modified By: // Lyle Wilkinson, Hewlett-Packard Company + // Sean Keenan, Hewlett-Packard Company // //%///////////////////////////////////////////////////////////////////////////// *************** *** 36,41 **** --- 37,44 ---- #if defined(PEGASUS_PLATFORM_HPUX_ACC) # include "DNSService_HPUX.cpp" + #elif defined (PEGASUS_OS_VMS) + #include "DNSService_Vms.cpp" #else # include "DNSService_Stub.cpp" #endif Index: src/Providers/ManagedSystem/DNSService/tests/testclient/DNSTestClient.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/DNSService/tests/testclient/DNSTestClient.cpp,v retrieving revision 1.4 diff -a -b --context -r1.4 DNSTestClient.cpp *** src/Providers/ManagedSystem/DNSService/tests/testclient/DNSTestClient.cpp 17 Oct 2004 20:40:18 -0000 1.4 --- src/Providers/ManagedSystem/DNSService/tests/testclient/DNSTestClient.cpp 21 Dec 2004 20:15:10 -0000 *************** *** 27,33 **** // // Author: Paulo F. Borges (pfborges@wowmail.com) // ! // Modified By: // //%///////////////////////////////////////////////////////////////////////////// --- 27,33 ---- // // Author: Paulo F. Borges (pfborges@wowmail.com) // ! // Modified By: Sean Keenan Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 42,47 **** --- 42,49 ---- // include the appropriate DNS-specific file for checking results #if defined(PEGASUS_PLATFORM_HPUX_ACC) # include "DNSTestClient_HPUX.cpp" + #elif defined (PEGASUS_OS_VMS) + #include "DNSTestClient_Vms.cpp" #else # include "DNSTestClient_Stub.cpp" #endif Index: src/Providers/ManagedSystem/IP/IPPlatform.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/IP/IPPlatform.cpp,v retrieving revision 1.4 diff -a -b --context -r1.4 IPPlatform.cpp *** src/Providers/ManagedSystem/IP/IPPlatform.cpp 17 Oct 2004 20:40:18 -0000 1.4 --- src/Providers/ManagedSystem/IP/IPPlatform.cpp 21 Dec 2004 20:15:10 -0000 *************** *** 36,46 **** --- 36,49 ---- // Carlos Bonilla, Hewlett-Packard Company // Mike Glantz, Hewlett-Packard Company // Lyle Wilkinson, Hewlett-Packard Company + // Sean Keenan, Hewlett-Packard Company // //%//////////////////////////////////////////////////////////////////////////// #if defined(PEGASUS_PLATFORM_HPUX_ACC) #include "IP_HPUX.cpp" + #elif defined (PEGASUS_OS_VMS) + #include "IP_Vms.cpp" #else #include "IP_Stub.cpp" #endif Index: src/Providers/ManagedSystem/IP/IPPlatform.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/IP/IPPlatform.h,v retrieving revision 1.4 diff -a -b --context -r1.4 IPPlatform.h *** src/Providers/ManagedSystem/IP/IPPlatform.h 17 Oct 2004 20:40:18 -0000 1.4 --- src/Providers/ManagedSystem/IP/IPPlatform.h 21 Dec 2004 20:15:10 -0000 *************** *** 44,49 **** --- 44,51 ---- #if defined(PEGASUS_PLATFORM_HPUX_ACC) #include "IP_HPUX.h" + #elif defined (PEGASUS_OS_VMS) + #include "IP_Vms.h" #else #include "IP_Stub.h" #endif Index: src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.cpp,v retrieving revision 1.5 diff -a -b --context -r1.5 NTPProviderSecurity.cpp *** src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.cpp 17 Oct 2004 20:40:20 -0000 1.5 --- src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.cpp 21 Dec 2004 20:15:12 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Paulo F. Borges (pfborges@wowmail.com) // // Modified By: + // Sean Keenan, Hewlett-Packard Company // //%///////////////////////////////////////////////////////////////////////////// *************** *** 35,40 **** --- 36,43 ---- #if defined(PEGASUS_PLATFORM_HPUX_ACC) # include "NTPProviderSecurity_HPUX.cpp" + #elif defined(PEGASUS_OS_VMS) + # include "NTPProviderSecurity_VMS.cpp" #else # include "NTPProviderSecurity_Stub.cpp" #endif Index: src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.h,v retrieving revision 1.7 diff -a -b --context -r1.7 NTPProviderSecurity.h *** src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.h 17 Oct 2004 20:40:20 -0000 1.7 --- src/Providers/ManagedSystem/NTPProviderSecurity/NTPProviderSecurity.h 21 Dec 2004 20:15:13 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Paulo F. Borges (pfborges@wowmail.com) // // Modified By: + // Sean Keenan, Hewlett-Packard Company // //%///////////////////////////////////////////////////////////////////////////// *************** *** 48,54 **** --- 49,57 ---- #include // Security includes + #if !defined (PEGASUS_OS_VMS) #include + #endif #include #include #include Index: src/Providers/ManagedSystem/NTPService/NTPService.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/NTPService/NTPService.cpp,v retrieving revision 1.4 diff -a -b --context -r1.4 NTPService.cpp *** src/Providers/ManagedSystem/NTPService/NTPService.cpp 17 Oct 2004 20:40:20 -0000 1.4 --- src/Providers/ManagedSystem/NTPService/NTPService.cpp 21 Dec 2004 20:15:13 -0000 *************** *** 29,34 **** --- 29,35 ---- // // // Modified By: + // Sean Keenan, Hewlett-Packard Company // //============================================================================== // This template was created from DNSService.cpp *************** *** 37,42 **** --- 38,45 ---- #if defined(PEGASUS_PLATFORM_HPUX_ACC) # include "NTPService_HPUX.cpp" + #elif defined (PEGASUS_OS_VMS) + #include "NTPService_Vms.cpp" #else # include "NTPService_Stub.cpp" #endif Index: src/Providers/ManagedSystem/NTPService/testclient/NTPTestClient.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/NTPService/testclient/NTPTestClient.cpp,v retrieving revision 1.4 diff -a -b --context -r1.4 NTPTestClient.cpp *** src/Providers/ManagedSystem/NTPService/testclient/NTPTestClient.cpp 17 Oct 2004 20:40:21 -0000 1.4 --- src/Providers/ManagedSystem/NTPService/testclient/NTPTestClient.cpp 21 Dec 2004 20:15:13 -0000 *************** *** 28,33 **** --- 28,34 ---- // Author: Paulo F. Borges (pfborges@wowmail.com) // // Modified By: + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 42,47 **** --- 43,50 ---- // include the appropriate NTPProvider-specific file for checking results #if defined (PEGASUS_PLATFORM_HPUX_ACC) # include "NTPTestClient_HPUX.cpp" + #elif defined (PEGASUS_OS_VMS) + #include "NTPTestClient_Vms.cpp" #else # include "NTPTestClient_Stub.cpp" #endif Index: src/Providers/ManagedSystem/OperatingSystem/OperatingSystem.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/OperatingSystem/OperatingSystem.cpp,v retrieving revision 1.12 diff -a -b --context -r1.12 OperatingSystem.cpp *** src/Providers/ManagedSystem/OperatingSystem/OperatingSystem.cpp 17 Oct 2004 20:40:21 -0000 1.12 --- src/Providers/ManagedSystem/OperatingSystem/OperatingSystem.cpp 21 Dec 2004 20:15:14 -0000 *************** *** 25,34 **** --- 25,35 ---- // //============================================================================== // // Author: Mike Brasher (mbrasher@bmc.com) // : Denise Eckstein (denise_eckstein@hp.com) // // Modified By: Susan Campbell, Hewlett-Packard Company // k. v. le +// Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 44,49 **** --- 44,51 ---- # include "OperatingSystem_AIX.cpp" #elif defined (PEGASUS_OS_DARWIN) #include "OperatingSystem_DARWIN.cpp" + #elif defined (PEGASUS_OS_VMS) + # include "OperatingSystem_Vms.cpp" #else # include "OperatingSystem_Stub.cpp" #endif Index: src/Providers/ManagedSystem/OperatingSystem/tests/OSTestClient/OSTestClient.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/OperatingSystem/tests/OSTestClient/OSTestClient.cpp,v retrieving revision 1.18 diff -a -b --context -r1.18 OSTestClient.cpp *** src/Providers/ManagedSystem/OperatingSystem/tests/OSTestClient/OSTestClient.cpp 17 Oct 2004 20:40:21 -0000 1.18 --- src/Providers/ManagedSystem/OperatingSystem/tests/OSTestClient/OSTestClient.cpp 21 Dec 2004 20:15:14 -0000 *************** *** 34,40 **** --- 34,41 ---- // Warren Otsuka, Hewlett-Packard Company (warren_otsuka@hp.com) // Nag Boranna, Hewlett-Packard Company (nagaraja_boranna@hp.com) // Susan Campbell, Hewlett-Packard Company (scampbell@hp.com) // Carol Ann Krug Graves, Hewlett-Packard Company // (carolann_graves@hp.com) // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 53,59 **** --- 53,63 ---- #if defined (PEGASUS_PLATFORM_HPUX_ACC) # include "OSTestClient_HPUX.cpp" #else + # if defined (PEGASUS_OS_VMS) + # include "OSTestClient_VMS.cpp" + # else # include "OSTestClient_Stub.cpp" + # endif #endif PEGASUS_USING_PEGASUS; Index: src/Providers/ManagedSystem/Process/ProcessPlatform.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/Process/ProcessPlatform.cpp,v retrieving revision 1.8 diff -a -b --context -r1.8 ProcessPlatform.cpp *** src/Providers/ManagedSystem/Process/ProcessPlatform.cpp 17 Oct 2004 20:40:22 -0000 1.8 --- src/Providers/ManagedSystem/Process/ProcessPlatform.cpp 21 Dec 2004 20:15:15 -0000 *************** *** 36,41 **** --- 36,42 ---- // Carlos Bonilla, Hewlett-Packard Company // Mike Glantz, Hewlett-Packard Company // Chad Smith, Hewlett-Packard Company + // Sean Keenan, Hewlett-Packard Company // //%//////////////////////////////////////////////////////////////////////////// *************** *** 43,48 **** --- 44,51 ---- #include "Process_HPUX.cpp" #elif defined (PEGASUS_PLATFORM_LINUX_GENERIC_GNU) # include "Process_Linux.cpp" + #elif defined (PEGASUS_OS_VMS) + #include "Process_Vms.cpp" #else #include "Process_Stub.cpp" #endif Index: src/Providers/ManagedSystem/Process/ProcessPlatform.h =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/Process/ProcessPlatform.h,v retrieving revision 1.8 diff -a -b --context -r1.8 ProcessPlatform.h *** src/Providers/ManagedSystem/Process/ProcessPlatform.h 17 Oct 2004 20:40:22 -0000 1.8 --- src/Providers/ManagedSystem/Process/ProcessPlatform.h 21 Dec 2004 20:15:15 -0000 *************** *** 36,41 **** --- 36,42 ---- // Carlos Bonilla, Hewlett-Packard Company // Mike Glantz, Hewlett-Packard Company // Chad Smith, Hewlett-Packard Company + // Sean Keenan Hewlett-Packard Company (sean.keenan@hp.com) // //%//////////////////////////////////////////////////////////////////////////// *************** *** 46,51 **** --- 47,54 ---- #include "Process_HPUX.h" #elif defined (PEGASUS_PLATFORM_LINUX_GENERIC_GNU) #include "Process_Linux.h" + #elif defined (PEGASUS_OS_VMS) + #include "Process_Vms.h" #else #include "Process_Stub.h" #endif Index: src/Providers/ManagedSystem/Process/tests/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/Process/tests/Makefile,v retrieving revision 1.5 diff -a -b --context -r1.5 Makefile *** src/Providers/ManagedSystem/Process/tests/Makefile 29 Jun 2004 20:57:54 -0000 1.5 --- src/Providers/ManagedSystem/Process/tests/Makefile 21 Dec 2004 20:15:15 -0000 *************** *** 28,33 **** --- 28,34 ---- #// David Kennedy #// Christopher Neufeld #// Mike Glantz, Hewlett-Packard Company + #// Sean Keenan #// #//%//////////////////////////////////////////////////////////////////////////// *************** *** 57,62 **** --- 58,72 ---- include $(ROOT)/mak/program.mak + ifeq ($(OS),VMS) + LFLAGS +=/sysexe + TMPVMSOBJECTS = $(SOURCES:.cpp=$(OBJ),pegasus_vmshome:[obj.Providers.ManagedSystem.Process]ProcessPlatform.obj,) + + SOURCES = \ + TestProcessProvider.cpp + + endif + general: tests: Index: src/Providers/ManagedSystem/Processor/ProcessorPlatform.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/Processor/ProcessorPlatform.cpp,v retrieving revision 1.4 diff -a -b --context -r1.4 ProcessorPlatform.cpp *** src/Providers/ManagedSystem/Processor/ProcessorPlatform.cpp 17 Oct 2004 20:40:22 -0000 1.4 --- src/Providers/ManagedSystem/Processor/ProcessorPlatform.cpp 21 Dec 2004 20:15:15 -0000 *************** *** 35,45 **** --- 35,48 ---- // Jim Metcalfe, Hewlett-Packard Company // Carlos Bonilla, Hewlett-Packard Company // Mike Glantz, Hewlett-Packard Company + // Sean Keenan, Hewlett-Packard Company // //%//////////////////////////////////////////////////////////////////////////// #ifdef PEGASUS_PLATFORM_HPUX_ACC #include "Processor_HPUX.cpp" + #elif defined (PEGASUS_OS_VMS) + #include "Processor_Vms.cpp" #else #include "Processor_Stub.cpp" #endif Index: src/Providers/ManagedSystem/Processor/tests/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/Providers/ManagedSystem/Processor/tests/Makefile,v retrieving revision 1.2 diff -a -b --context -r1.2 Makefile *** src/Providers/ManagedSystem/Processor/tests/Makefile 29 Jun 2004 20:57:54 -0000 1.2 --- src/Providers/ManagedSystem/Processor/tests/Makefile 21 Dec 2004 20:15:16 -0000 *************** *** 28,33 **** --- 28,34 ---- #// David Kennedy #// Christopher Neufeld #// Mike Glantz, Hewlett-Packard Company + #// Sean Keenan #// #//%//////////////////////////////////////////////////////////////////////////// *************** *** 57,62 **** --- 58,72 ---- include $(ROOT)/mak/program.mak + ifeq ($(OS),VMS) + LFLAGS +=/sysexe + TMPVMSOBJECTS = $(SOURCES:.cpp=$(OBJ),pegasus_vmshome:[obj.Providers.ManagedSystem.Processor]ProcessorPlatform.obj,) + + SOURCES = \ + TestProcessorProvider.cpp + + endif + general: tests: Index: src/Server/cimserver.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/Server/cimserver.cpp,v retrieving revision 1.141 diff -a -b --context -r1.141 cimserver.cpp *** src/Server/cimserver.cpp 17 Oct 2004 20:40:39 -0000 1.141 --- src/Server/cimserver.cpp 21 Dec 2004 20:15:32 -0000 *************** *** 45,50 **** --- 45,51 ---- // Modified By: Humberto Rivero (hurivero@us.ibm.com) // // Modified By: Steve Hills (steve.hills@ncr.com) + // Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%///////////////////////////////////////////////////////////////////////////// *************** *** 132,137 **** --- 133,140 ---- # else # include "cimserver_unix.cpp" #endif + #elif defined(PEGASUS_OS_VMS) + # include "cimserver_vms.cpp" #else # error "Unsupported platform" #endif *************** *** 511,517 **** cimserver_exitRC(1); #endif ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || define d(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) if (kill_rc != -1) { //l10n - TODO --- 524,532 ---- cimserver_exitRC(1); #endif ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) \ ! || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) \ ! || defined (PEGASUS_OS_VMS) if (kill_rc != -1) { //l10n - TODO *************** *** 625,631 **** if (*option == OPTION_VERSION && strlen(option) == 1) { ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_IA64_GNU) cout << PLATFORM_PRODUCT_VERSION << endl; #else cout << PEGASUS_VERSION << endl; --- 640,646 ---- if (*option == OPTION_VERSION && strlen(option) == 1) { ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_IA64_GNU) || defined (PEGASUS_OS_VMS) cout << PLATFORM_PRODUCT_VERSION << endl; #else cout << PEGASUS_VERSION << endl; *************** *** 1095,1101 **** #endif ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || define d(PEGASUS_OS_AIX) || defined(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) umask(S_IWGRP|S_IWOTH); // --- 1156,1164 ---- #endif ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) \ ! || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_OS_AIX) \ ! || defined(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) || defined (PEGASUS_OS_VMS) umask(S_IWGRP|S_IWOTH); // *************** *** 1225,1231 **** time_t last = 0; ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_OS_LINUX) || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_OS_AIX) || defined(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) // // create a file to indicate that the cimserver has started and // save the process id of the cimserver process in the file --- 1300,1308 ---- time_t last = 0; ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_OS_LINUX) || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) \ ! || defined(PEGASUS_OS_AIX) || defined(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) \ ! || defined(PEGASUS_OS_VMS) // // create a file to indicate that the cimserver has started and // save the process id of the cimserver process in the file *************** *** 1249,1255 **** #endif // Put server started message to the logger ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_IA64_GNU) //l10n //Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::INFORMATION, //"Started $0 version $1.", --- 1326,1333 ---- #endif // Put server started message to the logger ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_IA64_GNU) \ ! || defined(PEGASUS_OS_VMS) //l10n //Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::INFORMATION, //"Started $0 version $1.", *************** *** 1285,1291 **** // normal termination // // Put server shutdown message to the logger ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_IA64_GNU) //l10n //Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::INFORMATION, //"$0 stopped.", PLATFORM_PRODUCT_NAME); --- 1363,1370 ---- // normal termination // // Put server shutdown message to the logger ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_IA64_GNU) \ ! || defined(PEGASUS_OS_VMS) //l10n //Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::INFORMATION, //"$0 stopped.", PLATFORM_PRODUCT_NAME); *************** *** 1301,1307 **** "$0 stopped.", PEGASUS_NAME); #endif ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || define d(PEGASUS_OS_AIX) || defined(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) // // close the file created at startup time to indicate that the // cimserver has terminated normally. --- 1380,1388 ---- "$0 stopped.", PEGASUS_NAME); #endif ! #if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_PLATFORM_LINUX_GENERIC_GNU) \ ! || defined(PEGASUS_PLATFORM_ZOS_ZSERIES_IBM) || defined(PEGASUS_OS_AIX) \ ! || defined(PEGASUS_PLATFORM_SOLARIS_SPARC_CC) || defined(PEGASUS_OS_VMS) // // close the file created at startup time to indicate that the // cimserver has terminated normally. Index: src/utils/mu/DependCmd.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/utils/mu/DependCmd.cpp,v retrieving revision 1.14 diff -a -b --context -r1.14 DependCmd.cpp *** src/utils/mu/DependCmd.cpp 17 Oct 2004 20:40:46 -0000 1.14 --- src/utils/mu/DependCmd.cpp 21 Dec 2004 20:15:38 -0000 *************** *** 25,31 **** --- 25,32 ---- // //============================================================================== // // Author: Michael E. Brasher // +// Modified By: Sean Keenan, Hewlett-Packard Company (sean.keenan@hp.com) // //%============================================================================= *************** *** 36,42 **** #include #include ! #ifdef OS_WINDOWS # define OBJ_EXT ".obj" #else # define OBJ_EXT ".o" --- 36,42 ---- #include #include ! #if defined (OS_WINDOWS) || defined (OS_VMS) # define OBJ_EXT ".obj" #else # define OBJ_EXT ".o" Index: src/utils/mu/Files.cpp =================================================================== RCS file: /cvs/MSB/pegasus/src/utils/mu/Files.cpp,v retrieving revision 1.8 diff -a -b --context -r1.8 Files.cpp *** src/utils/mu/Files.cpp 17 Oct 2004 20:40:46 -0000 1.8 --- src/utils/mu/Files.cpp 21 Dec 2004 20:15:39 -0000 *************** *** 41,46 **** --- 41,49 ---- char* tmp = new char[path.size() + 1]; strcpy(tmp, path.c_str()); + #if defined (OS_VMS) + components.push_back (tmp); + #else if (path[0] == '/') components.push_back("/"); *************** *** 61,66 **** --- 64,70 ---- } delete [] tmp; + #endif } // string.find_last_of() is broken in GNU C++. *************** *** 82,96 **** --- 86,121 ---- { size_t pos = _find_last_of(path, '/'); + #if defined (OS_VMS) + size_t pos1 = _find_last_of (path, ']'); + if ((pos == (size_t) -1) && (pos1 == (size_t) -1)) + #else if (pos == (size_t)-1) + #endif { dirname = "."; basename = path; } else { + #if defined (OS_VMS) + // Did we find a slash? + if (pos == (size_t) -1) + { + // No. Must be a close bracket. + dirname = path.substr (0, pos1 + 1); + basename = path.substr (pos1 + 1); + } + else + { + // Yes. + dirname = path.substr (0, pos); + basename = path.substr (pos + 1); + } + #else dirname = path.substr(0, pos); basename = path.substr(pos + 1); + #endif } } *************** *** 567,571 **** --- 592,598 ---- return false; } + #if !defined (OS_VMS) return true; + #endif } Index: src/utils/mu/Files.h =================================================================== RCS file: /cvs/MSB/pegasus/src/utils/mu/Files.h,v retrieving revision 1.4 diff -a -b --context -r1.4 Files.h *** src/utils/mu/Files.h 17 Oct 2004 20:40:46 -0000 1.4 --- src/utils/mu/Files.h 21 Dec 2004 20:15:39 -0000 *************** *** 36,41 **** --- 36,45 ---- #include #include + #if defined (OS_VMS) + char cstr[256]; + #endif + bool GetCwd(string& path); bool ChangeDir(const string& path); *************** *** 79,82 **** --- 83,98 ---- bool IsDir(const string& path); + #if defined (OS_VMS) + bool parse_name(const string& name); + + bool assign_name(void); + + bool get_attr(void); + + bool set_attr(void); + + bool deassign_name(void); + + #endif #endif /* _Files_h */ Index: src/utils/mu/Makefile =================================================================== RCS file: /cvs/MSB/pegasus/src/utils/mu/Makefile,v retrieving revision 1.28 diff -a -b --context -r1.28 Makefile *** src/utils/mu/Makefile 26 Nov 2004 23:59:48 -0000 1.28 --- src/utils/mu/Makefile 21 Dec 2004 20:15:39 -0000 *************** *** 18,23 **** --- 18,70 ---- RM = rm -f endif + ifeq ($(OS),VMS) + + MYCOMMA = , + MYEMPTY = + MYSPACE = $(MYEMPTY) $(MYEMPTY) + # T_OBJECTS = $(subst $(MYSPACE),$(MYCOMMA),$(OBJECTS)) + # TMP_OBJECTS = $(subst .obj,.obj;*,$(T_OBJECTS)) + TMP_OBJECTS = $(subst .obj,.obj;*,$(subst $(MYSPACE),$(MYCOMMA),$(OBJECTS))) + + CXX = cxx + LXX = cxxlink + ifeq ($(PEGASUS_PLATFORM),VMS_IPF_DECCXX) + CXXFLAGS = /repos=[.ipf.cxx_repository]/template_def=time/object=[.ipf]/EXCEPTIONS\ + /DEFINE=(__NEW_STARLET,OS_VMS,VMS,PEGASUS_PLATFORM_VMS_IPF_DECCXX)\ + /WARNING=DISABLE=(NOSIMPINT)/include=("/pegasus_blddsk/cim/pegasus/src/stdcxx/cwrappers","/pegasus_blddsk/cim/pegasus/src") + EXE_OUT = /exe=[.ipf] + else + CXXFLAGS = /repos=[.alpha.cxx_repository]/template_def=time/object=[.alpha]/EXCEPTIONS\ + /DEFINE=(__NEW_STARLET,OS_VMS,VMS,PEGASUS_PLATFORM_VMS_ALPHA_DECCXX)\ + /WARNING=DISABLE=(NOSIMPINT)/include=("/pegasus_blddsk/cim/pegasus/src/stdcxx/cwrappers","/pegasus_blddsk/cim/pegasus/src") + EXE_OUT = /exe=[.alpha] + endif + DEFINES = + PROGRAM = mu.exe + RM = delete/log + OBJ = .obj + PLATFORM_SOURCES = FilesVms.cpp vms_crtl_init.cpp + PLATFORM_OBJS = FilesVms.obj,vms_crtl_init.obj + + OBJS = \ + Mu.obj,\ + DependCmd.obj,\ + PwdCmd.obj,\ + CompareCmd.obj,\ + MoveCmd.obj,\ + CopyCmd.obj,\ + TouchCmd.obj,\ + EchoCmd.obj,\ + MkDirHierCmd.obj,\ + RmDirHierCmd.obj,\ + RmCmd.obj,\ + Files.obj,\ + StripCmd.obj,\ + PrependCmd.obj,\ + $(PLATFORM_OBJS) + endif + ifdef PEGASUS_MU_BIN_DIR ifdef BACKWARD_SLASH FULL_PROGRAM = $(PEGASUS_MU_BIN_DIR)\$(PROGRAM)$(EXE) *************** *** 25,31 **** --- 72,86 ---- FULL_PROGRAM = $(PEGASUS_MU_BIN_DIR)/$(PROGRAM)$(EXE) endif else + ifeq ($(OS),VMS) + ifeq ($(PEGASUS_PLATFORM),VMS_IPF_DECCXX) + FULL_PROGRAM = [.ipf]$(PROGRAM) + else + FULL_PROGRAM = [.alpha]$(PROGRAM) + endif + else FULL_PROGRAM = $(PROGRAM)$(EXE) + endif endif *************** *** 50,66 **** OBJECTS = $(SOURCES:.cpp=$(OBJ)) %$(OBJ): %.cpp $(CXX) -c $(OBJ_OUT)$@ $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp ! $(FULL_PROGRAM): $(OBJECTS) $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXE_OUTPUT) $(OBJECTS) $(FULL_LIBRARIES) $(SYS_LIB) $(MKDIRHIER) $(BIN_DIR) ! $(COPY) $(FULL_PROGRAM) $(BIN_DIR)/$(PROGRAM)$(EXE) clean: $(RM) $(OBJECTS) $(RM) $(FULL_PROGRAM) tests: --- 105,144 ---- OBJECTS = $(SOURCES:.cpp=$(OBJ)) %$(OBJ): %.cpp + ifeq ($(OS),VMS) + $(CXX) $(CXXFLAGS) $(DEFINES) $*.cpp + else $(CXX) -c $(OBJ_OUT)$@ $(FLAGS) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $*.cpp ! endif $(FULL_PROGRAM): $(OBJECTS) + ifeq ($(OS),VMS) + ifeq ($(PEGASUS_PLATFORM),VMS_IPF_DECCXX) + $(LXX) /repos=[.ipf.cxx_repository]$(EXE_OUT)$(PROGRAM) [.ipf]$(OBJS) + else + $(LXX) /repos=[.alpha.cxx_repository]$(EXE_OUT)$(PROGRAM) [.alpha]$(OBJS) + endif + # $(MKDIRHIER) $(BIN_VMSDIR)] + # $(COPY) "$(FULL_PROGRAM)" "$(BIN_VMSDIR)]$(PROGRAM)" + else $(LINK_WRAPPER) $(CXX) $(FLAGS) $(EXE_OUTPUT) $(OBJECTS) $(FULL_LIBRARIES) $(SYS_LIB) $(MKDIRHIER) $(BIN_DIR) ! $(COPY) "$(FULL_PROGRAM)" "$(BIN_DIR)/$(PROGRAM)$(EXE)" ! endif clean: + ifeq ($(OS),VMS) + ifeq ($(PEGASUS_PLATFORM),VMS_IPF_DECCXX) + $(RM) [.ipf]$(TMP_OBJECTS) + $(RM) $(FULL_PROGRAM);* + else + $(RM) [.alpha]$(TMP_OBJECTS) + $(RM) $(FULL_PROGRAM);* + endif + else $(RM) $(OBJECTS) $(RM) $(FULL_PROGRAM) + endif tests: