Merged update from upstream sources

This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.

Source: https://src.fedoraproject.org/rpms/tog-pegasus.git#6e556193473e062db027bdb29c0ffc2cbfb5e7c4
This commit is contained in:
DistroBaker 2020-12-16 23:01:21 +00:00
parent 5c8bd26607
commit 081267dc43
46 changed files with 4780 additions and 0 deletions

2
.gitignore vendored
View File

@ -0,0 +1,2 @@
/pegasus-2.*.tar.gz
/cim_schema_*.zip

65
README.RedHat.SSL Normal file
View File

@ -0,0 +1,65 @@
Red Hat SSL configuration for tog-pegasus
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The Red Hat tog-pegasus package is built with support for SSL
(the Secure Socket Layer).
Note: the upstream documentation for SSL is located here:
/usr/share/doc/tog-pegasus/PegasusSSLGuidelines.htm
However, because the upstream documentation for SSL is not up-to-date
(it was last updated in March, 2006, around the time of the
OpenPegasus-2.5.1 release), nor accurate, we are providing this short
description of how to configure SSL, as well as how it should be used.
Hard-Coded Build-Time Constants:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Here is the list of constants which are hard-coded during build time:
PEGASUS_CONFIG_DIR = /etc/Pegasus
PEGASUS_PEM_DIR = /etc/pki/Pegasus
PEGASUS_SSL_KEY_FILE = file.pem
PEGASUS_SSL_KEY_FILE_PATH = $(PEGASUS_PEM_DIR)/$(PEGASUS_SSL_KEY_FILE)
(= /etc/pki/Pegasus/file.pem)
o Contains the private key for the CIM Server SSL Certificate.
PEGASUS_SSL_CERT_FILE = server.pem
PEGASUS_SSL_CERT_FILE_PATH = $(PEGASUS_PEM_DIR)/$(PEGASUS_SSL_CERT_FILE)
(= /etc/pki/Pegasus/server.pem)
o Contains the CIM Server SSL Certificate.
PEGASUS_SSL_TRUSTSTORE = client.pem
PEGASUS_SSL_CLIENT_TRUSTSTORE = $(PEGASUS_PEM_DIR)/$(PEGASUS_SSL_TRUSTSTORE)
(= /etc/pki/Pegasus/client.pem)
PEGASUS_SSL_SERVER_TRUSTSTORE = $(PEGASUS_PEM_DIR)/cimserver_trust
(= /etc/pki/Pegasus/cimserver_trust)
o Specifies the location of the OpenSSL truststore. Consistent with the
OpenSSL implementation, a truststore can be either a file or directory.
If the truststore is a directory, then all certificates within the
directory are considered trusted.
PEGASUS_SSL_SERVER_CRL = $(PEGASUS_PEM_DIR)/crl
(= /etc/pki/Pegasus/crl)
o This is where the CRL (Certificate Revocation List) store resides.
Tips Following Package Installation:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
o CIM Server default SSL certificates are generated when you run the
tog-pegasus daemon (for example, by issuing the command
"systemctl start tog-pegasus") for the first time, which includes the
following files, which are created in /etc/pki/Pegasus: ca.crt, ca.srl,
client.pem, file.pem, server.pem and in /etc/Pegasus: ssl-ca.cnf,
ssl-service.cnf.
Important: simply running the "cimserver" binary (/usr/sbin/cimserver)
does NOT create the certificates or abovementioned files.
Note: if you want to use your own certificates, simply overwrite the ones
in /etc/pki/Pegasus.
o to enable/disable HTTPS port 5989 (the official WBEM secure port),
use cimconfig.
o the wbemcli command (from the sblim-wbemcli package)
uses /etc/pki/Pegasus/client.pem by default (see man wbemcli).

84
README.RedHat.Security Normal file
View File

@ -0,0 +1,84 @@
Red Hat Security Enhancements for tog-pegasus
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Access to the Pegasus services:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
By default, with the configuration as shipped, the upstream Open Group Pegasus
release allowed any user with an account on the machine (including root) to
use the network HTTPS port 5989 (by default) and HTTP port 5988 services.
On authentication failures, though there was the standard PAM authentication
failure delay, no messages were logged to syslog. This meant that potentially
a long-running cracker process could try millions of root passwords over the
network and could possibly discover the root password . If users were unwise
enough to enable the HTTP service on port 5988, then root passwords could be
sent unencrypted over the network.
This situation was deemed unacceptable by Red Hat RHEL QA test and Security
Response team engineers.
So for the Red Hat tog-pegasus release, PAM access control was enabled, to
remove these vulnerabilities. There is now a "pegasus" user created during
install, and users are recommended to use only that user to invoke CIM
operations over the network.
By default:
o root password authentication for CIM operations invoked over the network
HTTPS/HTTP services is denied - the root user is unable to invoke pegasus
services over the network - only the "pegasus" user may do so.
o the root user may invoke CIM operations over the HTTPS/HTTP ports on the
local machine.
o any user other than "pegasus" or "root" may not invoke pegasus services
over the HTTPS/HTTP ports at all.
o any PAM authentication failure will be logged to syslog
NOTE: after installation, you must set the password for the pegasus user -
issue this command as root :
# passwd pegasus
- to enable CIM operation network service, if the pegasus user is
a local system user.
Note also that even though a non-root user's password is used to authenticate
with the cimserver, the cimserver and all CIM Operation Providers run as root.
This was another reason to restrict use of CIM Operations to only one user.
The "pegasus" user may of course be a NIS, Kerberos, or LDAP user, which
could be used as configured in /etc/nsswitch.conf or with the PAM stack.
You may configure this differently, and at your own risk, by modifying the
pam_access configuration file /etc/Pegasus/access.conf, or by removing the
line:
account required pam_access.so accessfile=/etc/Pegasus/access.conf
from /etc/pam.d/wbem - then tog-pegasus' authentication behaviour would
be the same as that of the upstream release.
SELinux
~~~~~~~
There is an SELinux policy for tog-pegasus shipped in selinux-policy-targeted-1.17.30-2.110+ .
When SELinux is enabled in enforcing mode, the cimserver and providers are restricted to the
operations allowed to the 'pegasus_t' security context. Also only the pegasus_exec_t context
may modify the repository, and only the pegasus_exec_conf_t context may modify the pegasus
configuration files which are of pegasus_conf_t file context.
It is also possible to have separate SELinux policy for each provider. Create wrapper
in '/usr/libexec/pegasus' with its own specific SELinux label for each confined provider.
The wrapper file name has to be in specific format '$MODULE-cimprovagt' (where $MODULE is
value of PG_ProviderModule.ModuleGroupName as set during registration of the provider).
Original Pegasus's cimprovagt binary was moved to '/usr/libexec/pegasus/cimprovagt',
'/usr/sbin/cimprovagt' is simple shell script now, which passes all arguments to provider specific
wrapper if it exists or directly to original cimprovagt in other cases.
See example wrapper for Operating System Provider from sblim-cmpi-base package (which instruments
Linux_OperatingSystem class):
cmpiOSBase_OperatingSystemProvider-cimprovagt.example
ExecShield
~~~~~~~~~~
All tog-pegasus binary executables are compiled with ExecShield enabled, which make it nearly
impossible to modify them or to poke executable code into them.

43
access.conf Normal file
View File

@ -0,0 +1,43 @@
##############################################################################
# Pegasus WBEM HTTP/HTTPS Network Service User Access Control Table:
#
# This file controls access to the Pegasus WBEM Network services by users
# with the PAM pam_access module .
#
# The format of the access control table is three fields separated by a
# ":" character:
#
# permission : users : origins
#
# The first field should be a "+" (access granted) or "-" (access denied)
# character.
#
# The second field should be a list of one or more login names, group
# names, or ALL (always matches). A pattern of the form user@host is
# matched when the login name matches the "user" part, and when the
# "host" part matches the local machine name.
#
# If you run NIS you can use @netgroupname in host or user patterns; this
# even works for @usergroup@@hostgroup patterns. Weird.
#
# The EXCEPT operator makes it possible to write very compact rules.
#
# The group file is searched only when a name does not match that of the
# logged-in user. Both the user's primary group is matched, as well as
# groups in which users are explicitly listed.
#
# The third field must be 'wbemNetwork', to control access by users from
# remote hosts, or 'wbemLocal', to control access by users from the local host.
##############################################################################
#
# Pegasus PAM Access Rules:
# 1. The Remote host user access rule:
# By default, ONLY the pegasus user can use remote network HTTP/S service:
#
-: ALL EXCEPT pegasus:wbemNetwork
#
#
# 2. The Local host user access rule:
# By default, ONLY the pegasus and root users can use pegasus local HTTP/S service:
#
-: ALL EXCEPT pegasus root:wbemLocal

15
cimprovagt-wrapper.sh Normal file
View File

@ -0,0 +1,15 @@
#!/bin/bash
# simple wrapper for Pegasus's cimprovagt
# which allows providers to have separate
# SELinux policy
# see README.RedHat.Security for more info
provcimprovagt=/usr/libexec/pegasus/"$5"-cimprovagt
if [[ -x "$provcimprovagt" ]]
then
"$provcimprovagt" "$@"
else
/usr/libexec/pegasus/cimprovagt "$@"
fi

View File

@ -0,0 +1,3 @@
#!/bin/bash
/usr/libexec/pegasus/cimprovagt "$@"

14
generate-certs Executable file
View File

@ -0,0 +1,14 @@
#!/bin/bash
cd /etc/Pegasus
if [ ! -e /etc/Pegasus/ssl-ca.cnf ] || [ ! -e /etc/Pegasus/ssl-service.cnf ] || [ ! -e /etc/pki/Pegasus/server.pem ] ||
[ ! -e /etc/pki/Pegasus/file.pem ] || [ ! -e /etc/pki/Pegasus/client.pem ]; then
if [ -x /usr/share/Pegasus/scripts/genOpenPegasusSSLCerts ]; then
# Create self-signed certificates for initial usage
/usr/share/Pegasus/scripts/genOpenPegasusSSLCerts
# Add the self-signed certificate to the local trust store
cp /etc/pki/Pegasus/ca.crt \
/etc/pki/ca-trust/source/anchors/localhost-pegasus.pem
/usr/bin/update-ca-trust extract
fi;
fi;

View File

@ -0,0 +1,11 @@
diff -up pegasus/mak/config-linux.mak.orig pegasus/mak/config-linux.mak
--- pegasus/mak/config-linux.mak.orig 2015-03-31 15:25:23.735154221 +0200
+++ pegasus/mak/config-linux.mak 2015-03-31 15:26:29.349434918 +0200
@@ -127,6 +127,7 @@ else
# appeared in the 3.0 series of compilers.
#
ifeq ($(COMPILER), gnu)
+ FLAGS += -g
# disable the strict aliasing
ifeq ($(shell expr $(GCC_VERSION) '>=' 3.0), 1)
PEGASUS_EXTRA_CXX_FLAGS += -fno-enforce-eh-specs -fno-strict-aliasing

View File

@ -0,0 +1,22 @@
diff -up pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h.orig pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h
--- pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h.orig 2013-08-27 15:26:50.593740210 +0200
+++ pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h 2013-08-27 15:27:12.543825109 +0200
@@ -90,4 +90,7 @@
# define PEGASUS_HAS_GETIFADDRS
#endif
+/* use POSIX read-write locks on this platform */
+#define PEGASUS_USE_POSIX_RWLOCK
+
#endif /* Pegasus_Platform_LINUX_SPARC64_GNU_h */
diff -up pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h.orig pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h
--- pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h.orig 2013-08-27 15:25:59.601542527 +0200
+++ pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h 2013-08-27 15:26:33.232672955 +0200
@@ -90,4 +90,7 @@
# define PEGASUS_HAS_GETIFADDRS
#endif
+/* use POSIX read-write locks on this platform */
+#define PEGASUS_USE_POSIX_RWLOCK
+
#endif /* Pegasus_Platform_LINUX_SPARCV9_GNU_h */

View File

@ -0,0 +1,514 @@
diff -up pegasus/Schemas/Pegasus/Internal/Makefile.orig pegasus/Schemas/Pegasus/Internal/Makefile
--- pegasus/Schemas/Pegasus/Internal/Makefile.orig 2015-04-02 12:28:55.974227490 +0200
+++ pegasus/Schemas/Pegasus/Internal/Makefile 2015-04-02 12:47:48.912641222 +0200
@@ -48,12 +48,13 @@ all:
repository:
@ $(ECHO) +++++ Loading Core$(CIM_SCHEMA_VER)_Qualifiers.mof into $(INTERNALNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTERNALNS)" "$(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTERNALNS)" "$(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof"
@ $(ECHO) +++++ Loading PG_InternalSchema$(PG_SCHEMA_VER).mof into $(INTERNALNS) namespace...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTERNALNS)" "$(PG_MOF_PATH)/PG_InternalSchema$(PG_SCHEMA_VER).mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTERNALNS)" "$(PG_MOF_PATH)/PG_InternalSchema$(PG_SCHEMA_VER).mof"
ifeq ($(PEGASUS_ENABLE_SLP),true)
@ $(ECHO) +++++ Loading PG_SLPTemplate.mof into $(INTERNALNS) namespace...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTERNALNS)" "$(PG_MOF_PATH)/PG_SLPTemplate.mof"
+ @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTERNALNS)" "$(PG_MOF_PATH)/PG_SLPTemplate.mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTERNALNS)" "$(PG_MOF_PATH)/PG_SLPTemplate.mof"
endif
diff -up pegasus/Schemas/Pegasus/InterOp/Makefile.orig pegasus/Schemas/Pegasus/InterOp/Makefile
--- pegasus/Schemas/Pegasus/InterOp/Makefile.orig 2015-04-02 12:48:17.347745936 +0200
+++ pegasus/Schemas/Pegasus/InterOp/Makefile 2015-04-02 12:51:35.167484347 +0200
@@ -44,30 +44,30 @@ all:
repository:
@$(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(INTEROPNS) namespace ...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof"
@$(ECHO) +++++ Loading CIM_Event$(CIM_SCHEMA_VER) into $(INTEROPNS) namespace ...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof"
#
ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),true)
@$(ECHO) +++++ Loading CIM_Interop$(CIM_SCHEMA_VER) into $(INTEROPNS) namespace ...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Interop$(CIM_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Interop$(CIM_SCHEMA_VER).mof"
endif
#
@$(ECHO) +++++ Loading PG_InterOpSchema$(PG_INTEROP_SCHEMA_VER).mof into $(INTEROPNS) namespace...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_INTEROP_MOF_PATH)/PG_InterOpSchema$(PG_INTEROP_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_INTEROP_MOF_PATH)/PG_InterOpSchema$(PG_INTEROP_SCHEMA_VER).mof"
#
# Bug 1222
# The following code is temporary. These classes should be incorporated into PG_InteropSchema
# however, this cannot be done now because we cannot conditionally compile MOF.
ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),true)
@$(ECHO) +++++ Loading PG_CIMXMLCommunicationMechanism$(PG_INTEROP_SCHEMA_VER) into $(INTEROPNS) namespace ...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_INTEROP_MOF_PATH)/PG_CIMXMLCommunicationMechanism$(PG_INTEROP_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_INTEROP_MOF_PATH)/PG_CIMXMLCommunicationMechanism$(PG_INTEROP_SCHEMA_VER).mof"
@$(ECHO) +++++ Loading PG_Namespace$(PG_INTEROP_SCHEMA_VER) into $(INTEROPNS) namespace ...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_INTEROP_MOF_PATH)/PG_Namespace$(PG_INTEROP_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_INTEROP_MOF_PATH)/PG_Namespace$(PG_INTEROP_SCHEMA_VER).mof"
@$(ECHO) +++++ Loading Computer System schema into $(INTEROPNS) namespace ...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_COMPUTERSYSTEM_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_COMPUTERSYSTEM_MOF_PATH)/PG_ComputerSystem$(PG_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_COMPUTERSYSTEM_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_COMPUTERSYSTEM_MOF_PATH)/PG_ComputerSystem$(PG_SCHEMA_VER).mof"
@$(ECHO) +++++ Loading PG_ServerProfile schema into $(INTEROPNS) namespace ...
- @$(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_INTEROP_MOF_PATH)/PG_ServerProfile$(PG_INTEROP_SCHEMA_VER).mof"
+ @$(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(INTEROPNS)" $(ALLOW_EXPERIMENTAL) "$(PG_INTEROP_MOF_PATH)/PG_ServerProfile$(PG_INTEROP_SCHEMA_VER).mof"
endif
diff -up pegasus/Schemas/Pegasus/ManagedSystem/Makefile.orig pegasus/Schemas/Pegasus/ManagedSystem/Makefile
--- pegasus/Schemas/Pegasus/ManagedSystem/Makefile.orig 2015-04-02 12:51:58.257571054 +0200
+++ pegasus/Schemas/Pegasus/ManagedSystem/Makefile 2015-04-02 12:54:31.759930745 +0200
@@ -66,33 +66,33 @@ endif
ifeq ($(MANAGEDSYSTEM_NS_SUPPORTED),true)
repository:
@ $(ECHO) +++++ Loading CIM_Schema$(CIM_SCHEMA_VER) into $(MANAGEDSYSTEMNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(MANAGEDSYSTEMNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Schema$(CIM_SCHEMA_VER).mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(MANAGEDSYSTEMNS)" $(ALLOW_EXPERIMENTAL) "$(CIM_SCHEMA_DIR)/CIM_Schema$(CIM_SCHEMA_VER).mof"
@ $(ECHO) +++++ Loading PG_Events$(PG_INTEROP_SCHEMA_VER) into $(MANAGEDSYSTEMNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_INTEROP_MOF_PATH)/PG_Events$(PG_INTEROP_SCHEMA_VER).mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_INTEROP_MOF_PATH)/PG_Events$(PG_INTEROP_SCHEMA_VER).mof"
@ $(ECHO) +++++ Loading PG_ManagedSystemSchema$(PG_SCHEMA_VER) into $(MANAGEDSYSTEMNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_MOF_PATH)/PG_ManagedSystemSchema$(PG_SCHEMA_VER).mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_MOF_PATH)/PG_ManagedSystemSchema$(PG_SCHEMA_VER).mof"
ifndef SET_USER_CONTEXT_TO_REQUESTOR
@ $(ECHO) +++++ Registering Providers for PG_ManagedSystemSchema$(PG_SCHEMA_VER) ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_ManagedSystemSchema$(PG_SCHEMA_VER)R.mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_ManagedSystemSchema$(PG_SCHEMA_VER)R.mof"
else
@ $(ECHO) +++++ Registering Providers for PG_ManagedSystemSchema21R ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_ManagedSystemSchema21R.mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_ManagedSystemSchema21R.mof"
endif
ifeq ($(PEGASUS_USE_RELEASE_CONFIG_OPTIONS),false)
@ $(ECHO) +++++ Loading PG_ManagedSystemTestSchema$(PG_SCHEMA_VER) into $(MANAGEDSYSTEMNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_MOF_PATH)/PG_ManagedSystemTestSchema$(PG_SCHEMA_VER).mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_MOF_PATH)/PG_ManagedSystemTestSchema$(PG_SCHEMA_VER).mof"
@ $(ECHO) +++++ Registering Providers for PG_ManagedSystemTestSchema$(PG_SCHEMA_VER) ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_ManagedSystemTestSchema$(PG_SCHEMA_VER)R.mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_ManagedSystemTestSchema$(PG_SCHEMA_VER)R.mof"
endif
ifeq ($(EXTENDED_MANAGEDSYSTEM_NS_SUPPORTED),true)
@ $(ECHO) +++++ Loading platform specific class definitions in $(MANAGEDSYSTEMNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_MOF_PATH)/$(FILE_PREFIX)_ManagedSystemSchema$(PG_SCHEMA_VER).mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(MANAGEDSYSTEMNS)" "$(PG_MOF_PATH)/$(FILE_PREFIX)_ManagedSystemSchema$(PG_SCHEMA_VER).mof"
@ $(ECHO) +++++ Registering Providers for platform specific classes in $(MANAGEDSYSTEMNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/$(FILE_PREFIX)_ManagedSystemSchema$(PG_SCHEMA_VER)R.mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/$(FILE_PREFIX)_ManagedSystemSchema$(PG_SCHEMA_VER)R.mof"
endif
ifeq ($(PEGASUS_ENABLE_SLP),true)
@ $(ECHO) +++++ Registering the SLPProvider in $(MANAGEDSYSTEMNS) namespace ...
- @ $(CIMMOFCLI) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_SLPProvider$(PG_SCHEMA_VER)R.mof"
+ @ $(CIMMOFCLI) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_MOF_PATH)" "-n$(INTEROPNS)" "$(PG_MOF_PATH)/PG_SLPProvider$(PG_SCHEMA_VER)R.mof"
endif
repositoryServer:
diff -up pegasus/src/Clients/benchmarkTest/Load/Makefile.orig pegasus/src/Clients/benchmarkTest/Load/Makefile
--- pegasus/src/Clients/benchmarkTest/Load/Makefile.orig 2015-04-02 12:54:48.848927271 +0200
+++ pegasus/src/Clients/benchmarkTest/Load/Makefile 2015-04-02 12:56:27.679228240 +0200
@@ -46,12 +46,12 @@ CIMMOFL = cimmofl
repository:
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(PROVIDERNS) namespace ...
- @ $(CIMMOFL) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" \
+ @ $(CIMMOFL) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" \
"-n$(PROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading $(BenchmarkMOF_NAME) class definitions into $(PROVIDERNS) namespace ...
- @ $(CIMMOFL) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(PROVIDERNS)" $(BenchmarkMOF_NAME).mof
+ @ $(CIMMOFL) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(PROVIDERNS)" $(BenchmarkMOF_NAME).mof
@ $(ECHO) +++++ Registering benchmark Provider ...
- @ $(CIMMOFL) "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" $(BenchmarkMOF_NAME)R.mof
+ @ $(CIMMOFL) "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" $(BenchmarkMOF_NAME)R.mof
repositoryServer:
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(PROVIDERNS) namespace ...
diff -up pegasus/src/Providers/sample/Load/Makefile.orig pegasus/src/Providers/sample/Load/Makefile
--- pegasus/src/Providers/sample/Load/Makefile.orig 2015-04-02 12:56:41.488278412 +0200
+++ pegasus/src/Providers/sample/Load/Makefile 2015-04-02 13:01:24.078286449 +0200
@@ -44,52 +44,52 @@ SAMPLEPROVIDERNS=root/SampleProvider
# Load the sample MOF with the local compiler.
repository:
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(SAMPLEPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_Event$(CIM_SCHEMA_VER) into $(SAMPLEPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_Physical$(CIM_SCHEMA_VER) into $(SAMPLEPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Physical$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Physical$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_System$(CIM_SCHEMA_VER) into $(SAMPLEPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_System$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_System$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading PG_Events$(PG_INTEROP_SCHEMA_VER) into $(SAMPLEPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(PG_INTEROP_MOF_PATH)/PG_Events$(PG_INTEROP_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(SAMPLEPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(PG_INTEROP_MOF_PATH)/PG_Events$(PG_INTEROP_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading SampleProvider class definitions into $(SAMPLEPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" SampleProviderSchema.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" AssociationProvider.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" ClientTest.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" SampleProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" AssociationProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" ClientTest.mof
@ $(ECHO) +++++ Registering Sample Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" SampleProviderSchemaR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" SampleProviderSchemaR.mof
ifdef PEGASUS_ENABLE_EXECQUERY
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" InstanceQueryProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" InstanceQueryProviderR.mof
endif
ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), true)
@ $(ECHO) +++++ Installing the MOF file for CMPI Providers
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" CWS_FilesAndDir.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" CWS_FilesAndDir.mof
@ $(ECHO) +++++ Registering FilesAndDir schema Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CWS_FilesAndDirR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CWS_FilesAndDirR.mof
@ $(ECHO) +++++ Installing the MOF file for CMPI ProcessIndication Provider
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" RT_Sample.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" RT_Sample.mof
@ $(ECHO) +++++ Registering CMPI ProcessIndication Provider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" RT_SampleR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" RT_SampleR.mof
@ $(ECHO) +++++ Registering FilesAndDir CXX schema Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CWS_FilesAndDir_CXX_R.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CWS_FilesAndDir_CXX_R.mof
@ $(ECHO) +++++ Registering TestCMPI_CXX schema Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" TestCMPI_CXX.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_CXX_R.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" TestCMPI_CXX.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_CXX_R.mof
@ $(ECHO) +++++ Installing the MOF file for SampleClass CMPI Provider
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" CMPISampleClass.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" CMPISampleClass.mof
@ $(ECHO) +++++ Registering CMPI SampleClass Provider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CMPISampleClassR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CMPISampleClassR.mof
@ $(ECHO) +++++ Loading CMPI Sample Provider class definitions into $(SAMPLEPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" CMPISampleProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(SAMPLEPROVIDERNS)" CMPISampleProviderSchema.mof
@ $(ECHO) +++++ Registering CMPI Sample Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CMPISampleProviderSchemaR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CMPISampleProviderSchemaR.mof
endif
# Load the sample mof through the Client interface compiler.
diff -up pegasus/src/Providers/TestProviders/Load/Makefile.orig pegasus/src/Providers/TestProviders/Load/Makefile
--- pegasus/src/Providers/TestProviders/Load/Makefile.orig 2015-04-02 13:01:53.265389867 +0200
+++ pegasus/src/Providers/TestProviders/Load/Makefile 2015-04-02 13:18:57.613079600 +0200
@@ -67,160 +67,160 @@ EI_STATIC_TEST_NAMESPACE = test/Embedded
##
repository:
@ $(ECHO) +++++ Loading Core$(CIM_SCHEMA_VER)_Qualifiers.mof into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(TESTPROVIDERNS) $(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(TESTPROVIDERNS) $(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_Event$(CIM_SCHEMA_VER) into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_Physical$(CIM_SCHEMA_VER) into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Physical$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Physical$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_System$(CIM_SCHEMA_VER) into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_System$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_System$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_Interop$(CIM_SCHEMA_VER) into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Interop$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Interop$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading PG_Events$(PG_INTEROP_SCHEMA_VER) into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(PG_INTEROP_MOF_PATH)/PG_Events$(PG_INTEROP_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(PG_INTEROP_MOF_PATH)" "-n$(TESTPROVIDERNS)" $(ALLOW_EXPERIMENTAL) $(PG_INTEROP_MOF_PATH)/PG_Events$(PG_INTEROP_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading TestInstanceProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestInstanceProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestInstanceProviderSchema.mof
@ $(ECHO) +++++ Loading TestChunkingStressProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestChunkingStressProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestChunkingStressProviderSchema.mof
@ $(ECHO) +++++ Loading IndicationStressTest class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" IndicationStressTestProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" IndicationStressTestProviderSchema.mof
@ $(ECHO) +++++ Loading TestFaultyProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestFaultyProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestFaultyProviderSchema.mof
@ $(ECHO) +++++ Registering TestInstanceProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestInstanceProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestInstanceProviderRegistration.mof
@ $(ECHO) +++++ Registering TestChunkingStressProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestChunkingStressProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestChunkingStressProviderRegistration.mof
@ $(ECHO) +++++ Registering IndicationStressTest Provider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" IndicationStressTestProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" IndicationStressTestProviderR.mof
@ $(ECHO) +++++ Registering IndicationStressTestConsumer Provider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" IndicationStressTestConsumerR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" IndicationStressTestConsumerR.mof
@ $(ECHO) +++++ Registering ProviderLifecycleIndicationConsumer Provider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" ProviderLifecycleIndicationConsumerR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" ProviderLifecycleIndicationConsumerR.mof
@ $(ECHO) +++++ Registering TestFaultyProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestFaultyProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestFaultyProviderRegistration.mof
@ $(ECHO) +++++ Registering TestGoodInstanceProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestGoodInstanceProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestGoodInstanceProviderRegistration.mof
@ $(ECHO) +++++ Loading DeliveryRetryTest class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" DeliveryRetryTestProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" DeliveryRetryTestProviderSchema.mof
@ $(ECHO) +++++ Registering DeliveryRetryTest Provider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" DeliveryRetryTestProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" DeliveryRetryTestProviderR.mof
@ $(ECHO) +++++ Registering IndicationStressTestConsumer Provider ...
@ $(ECHO) +++++ Loading IndicationTestProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" IndicationTestProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" IndicationTestProvider.mof
@ $(ECHO) +++++ Registering IndicationTestProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" IndicationTestProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" IndicationTestProviderR.mof
@ $(ECHO) +++++ Loading MethodTestProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" MethodTestProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" MethodTestProvider.mof
@ $(ECHO) +++++ Loading GroupMethodProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" GroupMethodProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" GroupMethodProvider.mof
@ $(ECHO) +++++ Loading ProviderLifecycleIndicationProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" ProviderLifecycleIndicationProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" ProviderLifecycleIndicationProvider.mof
@ $(ECHO) +++++ Registering MethodTestProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" MethodTestProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" MethodTestProviderR.mof
@ $(ECHO) +++++ Loading CLITestProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" CLITestProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" CLITestProvider.mof
@ $(ECHO) +++++ Registering CLITestProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CLITestProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CLITestProviderR.mof
@ $(ECHO) +++++ Loading TestCIM_ErrorProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestCIM_ErrorProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestCIM_ErrorProvider.mof
@ $(ECHO) +++++ Registering TestCIM_ErrorProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCIM_ErrorProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCIM_ErrorProviderR.mof
@ $(ECHO) +++++ Installing the Family MOF file for the association provider
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TST_Family.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TST_Family.mof
@ $(ECHO) +++++ Registering FamilyProvider schema Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" FamilyProviderSchemaR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" FamilyProviderSchemaR.mof
@ $(ECHO) +++++ Loading CIMOMHandleTestProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" CIMOMHandleTestProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" CIMOMHandleTestProviderSchema.mof
@ $(ECHO) +++++ Registering CIMOMHandleTestProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CIMOMHandleTestProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CIMOMHandleTestProviderRegistration.mof
@ $(ECHO) +++++ Loading TestAggregationOutputProvider.mof into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestAggregationOutputProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestAggregationOutputProvider.mof
@ $(ECHO) +++++ Registering TestAggregationOutputProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestAggregationOutputProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestAggregationOutputProviderR.mof
@ $(ECHO) +++++ Loading LocalizedProvider.mof into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" LocalizedProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" LocalizedProvider.mof
@ $(ECHO) +++++ Registering LocalizedProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" LocalizedProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" LocalizedProviderR.mof
@ $(ECHO) +++++ Loading ResponseStressTest class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" ResponseStressTest.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" ResponseStressTest.mof
@ $(ECHO) +++++ Registering ResponseStressTestProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" ResponseStressTestProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" ResponseStressTestProviderRegistration.mof
ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), true)
@ $(ECHO) +++++ Loading TestCMPI_ProviderSchema class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestCMPI_ProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestCMPI_ProviderSchema.mof
@ $(ECHO) +++++ Registering TestCMPI_ProviderRegistration ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_ProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_ProviderRegistration.mof
@ $(ECHO) +++++ Loading TestCMPI_Association class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestCMPI_AssociationProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestCMPI_AssociationProvider.mof
@ $(ECHO) +++++ Registering TestCMPI_AssociationProviderRegistration ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_AssociationProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_AssociationProviderR.mof
@ $(ECHO) +++++ Loading CMPIPerf_TestProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" CMPIPerf_TestProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" CMPIPerf_TestProviderSchema.mof
@ $(ECHO) +++++ Registering CMPIPerf_TestProviderRegistration ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CMPIPerf_TestProviderRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" CMPIPerf_TestProviderRegistration.mof
ifdef PEGASUS_ENABLE_EXECQUERY
@ $(ECHO) +++++ Registering TestCMPI_ProviderExecQueryRegistration ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_ProviderExecQueryRegistration.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestCMPI_ProviderExecQueryRegistration.mof
endif
endif
ifndef PEGASUS_DISABLE_PROV_USERCTXT
@ $(ECHO) +++++ Loading UserContextTestProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" UserContextTestProvider.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" UserContextTestProvider.mof
@ $(ECHO) +++++ Registering UserContextTestProvider ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextRequestorR.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextPrivilegedR.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextDesignatedR.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextCIMServerR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextRequestorR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextPrivilegedR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextDesignatedR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" UserContextCIMServerR.mof
endif
@ $(ECHO) +++++ Loading OOPModuleFailureTestProvider class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" FailureTestIndication.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" FailureTestIndication.mof
ifdef PEGASUS_BUILD_INTEROP
@ $(ECHO) +++++ Loading TestServerProfile class definitions into $(TESTPROVIDERNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestServerProfileSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTPROVIDERNS)" TestServerProfileSchema.mof
@ $(ECHO) +++++ Registering TestServerProfile Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestServerProfileR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" TestServerProfileR.mof
endif
@ $(ECHO) +++++ EmbeddedInstanceTest provider class definitions into $(EI_DYNAMIC_TEST_NAMESPACE) and $(EI_STATIC_TEST_NAMESPACE) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(EI_DYNAMIC_TEST_NAMESPACE) $(EI_SCHEMA_DIR)/Core_Qualifiers.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" CIMError.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Core.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Event.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Interop.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" EmbeddedInstanceProviderSchema.mof
-
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(EI_STATIC_TEST_NAMESPACE) $(EI_SCHEMA_DIR)/Core_Qualifiers.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" CIMError.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Core.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Event.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Interop.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" EmbeddedInstanceProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(EI_DYNAMIC_TEST_NAMESPACE) $(EI_SCHEMA_DIR)/Core_Qualifiers.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" CIMError.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Core.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Event.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Interop.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_DYNAMIC_TEST_NAMESPACE)" "-aE" EmbeddedInstanceProviderSchema.mof
+
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(EI_STATIC_TEST_NAMESPACE) $(EI_SCHEMA_DIR)/Core_Qualifiers.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" CIMError.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Core.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Event.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" $(EI_SCHEMA_DIR)/CIM_Interop.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(EI_SCHEMA_DIR)" "-n$(EI_STATIC_TEST_NAMESPACE)" "-aE" EmbeddedInstanceProviderSchema.mof
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" EmbeddedInstanceProviderR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(INTEROPNS)" EmbeddedInstanceProviderR.mof
# create remote namespace for Remote CMPI test providers
ifdef PEGASUS_ENABLE_REMOTE_CMPI
@ echo +++++ Creating remote namespace ...
@@ -231,28 +231,28 @@ endif
## Indication filter source namespaces testing
##
@ $(ECHO) +++++ Loading Core$(CIM_SCHEMA_VER)_Qualifiers.mof into $(TESTINDSRCNS1) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(TESTINDSRCNS1) $(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(TESTINDSRCNS1) $(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(TESTINDSRCNS1) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS1)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS1)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_Event$(CIM_SCHEMA_VER) into $(TESTINDSRCNS1) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS1)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS1)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading IndicationStressTest class definition into $(TESTINDSRCNS1) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS1)" IndicationStressTestProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS1)" IndicationStressTestProviderSchema.mof
ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), true)
@ $(ECHO) +++++ Loading TestCMPI_ProviderSchema class definitions into $(TESTINDSRCNS1) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS1)" TestCMPI_ProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS1)" TestCMPI_ProviderSchema.mof
endif
@ $(ECHO) +++++ Loading Core$(CIM_SCHEMA_VER)_Qualifiers.mof into $(TESTINDSRCNS2) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(TESTINDSRCNS2) $(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(TESTINDSRCNS2) $(CIM_SCHEMA_DIR)/Core$(CIM_SCHEMA_VER)_Qualifiers.mof
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(TESTINDSRCNS2) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS2)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS2)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading CIM_Event$(CIM_SCHEMA_VER) into $(TESTINDSRCNS2) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS2)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(TESTINDSRCNS2)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Event$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading IndicationStressTest class definition into $(TESTINDSRCNS2) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS2)" IndicationStressTestProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS2)" IndicationStressTestProviderSchema.mof
ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), true)
@ $(ECHO) +++++ Loading TestCMPI_ProviderSchema class definitions into $(TESTINDSRCNS2) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS2)" TestCMPI_ProviderSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(TESTINDSRCNS2)" TestCMPI_ProviderSchema.mof
endif
diff -up pegasus/test/wetest/static/Load/Makefile.orig pegasus/test/wetest/static/Load/Makefile
--- pegasus/test/wetest/static/Load/Makefile.orig 2015-04-02 13:19:28.925192771 +0200
+++ pegasus/test/wetest/static/Load/Makefile 2015-04-02 13:20:21.994384585 +0200
@@ -42,14 +42,14 @@ STATICTESTNS=test/static
repository:
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(STATICTESTNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" -n$(STATICTESTNS) \
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" -n$(STATICTESTNS) \
$(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading WET_Schema into $(STATICTESTNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(STATICTESTNS) WET_Schema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(STATICTESTNS) WET_Schema.mof
@ $(ECHO) +++++ Loading Static Test Schema into $(STATICTESTNS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(STATICTESTNS) StaticTestSchema.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(STATICTESTNS) StaticTestSchema.mof
@ $(ECHO) +++++ Registering Static Tests Schema Providers ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(INTEROPNS) StaticTestSchemaR.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" -n$(INTEROPNS) StaticTestSchemaR.mof
repositoryServer:
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(STATICTESTNS) namespace ...
diff -up pegasus/test/wetest/wsman/Load/Makefile.orig pegasus/test/wetest/wsman/Load/Makefile
--- pegasus/test/wetest/wsman/Load/Makefile.orig 2015-04-02 13:40:54.714859175 +0200
+++ pegasus/test/wetest/wsman/Load/Makefile 2015-04-02 13:41:33.960003910 +0200
@@ -46,9 +46,9 @@ WSM_TEST_NS=test/WsmTest
# NOTE: I believe that the remove is duplicated for some reason.
repository:
@ $(ECHO) +++++ Loading CIM_Core$(CIM_SCHEMA_VER) into $(WSM_TEST_NS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(WSM_TEST_NS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-I$(CIM_SCHEMA_DIR)" "-n$(WSM_TEST_NS)" $(ALLOW_EXPERIMENTAL) $(CIM_SCHEMA_DIR)/CIM_Core$(CIM_SCHEMA_VER).mof
@ $(ECHO) +++++ Loading Wsm test class definitions into $(WSM_TEST_NS) namespace ...
- @ cimmofl "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(WSM_TEST_NS)" WsmTest.mof
+ @ cimmofl "-aE" "-R$(REPOSITORY_DIR)" "-N$(REPOSITORY_NAME)" "-M$(REPOSITORY_MODE)" "-n$(WSM_TEST_NS)" WsmTest.mof
# Load the sample mof through the Client interface compiler but do not
# clean out the existing version.

View File

@ -0,0 +1,30 @@
diff -up pegasus/src/Pegasus/ProviderManager2/CMPI/CMPISCMOUtilities.cpp.orig pegasus/src/Pegasus/ProviderManager2/CMPI/CMPISCMOUtilities.cpp
--- pegasus/src/Pegasus/ProviderManager2/CMPI/CMPISCMOUtilities.cpp.orig 2015-03-31 15:28:05.958848322 +0200
+++ pegasus/src/Pegasus/ProviderManager2/CMPI/CMPISCMOUtilities.cpp 2015-03-31 15:29:13.253136407 +0200
@@ -349,13 +349,6 @@ CMPIrc CMPISCMOUtilities::scmoValue2CMPI
data->value.uint64 = 0;
data->state = CMPI_goodValue;
- //Check for NULL CIMValue
- if( scmoValue == 0 )
- {
- data->state = CMPI_nullValue;
- return CMPI_RC_OK;
- }
-
if (type & CMPI_ARRAY)
{
// Get the type of the element of the CMPIArray
@@ -389,6 +382,12 @@ CMPIrc CMPISCMOUtilities::scmoValue2CMPI
}
else
{
+ //Check for NULL CIMValue
+ if( scmoValue == 0 )
+ {
+ data->state = CMPI_nullValue;
+ return CMPI_RC_OK;
+ }
// Check for encpsulated type, which need special handling
if (type&CMPI_ENC)
{

View File

@ -0,0 +1,27 @@
diff -up pegasus/src/Pegasus/ProviderManager2/CMPI/CMPI_Enumeration.cpp.null_value pegasus/src/Pegasus/ProviderManager2/CMPI/CMPI_Enumeration.cpp
--- pegasus/src/Pegasus/ProviderManager2/CMPI/CMPI_Enumeration.cpp.null_value 2012-10-22 19:24:19.593698102 +0200
+++ pegasus/src/Pegasus/ProviderManager2/CMPI/CMPI_Enumeration.cpp 2012-10-22 19:28:19.190897537 +0200
@@ -167,6 +167,7 @@ extern "C"
(new CMPI_Object(
new SCMOInstance((*ia)[ie->cursor++]),
CMPI_Object::ObjectTypeInstance));
+ data.state = CMPI_goodValue;
CMSetStatus(rc, CMPI_RC_OK);
}
else
@@ -185,6 +186,7 @@ extern "C"
(new CMPI_Object(
new SCMOInstance((*ia)[ie->cursor++]),
CMPI_Object::ObjectTypeInstance));
+ data.state = CMPI_goodValue;
CMSetStatus(rc, CMPI_RC_OK);
}
else
@@ -203,6 +205,7 @@ extern "C"
(new CMPI_Object(
new SCMOInstance((*opa)[oe->cursor++]),
CMPI_Object::ObjectTypeObjectPath));
+ data.state = CMPI_goodValue;
CMSetStatus(rc, CMPI_RC_OK);
}
else

View File

@ -0,0 +1,126 @@
diff -up pegasus/Schemas/CIM238/CIM_Core.mof.orig pegasus/Schemas/CIM238/CIM_Core.mof
--- pegasus/Schemas/CIM238/CIM_Core.mof.orig 2015-04-07 15:24:25.280804943 +0200
+++ pegasus/Schemas/CIM238/CIM_Core.mof 2015-04-07 15:24:25.321805120 +0200
@@ -146,11 +146,14 @@
#pragma include ("DMTF/Core/CIM_SpareGroup.mof")
#pragma include ("DMTF/Core/CIM_StatusCollection.mof")
#pragma include ("DMTF/Core/CIM_StorageAllocationSettingData.mof")
+#pragma include ("DMTF/User/CIM_Identity.mof")
+#pragma include ("DMTF/User/CIM_StorageHardwareID.mof")
#pragma include ("DMTF/Core/CIM_StorageHardwareIDElementSettingData.mof")
#pragma include ("DMTF/Core/CIM_StorageRedundancyGroup.mof")
#pragma include ("DMTF/Core/CIM_SystemSetting.mof")
#pragma include ("DMTF/Core/CIM_SystemSettingContext.mof")
#pragma include ("DMTF/Core/CIM_SystemSpecificCollection.mof")
+#pragma include ("DMTF/System/CIM_VirtualSystemSettingData.mof")
#pragma include ("DMTF/Core/CIM_VirtualEthernetSwitchSettingData.mof")
#pragma include ("DMTF/Core/CIM_VirtualSystemManagementCapabilities.mof")
#pragma include ("DMTF/Core/CIM_VirtualSystemSnapshotCapabilities.mof")
@@ -185,6 +188,8 @@
#pragma include ("DMTF/Core/CIM_ScopedSetting.mof")
#pragma include ("DMTF/Core/CIM_StatisticsCollection.mof")
#pragma include ("DMTF/Core/CIM_StorageRedundancySet.mof")
+#pragma include ("DMTF/Interop/CIM_Message.mof")
+#pragma include ("DMTF/Interop/CIM_Error.mof")
#pragma include ("DMTF/Core/CIM_ConcreteJob.mof")
#pragma include ("DMTF/Core/CIM_DefaultSetting.mof")
#pragma include ("DMTF/Core/CIM_EnabledLogicalElement.mof")
@@ -214,6 +219,7 @@
#pragma include ("DMTF/Core/CIM_AdminDomain.mof")
#pragma include ("DMTF/Core/CIM_BasedOn.mof")
#pragma include ("DMTF/Core/CIM_BasicExecutionService.mof")
+#pragma include ("DMTF/System/CIM_ComputerSystem.mof")
#pragma include ("DMTF/Core/CIM_ComputerSystemElementSettingData.mof")
#pragma include ("DMTF/Core/CIM_ConfigurationForSystem.mof")
#pragma include ("DMTF/Core/CIM_ContainedDomain.mof")
@@ -245,6 +251,8 @@
#pragma include ("DMTF/Core/CIM_SettingForSystem.mof")
#pragma include ("DMTF/Core/CIM_SoftwareIdentityResource.mof")
#pragma include ("DMTF/Core/CIM_SystemDeviceView.mof")
+#pragma include ("DMTF/Device/CIM_ProtocolController.mof")
+#pragma include ("DMTF/Device/CIM_SCSIProtocolController.mof")
#pragma include ("DMTF/Core/CIM_SystemSCSIProtocolController.mof")
#pragma include ("DMTF/Core/CIM_VirtualSystemManagementService.mof")
#pragma include ("DMTF/Core/CIM_VirtualSystemSnapshotService.mof")
@@ -258,6 +266,13 @@
#pragma include ("DMTF/Core/CIM_ProtocolService.mof")
#pragma include ("DMTF/Core/CIM_ProvidesEndpoint.mof")
#pragma include ("DMTF/Core/CIM_RemotePort.mof")
+#pragma include ("DMTF/User/CIM_SecurityService.mof")
+#pragma include ("DMTF/User/CIM_AuthenticationService.mof")
+#pragma include ("DMTF/User/CIM_IdentityManagementService.mof")
+#pragma include ("DMTF/User/CIM_StorageHardwareIDManagementService.mof")
#pragma include ("DMTF/Core/CIM_StorageHardwareIDManagementServiceDependency.mof")
+#pragma include ("DMTF/Device/CIM_LogicalPort.mof")
+#pragma include ("DMTF/Device/CIM_NetworkPort.mof")
+#pragma include ("DMTF/Device/CIM_FCPort.mof")
#pragma include ("DMTF/Core/CIM_SystemFCPort.mof")
diff -up pegasus/Schemas/CIM238/CIM_Event.mof.orig pegasus/Schemas/CIM238/CIM_Event.mof
--- pegasus/Schemas/CIM238/CIM_Event.mof.orig 2015-04-07 15:24:25.283804956 +0200
+++ pegasus/Schemas/CIM238/CIM_Event.mof 2015-04-07 15:24:25.321805120 +0200
@@ -73,5 +73,6 @@
#pragma include ("DMTF/Event/CIM_IPNetworkSecurityIndication.mof")
#pragma include ("DMTF/Event/CIM_IPPacketFilterIndication.mof")
#pragma include ("DMTF/Event/CIM_IndicationService.mof")
+#pragma include ("DMTF/System/CIM_Log.mof")
#pragma include ("DMTF/Event/CIM_LogOfIndication.mof")
diff -up pegasus/Schemas/CIM238/CIM_Interop.mof.orig pegasus/Schemas/CIM238/CIM_Interop.mof
--- pegasus/Schemas/CIM238/CIM_Interop.mof.orig 2015-04-07 15:24:25.285804965 +0200
+++ pegasus/Schemas/CIM238/CIM_Interop.mof 2015-04-07 15:24:25.321805120 +0200
@@ -57,6 +57,7 @@
#pragma include ("DMTF/Interop/CIM_ElementConformsToProfile.mof")
#pragma include ("DMTF/Interop/CIM_ReferencedProfile.mof")
#pragma include ("DMTF/Interop/CIM_SubProfileRequiresProfile.mof")
+#pragma include ("DMTF/Network/CIM_ProtocolServiceCapabilities.mof")
#pragma include ("DMTF/Interop/CIM_WBEMProtocolServiceCapabilities.mof")
#pragma include ("DMTF/Interop/CIM_WSManagementCapabilities.mof")
#pragma include ("DMTF/Interop/CIM_CIMXMLCapabilities.mof")
diff -up pegasus/Schemas/CIM238/CIM_System.mof.orig pegasus/Schemas/CIM238/CIM_System.mof
--- pegasus/Schemas/CIM238/CIM_System.mof.orig 2015-04-07 15:24:25.290804986 +0200
+++ pegasus/Schemas/CIM238/CIM_System.mof 2015-04-07 15:24:25.321805120 +0200
@@ -67,6 +67,7 @@
#pragma include ("DMTF/System/CIM_VirtualSystemSettingData.mof")
#pragma include ("DMTF/System/CIM_AttachedElement.mof")
#pragma include ("DMTF/System/CIM_BatchJobGroup.mof")
+#pragma include ("DMTF/User/CIM_Credential.mof")
#pragma include ("DMTF/System/CIM_BIOSServiceCapabilities.mof")
#pragma include ("DMTF/System/CIM_BootServiceCapabilities.mof")
#pragma include ("DMTF/System/CIM_ComputerSystemNodeCapabilities.mof")
@@ -86,8 +87,10 @@
#pragma include ("DMTF/System/CIM_FileImportCapabilities.mof")
#pragma include ("DMTF/System/CIM_FileSystemConfigurationCapabilities.mof")
#pragma include ("DMTF/System/CIM_FileSystemSettingData.mof")
+#pragma include ("DMTF/Device/CIM_StatisticsCapabilities.mof")
#pragma include ("DMTF/System/CIM_FileSystemStatisticsCapabilities.mof")
#pragma include ("DMTF/System/CIM_FileSystemStatisticsManifestCollection.mof")
+#pragma include ("DMTF/User/CIM_Privilege.mof")
#pragma include ("DMTF/System/CIM_ImportedFileShareSetting.mof")
#pragma include ("DMTF/System/CIM_ImportedShareRoot.mof")
#pragma include ("DMTF/System/CIM_LogEntry.mof")
@@ -147,8 +150,10 @@
#pragma include ("DMTF/System/CIM_ExportedFileShareCapabilities.mof")
#pragma include ("DMTF/System/CIM_FCHBADiagnosticTest.mof")
#pragma include ("DMTF/System/CIM_FileSystem.mof")
+#pragma include ("DMTF/Device/CIM_StorageSetting.mof")
#pragma include ("DMTF/System/CIM_FileSystemCapabilities.mof")
#pragma include ("DMTF/System/CIM_FileSystemConfigurationService.mof")
+#pragma include ("DMTF/Device/CIM_StatisticsService.mof")
#pragma include ("DMTF/System/CIM_FileSystemStatisticsService.mof")
#pragma include ("DMTF/System/CIM_HelpService.mof")
#pragma include ("DMTF/System/CIM_HelpServiceAvailableToFile.mof")
diff -up pegasus/Schemas/CIM238/DMTF/qualifiers.mof.orig pegasus/Schemas/CIM238/DMTF/qualifiers.mof
--- pegasus/Schemas/CIM238/DMTF/qualifiers.mof.orig 2013-08-12 11:34:14.000000000 +0200
+++ pegasus/Schemas/CIM238/DMTF/qualifiers.mof 2015-04-07 15:24:25.321805120 +0200
@@ -152,8 +152,8 @@ Qualifier PUnit : string = null,
Qualifier Read : boolean = true,
Scope(property);
-Qualifier Reference : string = null,
- Scope(property);
+//Qualifier Reference : string = null,
+// Scope(property);
Qualifier Required : boolean = false,
Scope(property, reference, method, parameter),

View File

@ -0,0 +1,24 @@
diff -up pegasus/rpm/manLinux/man8.Z/cimconfig.8.orig pegasus/rpm/manLinux/man8.Z/cimconfig.8
--- pegasus/rpm/manLinux/man8.Z/cimconfig.8.orig 2014-01-07 14:51:40.841757649 +0100
+++ pegasus/rpm/manLinux/man8.Z/cimconfig.8 2014-01-07 14:52:03.415820767 +0100
@@ -161,7 +161,7 @@ and listener destination instances other
is required.
.PD 0
.IP
-.BR "Default Value: " False
+.BR "Default Value: " True
.IP
.BR Dynamic: \0No
.PD
diff -up pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp.orig pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp
--- pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp.orig 2014-01-07 14:48:14.377180640 +0100
+++ pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp 2014-01-07 14:51:30.760729464 +0100
@@ -121,7 +121,7 @@ static struct ConfigPropertyRow properti
#if defined(PEGASUS_OS_HPUX) || defined(PEGASUS_OS_LINUX)
# ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS
{"enableSubscriptionsForNonprivilegedUsers",
- "false", IS_STATIC, IS_VISIBLE},
+ "true", IS_STATIC, IS_VISIBLE},
# else
{"enableSubscriptionsForNonprivilegedUsers", "true", IS_STATIC, IS_VISIBLE},
# endif

View File

@ -0,0 +1,23 @@
diff -up pegasus/src/Pegasus/ControlProviders/InteropProvider/ElementConformsToProfile.cpp.orig pegasus/src/Pegasus/ControlProviders/InteropProvider/ElementConformsToProfile.cpp
--- pegasus/src/Pegasus/ControlProviders/InteropProvider/ElementConformsToProfile.cpp.orig 2015-02-10 15:00:48.660891308 +0100
+++ pegasus/src/Pegasus/ControlProviders/InteropProvider/ElementConformsToProfile.cpp 2015-02-10 15:02:01.811194154 +0100
@@ -129,6 +129,7 @@ Array<CIMInstance> InteropProvider::enum
Array<CIMInstance> InteropProvider::enumElementConformsToProfileInstances(
const OperationContext & opContext, const CIMNamespaceName & opNamespace)
{
+ const Uint32 PEGASUS_DYNAMIC_LEN(PEGASUS_DYNAMIC.size());
CIMClass elementConformsClass = repository->getClass(
PEGASUS_NAMESPACENAME_INTEROP,
PEGASUS_CLASSNAME_PG_ELEMENTCONFORMSTOPROFILE,
diff -up pegasus/src/Pegasus/ControlProviders/InteropProvider/InteropConstants.h.orig pegasus/src/Pegasus/ControlProviders/InteropProvider/InteropConstants.h
--- pegasus/src/Pegasus/ControlProviders/InteropProvider/InteropConstants.h.orig 2015-02-10 14:43:34.168607514 +0100
+++ pegasus/src/Pegasus/ControlProviders/InteropProvider/InteropConstants.h 2015-02-10 14:43:44.165648967 +0100
@@ -150,7 +150,7 @@ const String PEGASUS_INTERNAL_PROVIDER_T
const String PEGASUS_INTERNAL_SERVICE_TYPE(
"Internal Service");
const String PEGASUS_DYNAMIC("__DYNAMIC_");
-const Uint32 PEGASUS_DYNAMIC_LEN(PEGASUS_DYNAMIC.size());
+// const Uint32 PEGASUS_DYNAMIC_LEN(PEGASUS_DYNAMIC.size());
const CIMNamespaceName PEGASUS_NAMESPACENAME_ROOT("root");
#define thisProvider "InteropProvider"

View File

@ -0,0 +1,10 @@
diff -up pegasus/src/Pegasus/ExportClient/tests/libraries.mak.orig pegasus/src/Pegasus/ExportClient/tests/libraries.mak
--- pegasus/src/Pegasus/ExportClient/tests/libraries.mak.orig 2020-11-26 10:20:13.938292092 +0100
+++ pegasus/src/Pegasus/ExportClient/tests/libraries.mak 2020-11-26 10:25:30.248432039 +0100
@@ -35,4 +35,5 @@ LIBRARIES= \
pegrepository \
pegconfig \
pegclient \
- pegcommon
+ pegcommon \
+ pegwsmserver

View File

@ -0,0 +1,28 @@
diff -up pegasus/src/Pegasus/Common/Message.cpp.orig pegasus/src/Pegasus/Common/Message.cpp
--- pegasus/src/Pegasus/Common/Message.cpp.orig 2015-03-14 14:56:48.000000000 +0100
+++ pegasus/src/Pegasus/Common/Message.cpp 2015-04-08 10:02:47.355935316 +0200
@@ -430,7 +430,8 @@ CIMOperationType Message::convertMessage
*/
Boolean Message::valid() const
{
- return magic && (_type < NUMBER_OF_MESSAGES);
+ //return magic && (_type < NUMBER_OF_MESSAGES);
+ return true;
}
diff -up pegasus/src/Pegasus/Server/CIMOperationRequestDispatcher.cpp.orig pegasus/src/Pegasus/Server/CIMOperationRequestDispatcher.cpp
--- pegasus/src/Pegasus/Server/CIMOperationRequestDispatcher.cpp.orig 2015-03-14 14:56:48.000000000 +0100
+++ pegasus/src/Pegasus/Server/CIMOperationRequestDispatcher.cpp 2015-04-08 10:02:47.357935317 +0200
@@ -1008,9 +1008,11 @@ Boolean CIMOperationRequestDispatcher::_
}
else
{
+/*
EnumerationContext* ent = _enumerationContextTable->find(
poA->_contextId);
PEGASUS_DEBUG_ASSERT(ent == en);
+*/
}
PEGASUS_DEBUG_ASSERT(poA->_contextId == en->getContextId());

View File

@ -0,0 +1,46 @@
diff -up pegasus/rpm/manLinux/man8.Z/cimconfig.8.orig pegasus/rpm/manLinux/man8.Z/cimconfig.8
--- pegasus/rpm/manLinux/man8.Z/cimconfig.8.orig 2015-09-17 14:29:03.519331559 +0200
+++ pegasus/rpm/manLinux/man8.Z/cimconfig.8 2015-09-17 15:02:37.993855252 +0200
@@ -211,7 +211,7 @@ configuration.
.PP
.B fullyQualifiedHostName
.IP
-.BR Description: " Can be used to override the local system supplied
+.BR Description: " Can be used to override the local system supplied
fully qualified hostname (with domain) the CIM Server is using to build objects.
If not set, querying this configuration option will report the system
supplied fully qualified hostname and behavior is not changed.
@@ -220,7 +220,8 @@ value will force the server to assume th
name with domain. Setting this allows the administrator to set the name that
indication operations and the CIM_ObjectManager assume for SystemName returned
as instance and key properties.
-.IP In common setups it is not recommended to explicitly set this value.
+.IP
+In common setups it is not recommended to explicitly set this value.
Some scenarios scenarios in which changing the default value makes sense include:
.IP
- The case where what the CIM Server shall return to clients for host name
@@ -516,6 +517,23 @@ by the pegasus webserver.
.BR Dynamic: \0No
.PD
.PP
+.B httpSessionTimeout
+.IP
+.BR Description: " If set to a positive integer, this value specifies a HTTP session lifetime
+in seconds. After initial authentication using standard HTTP mechanisms (HTTP Basic or Negotiate
+authentication), the server generates a cookie and sends it back to the client, as described in
+RFC 6265. The client can then use the cookie in subsequent requests to skip the usual HTTP
+authentication. The cookie is valid only for period of time specified by this configuration option.
+If set to zero, session management is turned off and CIM server will not issue cookies.
+This option is available only when Pegasus was compiled with PEGASUS_ENABLE_SESSION_COOKIES set
+to 'true'.
+.PD 0
+.IP
+.BR "Default Value: " 0
+.IP
+.BR Dynamic: \0Yes
+.PD
+.PP
If both the

View File

@ -0,0 +1,24 @@
diff -up pegasus/rpm/manLinux/man8.Z/cimconfig.8.orig pegasus/rpm/manLinux/man8.Z/cimconfig.8
--- pegasus/rpm/manLinux/man8.Z/cimconfig.8.orig 2020-06-25 14:03:32.211892328 +0200
+++ pegasus/rpm/manLinux/man8.Z/cimconfig.8 2020-06-25 14:11:31.687821336 +0200
@@ -463,7 +463,7 @@ mentioned between single quotes since it
like .+, !, -.
.PD 0
.IP
-.BR "Default Value: " DEFAULT\ (The\ default\ cipher\ list\ of\ OpenSSL)
+.BR "Default Value: " PROFILE=SYSTEM\ (Protocols\ enforced\ by\ system-wide\ crypto\ policy)
.IP
.BR Dynamic: \0No
.PD
diff -up pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp.orig pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp
--- pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp.orig 2020-06-25 14:02:19.104445704 +0200
+++ pegasus/src/Pegasus/Config/SecurityPropertyOwner.cpp 2020-06-25 14:02:54.695663130 +0200
@@ -140,7 +140,7 @@ static struct ConfigPropertyRow properti
#ifdef PEGASUS_ENABLE_USERGROUP_AUTHORIZATION
{"authorizedUserGroups", "", IS_STATIC, IS_VISIBLE},
#endif
- {"sslCipherSuite", "DEFAULT", IS_STATIC, IS_VISIBLE}
+ {"sslCipherSuite", "PROFILE=SYSTEM", IS_STATIC, IS_VISIBLE}
#ifdef PEGASUS_ENABLE_SESSION_COOKIES
,{"httpSessionTimeout", "0", IS_DYNAMIC, IS_VISIBLE}
#endif

View File

@ -0,0 +1,22 @@
--- pegasus/src/Pegasus/Common/InternalException.cpp.orig 2020-03-25 04:14:59.507215411 +0000
+++ pegasus/src/Pegasus/Common/InternalException.cpp 2020-03-25 04:06:31.545770255 +0000
@@ -982,7 +982,7 @@ SocketWriteError::~SocketWriteError()
// PEGASUS_MAXELEMENTS_NUM HTTP header fields in a single HTTP message
//==============================================================================
TooManyHTTPHeadersException::TooManyHTTPHeadersException()
- : Exception("more than "PEGASUS_MAXELEMENTS
+ : Exception("more than " PEGASUS_MAXELEMENTS
" header fields detected in HTTP message")
{
}
--- pegasus/src/Pegasus/Client/tests/slp/slpclient.cpp.orig 2020-03-25 04:21:46.078970915 +0000
+++ pegasus/src/Pegasus/Client/tests/slp/slpclient.cpp 2020-03-25 04:22:16.302878401 +0000
@@ -49,7 +49,7 @@ int main(int argc, char** argv)
Array<Attribute> criteria;
Attribute attr(
- PEG_WBEM_SLP_SERVICE_ID"="PEG_WBEM_SLP_SERVICE_ID_DEFAULT);
+ PEG_WBEM_SLP_SERVICE_ID"=" PEG_WBEM_SLP_SERVICE_ID_DEFAULT);
Array<CIMServerDescription> connections;
SLPClientOptions* opts = (SLPClientOptions*)NULL;
if (argc == 2)

View File

@ -0,0 +1,19 @@
diff -up pegasus/mak/config-linux.mak.orig pegasus/mak/config-linux.mak
diff -up pegasus/mak/SDKMakefile.orig pegasus/mak/SDKMakefile
--- pegasus/mak/SDKMakefile.orig 2015-10-06 13:05:36.418021720 +0200
+++ pegasus/mak/SDKMakefile 2015-10-06 13:08:41.135869147 +0200
@@ -482,6 +482,13 @@ ifeq ($(RUNTIME_PLATFORM_TEST_NEEDED), t
@$(ECHO-E) " endif" \
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " ifeq (\044(shell uname -i),ppc64le)" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " PEGASUS_PLATFORM = LINUX_PPC64_GNU" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " endif" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+
@$(ECHO-E) " ifeq (\044(shell uname -i),s390)" \
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
@$(ECHO-E) " PEGASUS_PLATFORM = LINUX_ZSERIES_GNU" \
diff -up pegasus/src/SDK/samples/mak/config.mak.orig pegasus/src/SDK/samples/mak/config.mak

View File

@ -0,0 +1,67 @@
diff -up pegasus/src/SDK/samples/Providers/Load/Makefile.orig pegasus/src/SDK/samples/Providers/Load/Makefile
--- pegasus/src/SDK/samples/Providers/Load/Makefile.orig 2012-05-14 11:12:20.000000000 +0200
+++ pegasus/src/SDK/samples/Providers/Load/Makefile 2015-05-26 13:47:11.475608966 +0200
@@ -37,7 +37,7 @@ else
ifeq ($(PEGASUS_INTEROP_NAMESPACE),interop)
INTEROPNS=interop
else
-INTEROPNS=root/PG_InterOp
+INTEROPNS=root/interop
endif
endif
@@ -48,20 +48,20 @@ createCXXrepository:
@$(ECHO) "+++++ Creating $(SAMPLECXXPROVIDERNS) namespace ..."
@$(ECHO) "+++++ Loading SDK_CIM_Schema.mof into" \
"$(SAMPLECXXPROVIDERNS) namespace ..."
- @$(PEGASUS_BIN_DIR)/cimmof -I$(PEGASUS_CIM_SCHEMA_DIR) \
+ @$(PEGASUS_BIN_DIR)/cimmof "-aE" -I$(PEGASUS_CIM_SCHEMA_DIR) \
-n$(SAMPLECXXPROVIDERNS) SDK_CIM_Schema.mof
@ $(ECHO) "+++++ Loading class definitions into " \
"$(SAMPLECXXPROVIDERNS) namespace ..."
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(SAMPLECXXPROVIDERNS) \
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(SAMPLECXXPROVIDERNS) \
SampleProviderSchema.mof
createCMPIrepository:
@$(ECHO) "+++++ Creating $(SAMPLECMPIPROVIDERNS) namespace ..."
@$(ECHO) "+++++ Loading SDK_CIM_Schema.mof into" \
"$(SAMPLECMPIPROVIDERNS) namespace ..."
- @$(PEGASUS_BIN_DIR)/cimmof -I$(PEGASUS_CIM_SCHEMA_DIR) \
+ @$(PEGASUS_BIN_DIR)/cimmof "-aE" -I$(PEGASUS_CIM_SCHEMA_DIR) \
-n$(SAMPLECMPIPROVIDERNS) SDK_CIM_Schema.mof
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(SAMPLECMPIPROVIDERNS) CWS_FilesAndDir.mof
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(SAMPLECMPIPROVIDERNS) CWS_FilesAndDir.mof
createrepository: createCXXrepository createCMPIrepository
@$(ECHO) "+++++ Repository created."
@@ -69,12 +69,12 @@ createrepository: createCXXrepository cr
registerproviders:
@ $(ECHO) "+++++ Registering providers for" \
"$(SAMPLECXXPROVIDERNS) namespace ..."
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(INTEROPNS) InstanceProviderR.mof
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(INTEROPNS) MethodProviderR.mof
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(INTEROPNS) IndicationProviderR.mof
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(INTEROPNS) SimpleDisplayConsumerR.mof
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(INTEROPNS) CWS_FilesAndDirR.mof
- @ $(PEGASUS_BIN_DIR)/cimmof -n$(INTEROPNS) AssociationProviderR.mof
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(INTEROPNS) InstanceProviderR.mof
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(INTEROPNS) MethodProviderR.mof
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(INTEROPNS) IndicationProviderR.mof
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(INTEROPNS) SimpleDisplayConsumerR.mof
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(INTEROPNS) CWS_FilesAndDirR.mof
+ @ $(PEGASUS_BIN_DIR)/cimmof "-aE" -n$(INTEROPNS) AssociationProviderR.mof
deregisterproviders:
@ $(ECHO) "+++++ Deregistering SDKInstanceProviderModule ..."
diff -up pegasus/src/SDK/samples/Providers/Load/SDK_CIM_Schema.mof.orig pegasus/src/SDK/samples/Providers/Load/SDK_CIM_Schema.mof
--- pegasus/src/SDK/samples/Providers/Load/SDK_CIM_Schema.mof.orig 2008-12-16 19:58:05.000000000 +0100
+++ pegasus/src/SDK/samples/Providers/Load/SDK_CIM_Schema.mof 2015-05-26 13:47:48.406767875 +0200
@@ -45,6 +45,7 @@
#pragma include ("DMTF/Core/CIM_ManagedElement.mof")
#pragma include ("DMTF/Core/CIM_ManagedSystemElement.mof")
#pragma include ("DMTF/Core/CIM_LogicalElement.mof")
+#pragma include ("DMTF/Core/CIM_AbstractComponent.mof")
#pragma include ("DMTF/Core/CIM_Component.mof")
#pragma include ("DMTF/Event/CIM_Indication.mof")
#pragma include ("DMTF/System/CIM_LogicalFile.mof")

View File

@ -0,0 +1,96 @@
diff -up pegasus/src/Pegasus/Common/SSLContext.cpp.orig pegasus/src/Pegasus/Common/SSLContext.cpp
--- pegasus/src/Pegasus/Common/SSLContext.cpp.orig 2017-02-28 14:39:49.497066327 +0100
+++ pegasus/src/Pegasus/Common/SSLContext.cpp 2017-03-01 10:56:06.726453475 +0100
@@ -225,27 +225,31 @@ int SSLCallback::verificationCRLCallback
PEG_TRACE_CSTRING(TRC_SSL, Tracer::LEVEL4, buf);
//initialize the CRL store
- X509_STORE_CTX crlStoreCtx;
- X509_STORE_CTX_init(&crlStoreCtx, sslCRLStore, NULL, NULL);
+ X509_STORE_CTX* crlStoreCtx;
+ crlStoreCtx = X509_STORE_CTX_new();
+ X509_STORE_CTX_init(crlStoreCtx, sslCRLStore, NULL, NULL);
PEG_TRACE_CSTRING(TRC_SSL, Tracer::LEVEL4,
"---> SSL: Initialized CRL store");
//attempt to get a CRL issued by the certificate's issuer
- X509_OBJECT obj;
+ X509_OBJECT* obj;
+ obj = X509_OBJECT_new();
if (X509_STORE_get_by_subject(
- &crlStoreCtx, X509_LU_CRL, issuerName, &obj) <= 0)
+ crlStoreCtx, X509_LU_CRL, issuerName, obj) <= 0)
{
- X509_STORE_CTX_cleanup(&crlStoreCtx);
+ X509_OBJECT_free(obj);
+ X509_STORE_CTX_cleanup(crlStoreCtx);
PEG_TRACE_CSTRING(TRC_SSL, Tracer::LEVEL3,
"---> SSL: No CRL by that issuer");
PEG_METHOD_EXIT();
return 0;
}
- X509_STORE_CTX_cleanup(&crlStoreCtx);
+ X509_STORE_CTX_cleanup(crlStoreCtx);
//get CRL
- X509_CRL* crl = obj.data.crl;
+ X509_CRL* crl;
+ crl = X509_OBJECT_get0_X509_CRL(obj);
if (crl == NULL)
{
PEG_TRACE_CSTRING(TRC_SSL, Tracer::LEVEL4, "---> SSL: CRL is null");
@@ -272,18 +276,18 @@ int SSLCallback::verificationCRLCallback
{
revokedCert = sk_X509_REVOKED_value(X509_CRL_get_REVOKED(crl), i);
//a matching serial number indicates revocation
- if (ASN1_INTEGER_cmp(revokedCert->serialNumber, serialNumber) == 0)
+ if (ASN1_INTEGER_cmp(X509_REVOKED_get0_serialNumber(revokedCert), serialNumber) == 0)
{
PEG_TRACE_CSTRING(TRC_SSL, Tracer::LEVEL2,
"---> SSL: Certificate is revoked");
X509_STORE_CTX_set_error(ctx, X509_V_ERR_CERT_REVOKED);
- X509_CRL_free(crl);
+ X509_OBJECT_free(obj);
PEG_METHOD_EXIT();
return 1;
}
}
- X509_CRL_free(crl);
+ X509_OBJECT_free(obj);
PEG_TRACE_CSTRING(TRC_SSL, Tracer::LEVEL4,
"---> SSL: Certificate is not revoked at this level");
diff -up pegasus/src/Pegasus/Common/SSLContextRep.h.orig pegasus/src/Pegasus/Common/SSLContextRep.h
--- pegasus/src/Pegasus/Common/SSLContextRep.h.orig 2017-02-28 14:32:44.379013979 +0100
+++ pegasus/src/Pegasus/Common/SSLContextRep.h 2017-02-28 14:36:38.088039077 +0100
@@ -104,7 +104,11 @@ public:
//important as per following site for
//http://www.openssl.org/support/faq.html#PROG
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
CRYPTO_malloc_init();
+#else
+ OPENSSL_malloc_init();
+#endif
SSL_library_init();
SSL_load_error_strings();
}
diff -up pegasus/src/Pegasus/ControlProviders/CertificateProvider/CertificateProvider.cpp.orig pegasus/src/Pegasus/ControlProviders/CertificateProvider/CertificateProvider.cpp
--- pegasus/src/Pegasus/ControlProviders/CertificateProvider/CertificateProvider.cpp.orig 2017-03-01 10:34:19.367952613 +0100
+++ pegasus/src/Pegasus/ControlProviders/CertificateProvider/CertificateProvider.cpp 2017-03-01 10:36:18.003931270 +0100
@@ -531,11 +531,11 @@ inline CIMInstance _getCRLInstance(X509_
for (int i = 0; i < numRevoked; i++)
{
r = sk_X509_REVOKED_value(revoked, i);
- rawSerialNumber = ASN1_INTEGER_get(r->serialNumber);
+ rawSerialNumber = ASN1_INTEGER_get(X509_REVOKED_get0_serialNumber(r));
sprintf(serial, "%lu", (unsigned long)rawSerialNumber);
revokedSerialNumbers.append(String(serial));
- revocationDate = getDateTime(r->revocationDate);
+ revocationDate = getDateTime(X509_REVOKED_get0_revocationDate(r));
revocationDates.append(revocationDate);
}

View File

@ -0,0 +1,359 @@
diff -up pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.cpp.orig pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.cpp
--- pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.cpp.orig 2013-01-21 06:00:43.000000000 +0100
+++ pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.cpp 2015-05-25 15:11:02.368906571 +0200
@@ -228,9 +228,138 @@ void snmpDeliverTrap_netsnmp::_createSes
(const char*)targetHostCStr,
portNumber);
}
+ }
+
+ switch (snmpVersion)
+ {
+ case _SNMPv1_TRAP:
+ {
+ snmpSession.version = SNMP_VERSION_1;
+ _addCommunity(snmpSession,securityName);
+ break;
+ }
+ case _SNMPv2C_TRAP:
+ {
+ snmpSession.version = SNMP_VERSION_2c;
+ _addCommunity(snmpSession,securityName);
+ break;
+ }
+#ifdef PEGASUS_ENABLE_NET_SNMPV3
+ case _SNMPv3_TRAP:
+ {
+ snmpSession.version = SNMP_VERSION_3;
+ CString securityNameCStr = securityName.getCString();
+ size_t securityNameLen = strlen(securityNameCStr);
+ SNMP_FREE(snmpSession.securityName);
+ snmpSession.securityName = (char *)calloc(1,securityNameLen+1);
+ snmpSession.securityNameLen = securityNameLen;
+ memcpy(snmpSession.securityName, (const char*)securityNameCStr,
+ securityNameLen);
+
+ CString engineIdCStr = engineID.getCString();
+ size_t engineIdHexLen = strlen(engineIdCStr);
+ size_t engineIdBinLen = 0;
+ u_char *engineIdBin = (u_char *)calloc(1,engineIdHexLen);
+ free(snmpSession.securityEngineID);
+ if(!snmp_hex_to_binary(&engineIdBin, &engineIdHexLen,
+ &engineIdBinLen, 1,engineIdCStr))
+ {
+ PEG_TRACE_CSTRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
+ "Snmp Indication Handler failed to generate binary"
+ " engine ID for sending the SNMPv3 trap.");
+ throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
+ MessageLoaderParms(
+ "Handler.snmpIndicationHandler."
+ "snmpIndicationHandler."
+ "FAILED_TO_DELIVER_TRAP",
+ "Failed to deliver trap."));
+ }
+ snmpSession.securityEngineIDLen = engineIdBinLen;
+ snmpSession.securityEngineID = engineIdBin;
+
+ switch(snmpSecLevel)
+ {
+ case 1:
+ snmpSession.securityLevel = SNMP_SEC_LEVEL_NOAUTH;
+ break;
+ case 2:
+ snmpSession.securityLevel = SNMP_SEC_LEVEL_AUTHNOPRIV;
+ break;
+ case 3:
+ snmpSession.securityLevel = SNMP_SEC_LEVEL_AUTHPRIV;
+ break;
+ default:
+ //use the dedault in the net-snmp conf file.
+ break;
+ }
+
+ SNMP_FREE(snmpSession.securityAuthProto);
+ if(snmpSecAuthProto == 1) // MD5
+ {
+ snmpSession.securityAuthProto = snmp_duplicate_objid(
+ usmHMACMD5AuthProtocol,
+ USM_AUTH_PROTO_MD5_LEN);
+ snmpSession.securityAuthProtoLen = USM_AUTH_PROTO_MD5_LEN;
+ }
+ else if(snmpSecAuthProto == 2)// SHA
+ {
+ snmpSession.securityAuthProto = snmp_duplicate_objid(
+ usmHMACSHA1AuthProtocol,
+ USM_AUTH_PROTO_SHA_LEN);
+ snmpSession.securityAuthProtoLen = USM_AUTH_PROTO_SHA_LEN;
+ }
+ // use the default in net-snmp conf files.
- sessionHandle = snmp_sess_open(&snmpSession);
+ if(snmpSecAuthKey.size() > 0)
+ {
+ for(Uint32 i=0;i<snmpSecAuthKey.size();i++)
+ {
+ snmpSession.securityAuthKey[i] = snmpSecAuthKey[i];
+ }
+ snmpSession.securityAuthKeyLen = snmpSecAuthKey.size();
+ }
+
+ SNMP_FREE(snmpSession.securityPrivProto);
+ //Privacy
+ if(snmpSecPrivProto == 1) //DES
+ {
+ snmpSession.securityPrivProto = snmp_duplicate_objid(
+ usmDESPrivProtocol,
+ USM_PRIV_PROTO_DES_LEN);
+ snmpSession.securityPrivProtoLen = USM_PRIV_PROTO_DES_LEN;
+ }
+ else if(snmpSecPrivProto == 2) // AES
+ {
+ snmpSession.securityPrivProto = snmp_duplicate_objid(
+ usmAESPrivProtocol,
+ USM_PRIV_PROTO_AES_LEN);
+ snmpSession.securityPrivProtoLen = USM_PRIV_PROTO_AES_LEN;
+ }
+ // use the defaults in net-snmp conf files
+
+ // Privacy Key
+ if(snmpSecPrivKey.size() > 0)
+ {
+ for(Uint32 j=0;j<snmpSecPrivKey.size();j++)
+ {
+ snmpSession.securityPrivKey[j] = snmpSecPrivKey[j];
+ }
+ snmpSession.securityPrivKeyLen = snmpSecPrivKey.size();
+ }
+ break;
+ }
+#endif // ifdef PEGASUS_ENABLE_NET_SNMPV3
+ default:
+ {
+ PEG_METHOD_EXIT();
+ throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_NOT_SUPPORTED,
+ MessageLoaderParms(
+ _MSG_VERSION_NOT_SUPPORTED_KEY,
+ _MSG_VERSION_NOT_SUPPORTED));
+ }
}
+
+ sessionHandle = snmp_sess_open(&snmpSession);
if (sessionHandle == NULL)
{
@@ -244,6 +373,12 @@ void snmpDeliverTrap_netsnmp::_createSes
free(errStr);
free(snmpSession.peername);
+ free(snmpSession.community);
+
+#ifdef PEGASUS_ENABLE_NET_SNMPV3
+ free(snmpSession.securityName);
+ free(snmpSession.securityEngineID);
+#endif // ifdef PEGASUS_ENABLE_NET_SNMPV3
PEG_METHOD_EXIT();
@@ -267,6 +402,12 @@ void snmpDeliverTrap_netsnmp::_createSes
free(errStr);
free(snmpSession.peername);
+ free(snmpSession.community);
+
+#ifdef PEGASUS_ENABLE_NET_SNMPV3
+ free(snmpSession.securityName);
+ free(snmpSession.securityEngineID);
+#endif // ifdef PEGASUS_ENABLE_NET_SNMPV3
throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED, MessageLoaderParms(
_MSG_GET_SESSION_POINTER_FAILED_KEY,
@@ -274,136 +415,12 @@ void snmpDeliverTrap_netsnmp::_createSes
}
free(snmpSession.peername);
+ free(snmpSession.community);
- switch (snmpVersion)
- {
- case _SNMPv1_TRAP:
- {
- sessionPtr->version = SNMP_VERSION_1;
- _addCommunity(sessionPtr,securityName);
- break;
-
- }
- case _SNMPv2C_TRAP:
- {
- sessionPtr->version = SNMP_VERSION_2c;
- _addCommunity(sessionPtr,securityName);
- break;
- }
-#ifdef PEGASUS_ENABLE_NET_SNMPV3
- case _SNMPv3_TRAP:
- {
- sessionPtr->version = SNMP_VERSION_3;
- CString securityNameCStr = securityName.getCString();
- size_t securityNameLen = strlen(securityNameCStr);
- SNMP_FREE(sessionPtr->securityName);
- sessionPtr->securityName = (char *)calloc(1,securityNameLen+1);
- sessionPtr->securityNameLen = securityNameLen;
- memcpy(sessionPtr->securityName, (const char*)securityNameCStr,
- securityNameLen);
-
- CString engineIdCStr = engineID.getCString();
- size_t engineIdHexLen = strlen(engineIdCStr);
- size_t engineIdBinLen = 0;
- u_char *engineIdBin = (u_char *)calloc(1,engineIdHexLen);
- free(sessionPtr->securityEngineID);
- if(!snmp_hex_to_binary(&engineIdBin, &engineIdHexLen,
- &engineIdBinLen, 1,engineIdCStr))
- {
- PEG_TRACE_CSTRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
- "Snmp Indication Handler failed to generate binary"
- " engine ID for sending the SNMPv3 trap.");
- throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_FAILED,
- MessageLoaderParms(
- "Handler.snmpIndicationHandler."
- "snmpIndicationHandler."
- "FAILED_TO_DELIVER_TRAP",
- "Failed to deliver trap."));
- }
- sessionPtr->securityEngineIDLen = engineIdBinLen;
- sessionPtr->securityEngineID = engineIdBin;
-
- switch(snmpSecLevel)
- {
- case 1:
- sessionPtr->securityLevel = SNMP_SEC_LEVEL_NOAUTH;
- break;
- case 2:
- sessionPtr->securityLevel = SNMP_SEC_LEVEL_AUTHNOPRIV;
- break;
- case 3:
- sessionPtr->securityLevel = SNMP_SEC_LEVEL_AUTHPRIV;
- break;
- default:
- //use the dedault in the net-snmp conf file.
- break;
- }
-
- SNMP_FREE(sessionPtr->securityAuthProto);
- if(snmpSecAuthProto == 1) // MD5
- {
- sessionPtr->securityAuthProto = snmp_duplicate_objid(
- usmHMACMD5AuthProtocol,
- USM_AUTH_PROTO_MD5_LEN);
- sessionPtr->securityAuthProtoLen = USM_AUTH_PROTO_MD5_LEN;
- }
- else if(snmpSecAuthProto == 2)// SHA
- {
- sessionPtr->securityAuthProto = snmp_duplicate_objid(
- usmHMACSHA1AuthProtocol,
- USM_AUTH_PROTO_SHA_LEN);
- sessionPtr->securityAuthProtoLen = USM_AUTH_PROTO_SHA_LEN;
- }
- // use the default in net-snmp conf files.
-
- if(snmpSecAuthKey.size() > 0)
- {
- for(Uint32 i=0;i<snmpSecAuthKey.size();i++)
- {
- sessionPtr->securityAuthKey[i] = snmpSecAuthKey[i];
- }
- sessionPtr->securityAuthKeyLen = snmpSecAuthKey.size();
- }
-
- SNMP_FREE(sessionPtr->securityPrivProto);
- //Privacy
- if(snmpSecPrivProto == 1) //DES
- {
- sessionPtr->securityPrivProto = snmp_duplicate_objid(
- usmDESPrivProtocol,
- USM_PRIV_PROTO_DES_LEN);
- sessionPtr->securityPrivProtoLen = USM_PRIV_PROTO_DES_LEN;
- }
- else if(snmpSecPrivProto == 2) // AES
- {
- sessionPtr->securityPrivProto = snmp_duplicate_objid(
- usmAESPrivProtocol,
- USM_PRIV_PROTO_AES_LEN);
- sessionPtr->securityPrivProtoLen = USM_PRIV_PROTO_AES_LEN;
- }
- // use the defaults in net-snmp conf files
-
- // Privacy Key
- if(snmpSecPrivKey.size() > 0)
- {
- for(Uint32 j=0;j<snmpSecPrivKey.size();j++)
- {
- sessionPtr->securityPrivKey[j] = snmpSecPrivKey[j];
- }
- sessionPtr->securityPrivKeyLen = snmpSecPrivKey.size();
- }
- break;
- }
+#ifdef PEGASUS_ENABLE_NET_SNMPV3
+ free(snmpSession.securityName);
+ free(snmpSession.securityEngineID);
#endif // ifdef PEGASUS_ENABLE_NET_SNMPV3
- default:
- {
- PEG_METHOD_EXIT();
- throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_NOT_SUPPORTED,
- MessageLoaderParms(
- _MSG_VERSION_NOT_SUPPORTED_KEY,
- _MSG_VERSION_NOT_SUPPORTED));
- }
- }
}
catch (...)
@@ -418,7 +435,7 @@ void snmpDeliverTrap_netsnmp::_createSes
}
void snmpDeliverTrap_netsnmp::_addCommunity(
- struct snmp_session*& sessionPtr,
+ struct snmp_session& snmpSession,
const String& securityName)
{
PEG_METHOD_ENTER(TRC_IND_HANDLER,
@@ -435,17 +452,17 @@ void snmpDeliverTrap_netsnmp::_addCommun
communityName = securityName;
}
- free(sessionPtr->community);
+ free(snmpSession.community);
CString communityNameCStr = communityName.getCString();
size_t communityNameLen = strlen(communityNameCStr);
- sessionPtr->community = (u_char*)calloc(1,communityNameLen+1);
+ snmpSession.community = (u_char*)calloc(1,communityNameLen+1);
- memcpy(sessionPtr->community, (const char*)communityNameCStr,
+ memcpy(snmpSession.community, (const char*)communityNameCStr,
communityNameLen);
- sessionPtr->community_len = communityNameLen;
+ snmpSession.community_len = communityNameLen;
PEG_METHOD_EXIT();
}
diff -up pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.h.orig pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.h
--- pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.h.orig 2010-12-22 13:19:06.000000000 +0100
+++ pegasus/src/Pegasus/Handler/snmpIndicationHandler/snmpDeliverTrap_netsnmp.h 2015-05-25 15:12:24.908290090 +0200
@@ -200,12 +200,11 @@ private:
/**
Add the community string to the snmp session for V1 and V2C
- @param sessionPtr the SNMP session pointer to its associated
- struct snmp_session
+ @param snmpSession struct snmp_session
@param securityName the human readable community name
*/
void _addCommunity(
- struct snmp_session*& sessionPtr,
+ struct snmp_session& snmpSession,
const String& securityName);
/**

View File

@ -0,0 +1,12 @@
diff -up pegasus/env_var_Linux.status.orig pegasus/env_var_Linux.status
--- pegasus/env_var_Linux.status.orig 2016-02-18 12:06:51.571515464 +0100
+++ pegasus/env_var_Linux.status 2016-02-18 12:07:02.946568247 +0100
@@ -133,7 +133,7 @@ PEGASUS_LOCAL_DOMAIN_SOCKET_DIR = $(PEGA
PEGASUS_LOCAL_DOMAIN_SOCKET_PATH = \
$(PEGASUS_LOCAL_DOMAIN_SOCKET_DIR)/cimxml.socket
-PEGASUS_PEM_DIR = $(PEGASUS_CONFIG_DIR)
+PEGASUS_PEM_DIR = /etc/pki/Pegasus
PEGASUS_SSL_KEY_FILE = file.pem
PEGASUS_SSL_KEY_FILE_PATH = $(PEGASUS_PEM_DIR)/$(PEGASUS_SSL_KEY_FILE)
PEGASUS_SSL_CERT_FILE = server.pem

View File

@ -0,0 +1,11 @@
diff -up pegasus/src/Pegasus/Server/tests/TLSv_1_2_Support/TestTLSv1_2_Support.cpp.orig pegasus/src/Pegasus/Server/tests/TLSv_1_2_Support/TestTLSv1_2_Support.cpp
--- pegasus/src/Pegasus/Server/tests/TLSv_1_2_Support/TestTLSv1_2_Support.cpp.orig 2015-05-19 13:49:59.100133630 +0200
+++ pegasus/src/Pegasus/Server/tests/TLSv_1_2_Support/TestTLSv1_2_Support.cpp 2015-05-19 13:50:40.665309444 +0200
@@ -37,6 +37,7 @@
#ifdef PEGASUS_HAS_SSL
+# include <openssl/ssl.h>
# include <openssl/tls1.h>
#endif

View File

@ -0,0 +1,28 @@
diff -up pegasus/src/Clients/benchmarkTest/Load/Makefile.orig pegasus/src/Clients/benchmarkTest/Load/Makefile
--- pegasus/src/Clients/benchmarkTest/Load/Makefile.orig 2015-10-12 13:19:57.029090805 +0200
+++ pegasus/src/Clients/benchmarkTest/Load/Makefile 2015-10-12 13:20:43.379003285 +0200
@@ -33,11 +33,7 @@ include $(ROOT)/mak/configschema.mak
include $(ROOT)/mak/test.mak
include $(ROOT)/mak/commands.mak
-ifdef TESTID
- BenchmarkMOF_NAME = benchmarkProvider_$(TESTID)
-else
- BenchmarkMOF_NAME = benchmarkProvider
-endif
+BenchmarkMOF_NAME = benchmarkProvider
PROVIDERNS=root/benchmark
PROVIDERNSDIRECTORY=$(REPOSITORY_ROOT)/root\#benchmark
@@ -74,11 +70,7 @@ unregisterproviders:
changeconfig:
$(MAKE) -i cimstart
$(MAKE) unregister
-ifdef TESTID
- $(MAKE) repositoryServer TESTID=$(TESTID)
-else
$(MAKE) repositoryServer
-endif
depend:

View File

@ -0,0 +1,22 @@
--- pegasus/rpm/wbem.pam-wbem 2006-01-17 14:17:43.000000000 -0500
+++ pegasus/rpm/wbem 2006-04-05 19:26:46.000000000 -0400
@@ -1,13 +1,7 @@
#%PAM-1.0
-auth required $ISA/pam_env.so
-auth sufficient $ISA/pam_unix.so nullok
-auth required $ISA/pam_deny.so
-
-account required $ISA/pam_unix.so
-
-password required $ISA/pam_cracklib.so retry=3 type=
-password sufficient $ISA/pam_unix.so nullok use_authtok md5 shadow
-password required $ISA/pam_deny.so
-
-session required $ISA/pam_limits.so
-session required $ISA/pam_unix.so
+auth include password-auth
+account required pam_access.so accessfile=/etc/Pegasus/access.conf
+account include password-auth
+password include password-auth
+session required pam_loginuid.so
+session include password-auth

View File

@ -0,0 +1,117 @@
--- pegasus/src/Pegasus/ProviderManager2/CMPI/CMPIProviderManager.cpp.warnings 2006-02-28 14:53:30.000000000 -0500
+++ pegasus/src/Pegasus/ProviderManager2/CMPI/CMPIProviderManager.cpp 2006-04-05 19:27:27.000000000 -0400
@@ -88,7 +88,7 @@
char **props;
int pCount;
public:
- CMPIPropertyList(CIMPropertyList &propertyList) {
+ CMPIPropertyList(CIMPropertyList &propertyList) : props(0L), pCount(0) {
if (!propertyList.isNull()) {
Array<CIMName> p=propertyList.getPropertyNameArray();
pCount=p.size();
@@ -2497,7 +2497,7 @@
try
{
- indProvRecord *provRec;
+ indProvRecord *provRec = 0L;
if (provTab.lookup (ph.GetProvider ().getName (), provRec))
{
provRec->enabled = true;
@@ -2587,7 +2587,7 @@
PEG_METHOD_ENTER (TRC_PROVIDERMANAGER,
"CMPIProviderManager::_callDisableIndications");
- indProvRecord * provRec;
+ indProvRecord * provRec = 0L;
if (provTab.lookup (ph.GetProvider ().getName (), provRec))
{
provRec->enabled = false;
--- pegasus/src/Pegasus/Config/ConfigManager.cpp.warnings 2006-03-14 16:06:37.000000000 -0500
+++ pegasus/src/Pegasus/Config/ConfigManager.cpp 2006-04-05 19:27:27.000000000 -0400
@@ -758,7 +758,7 @@
//
for (Uint32 i = 0; i < NUM_PROPERTIES; i++)
{
- const char* fixedValue;
+ const char* fixedValue = 0L;
_properties[i].propertyOwner->initialize();
--- pegasus/src/Pegasus/Common/Packer.h.warnings 2006-01-30 11:17:07.000000000 -0500
+++ pegasus/src/Pegasus/Common/Packer.h 2006-04-05 19:27:27.000000000 -0400
@@ -173,12 +173,12 @@
inline void Packer::packReal32(Buffer& out, Real32 x)
{
- packUint32(out, *((Uint32*)&x));
+ packUint32(out, *(reinterpret_cast<Uint32*>(&x)));
}
inline void Packer::packReal64(Buffer& out, Real64 x)
{
- packUint64(out, *((Uint64*)&x));
+ packUint64(out, *(reinterpret_cast<Uint64*>(&x)));
}
inline void Packer::packChar16(Buffer& out, Char16 x)
--- pegasus/src/Pegasus/Common/StringInline.h.warnings 2006-01-30 11:17:08.000000000 -0500
+++ pegasus/src/Pegasus/Common/StringInline.h 2006-04-05 19:30:43.000000000 -0400
@@ -102,7 +102,7 @@
PEGASUS_STRING_INLINE const Char16* String::getChar16Data() const
{
- return (Char16*)_rep->data;
+ return (Char16*)&(_rep->data[0]);
}
PEGASUS_STRING_INLINE Char16& String::operator[](Uint32 i)
@@ -145,7 +145,7 @@
PEGASUS_STRING_INLINE Uint32 String::find(const String& s) const
{
- return StringFindAux(_rep, (Char16*)s._rep->data, s._rep->size);
+ return StringFindAux(_rep, (Char16*)&(s._rep->data[0]), s._rep->size);
}
PEGASUS_STRING_INLINE String& String::append(const Char16& c)
--- pegasus/src/Pegasus/Common/ResponseHandler.cpp.warnings 2006-01-30 11:17:07.000000000 -0500
+++ pegasus/src/Pegasus/Common/ResponseHandler.cpp 2006-04-05 19:27:27.000000000 -0400
@@ -79,7 +79,7 @@
ResponseHandlerRep* _getRep(
const ResponseHandler* object)
{
- ResponseHandlerRep* rep;
+ ResponseHandlerRep* rep = 0L;
Boolean found;
AutoMutex lock(repTableMutex);
@@ -91,7 +91,7 @@
void _deleteRep(
ResponseHandler* object)
{
- ResponseHandlerRep* rep;
+ ResponseHandlerRep* rep = 0L;
Boolean found;
AutoMutex lock(repTableMutex);
--- pegasus/src/Pegasus/Common/String.cpp.warnings 2006-01-30 11:17:08.000000000 -0500
+++ pegasus/src/Pegasus/Common/String.cpp 2006-04-05 19:27:27.000000000 -0400
@@ -843,7 +843,7 @@
String& String::append(const String& str)
{
- return append((Char16*)str._rep->data, str._rep->size);
+ return append((Char16*)(&(str._rep->data[0])), str._rep->size);
}
String& String::append(const char* str, Uint32 size)
@@ -905,7 +905,7 @@
if (n == PEG_NOT_FOUND || n > _rep->size - index)
n = _rep->size - index;
- return String((Char16*)_rep->data + index, n);
+ return String((Char16*)(_rep->data + index), n);
}
return String();

132
pegasus-2.7.0-PIE.patch Normal file
View File

@ -0,0 +1,132 @@
diff -up pegasus/src/Clients/cimauth/Makefile_orig pegasus/src/Clients/cimauth/Makefile
--- pegasus/src/Clients/cimauth/Makefile_orig 2011-05-17 15:03:15.822670486 +0200
+++ pegasus/src/Clients/cimauth/Makefile 2011-05-17 15:03:26.893426279 +0200
@@ -34,6 +34,8 @@ DIR = Clients/cimauth
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LIBRARIES = \
pegcliutils \
pegclient \
diff -up pegasus/src/Clients/cimconfig/Makefile_orig pegasus/src/Clients/cimconfig/Makefile
--- pegasus/src/Clients/cimconfig/Makefile_orig 2011-05-17 15:01:19.759266385 +0200
+++ pegasus/src/Clients/cimconfig/Makefile 2011-05-17 15:01:37.629099999 +0200
@@ -34,6 +34,8 @@ DIR = Clients/cimconfig
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LIBRARIES = \
pegcliutils \
pegclient \
diff -up pegasus/src/Clients/cimprovider/Makefile_orig pegasus/src/Clients/cimprovider/Makefile
--- pegasus/src/Clients/cimprovider/Makefile_orig 2011-05-17 15:01:55.278898872 +0200
+++ pegasus/src/Clients/cimprovider/Makefile 2011-05-17 15:02:09.021077534 +0200
@@ -34,6 +34,8 @@ DIR = Clients/cimprovider
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LIBRARIES = \
pegcliutils \
pegclient \
diff -up pegasus/src/Clients/cimuser/Makefile_orig pegasus/src/Clients/cimuser/Makefile
--- pegasus/src/Clients/cimuser/Makefile_orig 2011-05-17 15:02:18.991658613 +0200
+++ pegasus/src/Clients/cimuser/Makefile 2011-05-17 15:02:38.476748769 +0200
@@ -34,6 +34,8 @@ DIR = Clients/cimuser
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LIBRARIES = \
pegcliutils \
pegclient \
diff -up pegasus/src/Clients/osinfo/Makefile_orig pegasus/src/Clients/osinfo/Makefile
--- pegasus/src/Clients/osinfo/Makefile_orig 2011-05-17 15:03:57.952350916 +0200
+++ pegasus/src/Clients/osinfo/Makefile 2011-05-17 15:04:08.622043080 +0200
@@ -33,6 +33,8 @@ PEGASUS_ZOS_PROGRAM_OBJECT = yes
DIR = Clients/osinfo
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LIBRARIES = \
pegcliutils \
peggetoopt \
diff -up pegasus/src/Clients/repupgrade/Makefile_orig pegasus/src/Clients/repupgrade/Makefile
--- pegasus/src/Clients/repupgrade/Makefile_orig 2011-05-17 15:03:36.222905432 +0200
+++ pegasus/src/Clients/repupgrade/Makefile 2011-05-17 15:03:48.013774882 +0200
@@ -34,6 +34,8 @@ DIR = Clients/repupgrade
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LOCAL_DEFINES = -DPEGASUS_INTERNALONLY
LIBRARIES = \
diff -up pegasus/src/Clients/wbemexec/Makefile_orig pegasus/src/Clients/wbemexec/Makefile
--- pegasus/src/Clients/wbemexec/Makefile_orig 2011-05-17 15:02:46.254981788 +0200
+++ pegasus/src/Clients/wbemexec/Makefile 2011-05-17 15:02:59.917148729 +0200
@@ -34,6 +34,8 @@ DIR = Clients/wbemexec
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LOCAL_DEFINES = -DPEGASUS_INTERNALONLY
LIBRARIES = \
diff -up pegasus/src/Pegasus/Compiler/cmdline/cimmofl/Makefile_orig pegasus/src/Pegasus/Compiler/cmdline/cimmofl/Makefile
--- pegasus/src/Pegasus/Compiler/cmdline/cimmofl/Makefile_orig 2011-05-17 14:59:20.270319135 +0200
+++ pegasus/src/Pegasus/Compiler/cmdline/cimmofl/Makefile 2011-05-17 14:59:55.019829684 +0200
@@ -30,6 +30,8 @@ ROOT = ../../../../..
DIR = Pegasus/Compiler/cmdline/cimmofl
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LOCAL_DEFINES = -DPEGASUS_INTERNALONLY
PROGRAM = cimmofl
diff -up pegasus/src/Pegasus/Compiler/cmdline/cimmof/Makefile_orig pegasus/src/Pegasus/Compiler/cmdline/cimmof/Makefile
--- pegasus/src/Pegasus/Compiler/cmdline/cimmof/Makefile_orig 2011-05-17 14:58:44.334620532 +0200
+++ pegasus/src/Pegasus/Compiler/cmdline/cimmof/Makefile 2011-05-17 14:59:10.555778484 +0200
@@ -32,6 +32,8 @@ include $(ROOT)/mak/config.mak
LOCAL_DEFINES = -DPEGASUS_CMDLINE_INTERNAL -DPEGASUS_INTERNALONLY
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LIBRARIES = \
pegcompiler \
pegclient \
diff -up pegasus/src/Pegasus/ProviderManagerService/ProviderAgent/Makefile_orig pegasus/src/Pegasus/ProviderManagerService/ProviderAgent/Makefile
--- pegasus/src/Pegasus/ProviderManagerService/ProviderAgent/Makefile_orig 2011-05-17 14:58:03.166092772 +0200
+++ pegasus/src/Pegasus/ProviderManagerService/ProviderAgent/Makefile 2011-05-17 14:58:22.652182571 +0200
@@ -32,6 +32,8 @@ DIR = Pegasus/ProviderManagerService/Pro
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
LIBRARIES = \
pegpmrouter \
pegprovidermanager \
diff -up pegasus/src/Pegasus/Server/Makefile_orig pegasus/src/Pegasus/Server/Makefile
--- pegasus/src/Pegasus/Server/Makefile_orig 2011-05-17 14:57:08.349400296 +0200
+++ pegasus/src/Pegasus/Server/Makefile 2011-05-17 14:57:33.724424287 +0200
@@ -32,6 +32,8 @@ DIR = Pegasus/Server
include $(ROOT)/mak/config.mak
+FLAGS := $(FLAGS:-fPIC=-fPIE)
+
EXTRA_INCLUDES = $(SYS_INCLUDES)
LOCAL_DEFINES = -DPEGASUS_SERVER_INTERNAL -DPEGASUS_INTERNALONLY

View File

@ -0,0 +1,50 @@
diff -up pegasus/Makefile.ReleaseTest.orig pegasus/Makefile.ReleaseTest
--- pegasus/Makefile.ReleaseTest.orig 2013-07-01 12:55:50.000000000 +0200
+++ pegasus/Makefile.ReleaseTest 2015-05-18 14:28:22.642686363 +0200
@@ -128,6 +128,7 @@ POSTSTARTTEST_CMDS = \
$(PEGASUS_TEST_DIR)/bin/TestIndicationStressTest@@IndicationStressTestClass@@test/TestProvider@@cleanup
ifeq ($(PEGASUS_USE_NET_SNMP),true)
+ POSTSTARTTEST_CMDS_NO_SNMP := $(POSTSTARTTEST_CMDS)
POSTSTARTTEST_CMDS += \
$(PEGASUS_TEST_DIR)/bin/TestSnmpHandler@@setup@@WQL \
$(PEGASUS_TEST_DIR)/bin/TestSnmpHandler@@run@@4@@2 \
@@ -212,10 +213,21 @@ createMakefile_poststarttests:
@$(ECHO-E) "poststarttests:" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "\t@$(MAKE) -s poststarttests_internal\n" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "poststarttests_internal:" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ifeq ($(PEGASUS_USE_NET_SNMP),true)
+ @$(foreach i, $(POSTSTARTTEST_CMDS_NO_SNMP), $(ECHO-E) "\t$(subst @@, ,$(i))" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile;)
+else
@$(foreach i, $(POSTSTARTTEST_CMDS), $(ECHO-E) "\t$(subst @@, ,$(i))" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile;)
@$(ECHO-E) "" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+endif
createMakefile_tests:
+ifeq ($(PEGASUS_USE_NET_SNMP),true)
+ @$(ECHO-E) "\t/usr/share/Pegasus/test/bin/TestSnmpHandler setup WQL" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ @$(ECHO-E) "\t/usr/share/Pegasus/test/bin/TestSnmpHandler run 4 2" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ @$(ECHO-E) "\t/usr/share/Pegasus/test/bin/TestSnmpHandler cleanup" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ @$(ECHO-E) "\t/usr/share/Pegasus/test/bin/TestSnmpHandler removelog" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ @$(ECHO-E) "" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+endif
@$(ECHO-E) "###############################################################################" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "# The tests target stops the cimserver, runs the unit tests, starts the" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "# cimserver, and runs the poststarttests and local TestClient." >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@@ -276,6 +288,8 @@ createMakefile_setupTEST:
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "\t@mv $(PEGASUS_TEST_REPOSITORY_DIR)/$(PEGASUS_TEST_REPOSITORY_NAME) $(PEGASUS_REPOSITORY_PARENT_DIR)/repository" \
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ @$(ECHO-E) "\t@mv /etc/snmp/snmptrapd.conf /etc/snmp/snmptrapd.conf.bak" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ @$(ECHO-E) "\t@cp /usr/share/Pegasus/test/snmptrapd.conf /etc/snmp/snmptrapd.conf" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "\t@make cimstart" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "\t@make create_providerlinks" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "else" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@@ -293,6 +307,7 @@ createMakefile_unsetupTEST:
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "\t@mv $(PEGASUS_REPOSITORY_PARENT_DIR)/repository.bak $(PEGASUS_REPOSITORY_PARENT_DIR)/repository" \
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
+ @$(ECHO-E) "\t@mv /etc/snmp/snmptrapd.conf.bak /etc/snmp/snmptrapd.conf" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "endif" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "\t@make remove_providerlinks" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile
@$(ECHO-E) "" >> $(PEGASUS_STAGING_DIR)$(PEGASUS_TEST_DIR)/Makefile

View File

@ -0,0 +1,13 @@
diff -up pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h_orig pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h
--- pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h_orig 2011-05-17 15:13:43.331172383 +0200
+++ pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h 2011-05-17 15:15:34.672827232 +0200
@@ -60,8 +60,7 @@
{"crlStore", PEGASUS_SSL_SERVER_CRL},
# endif
{"repositoryDir", PEGASUS_REPOSITORY_DIR},
- {"providerDir", PEGASUS_EXTRA_PROVIDER_LIB_DIR PEGASUS_PROVIDER_LIB_DIR
- ":/usr/" PEGASUS_ARCH_LIB "/cmpi"},
+ {"providerDir", PEGASUS_PROVIDER_LIB_DIR ":" PEGASUS_DEST_LIB_DIR "/cmpi"},
{"providerManagerDir", PEGASUS_PROVIDER_MANAGER_LIB_DIR},
# else /* PEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS */
{"traceFilePath", "/var/opt/tog-pegasus/cache/trace/cimserver.trc"},

View File

@ -0,0 +1,535 @@
diff -up pegasus/src/Executor/Messages.h.orig pegasus/src/Executor/Messages.h
--- pegasus/src/Executor/Messages.h.orig 2015-03-31 14:49:58.125082973 +0200
+++ pegasus/src/Executor/Messages.h 2015-03-31 14:50:29.243214138 +0200
@@ -199,6 +199,7 @@ struct ExecutorAuthenticatePasswordReque
{
char username[EXECUTOR_BUFFER_SIZE];
char password[EXECUTOR_BUFFER_SIZE];
+ Boolean isRemoteUser;
};
struct ExecutorAuthenticatePasswordResponse
diff -up pegasus/src/Executor/PAMAuth.h.orig pegasus/src/Executor/PAMAuth.h
--- pegasus/src/Executor/PAMAuth.h.orig 2015-03-31 14:50:48.589295683 +0200
+++ pegasus/src/Executor/PAMAuth.h 2015-03-31 14:57:25.561982718 +0200
@@ -49,6 +49,9 @@
#include <Executor/Defines.h>
#include <Executor/Socket.h>
+#include <syslog.h>
+typedef bool Boolean;
+
#ifdef PEGASUS_FLAVOR
# define PAM_CONFIG_FILE "wbem" PEGASUS_FLAVOR
#else
@@ -397,7 +400,7 @@ static int PAMValidateUserCallback(
*/
static int PAMAuthenticateInProcess(
- const char* username, const char* password)
+ const char* username, const char* password, const Boolean isRemoteUser)
{
PAMData data;
struct pam_conv pconv;
@@ -412,24 +415,54 @@ static int PAMAuthenticateInProcess(
/* intentionally for testing purposes */
/* return PAM_SERVICE_ERR; */
- pam_rc = pam_start(PAM_CONFIG_FILE, username, &pconv, &handle);
+ // NOTE: if any pam call should log anything, our syslog socket will be redirected
+ // to the AUTH facility, so we need to redirect it back after each pam call.
+
+ if ((pam_rc = pam_start(PAM_CONFIG_FILE, username, &pconv, &handle)) != PAM_SUCCESS)
+ {
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_start failed: %s", pam_strerror(handle, pam_rc));
+ syslog(LOG_ERR, "PAM authentication failed for %s user: %s",
+ isRemoteUser ? "remote" : "local", username);
+ return -1;
+ }
- if (pam_rc != PAM_SUCCESS)
+ if ((pam_rc = pam_set_item(handle, PAM_TTY, isRemoteUser ? "wbemNetwork" : "wbemLocal")) != PAM_SUCCESS)
{
- return pam_rc;
+ pam_end(handle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_set_item(PAM_TTY=wbem) failed: %s", pam_strerror(handle, pam_rc));
+ syslog(LOG_ERR, "PAM authentication failed for %s user: %s",
+ isRemoteUser ? "remote" : "local", username);
+ return -1;
}
- pam_rc = pam_authenticate(handle, 0);
- if (pam_rc != PAM_SUCCESS)
+ if ((pam_rc = pam_authenticate(handle, 0)) != PAM_SUCCESS)
{
pam_end(handle, 0);
- return pam_rc;
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_authenticate failed: %s",pam_strerror(handle, pam_rc));
+ syslog(LOG_ERR, "PAM authentication failed for %s user: %s",
+ isRemoteUser ? "remote" : "local", username);
+ return -1;
}
- pam_rc = pam_acct_mgmt(handle, 0);
+ if ((pam_rc = pam_acct_mgmt(handle, 0)) != PAM_SUCCESS)
+ {
+ pam_end(handle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_acct_mgmt failed: %s",pam_strerror(handle, pam_rc));
+ syslog(LOG_ERR, "PAM authentication failed for %s user: %s",
+ isRemoteUser ? "remote" : "local", username);
+ return -1;
+ }
pam_end(handle, 0);
- return pam_rc;
+ return 0;
}
/*
@@ -452,16 +485,34 @@ static int PAMValidateUserInProcess(cons
pconv.conv = PAMValidateUserCallback;
pconv.appdata_ptr = &data;
- pam_rc = pam_start(PAM_CONFIG_FILE, username, &pconv, &phandle);
- if (pam_rc != PAM_SUCCESS)
+ if ((pam_rc = pam_start(PAM_CONFIG_FILE, username, &pconv, &phandle)) != PAM_SUCCESS)
+ {
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_start() failed: %s", pam_strerror(phandle, pam_rc));
+ return -1;
+ }
+
+ if ((pam_rc = pam_set_item(phandle, PAM_TTY, "wbemLocal")) != PAM_SUCCESS)
{
- return pam_rc;
+ pam_end(phandle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_set_item(PAM_TTY=wbemLocal) failed: %s", pam_strerror(phandle, pam_rc));
+ return -1;
}
- pam_rc = pam_acct_mgmt(phandle, 0);
+ if ((pam_rc = pam_acct_mgmt(phandle, 0)) != PAM_SUCCESS)
+ {
+ pam_end(phandle, 0);
+ closelog();
+ openlog("cimserver", LOG_PID, LOG_DAEMON);
+ syslog(LOG_ERR, "pam_acct_mgmt() failed: %s", pam_strerror(phandle, pam_rc));
+ return -1;
+ }
pam_end(phandle, 0);
- return pam_rc;
+ return 0;
}
/*
@@ -474,12 +525,12 @@ static int PAMValidateUserInProcess(cons
**==============================================================================
*/
-static int PAMAuthenticate(const char* username, const char* password)
+static int PAMAuthenticate(const char* username, const char* password, const Boolean isRemoteUser)
{
#ifdef PEGASUS_USE_PAM_STANDALONE_PROC
return CimserveraProcessOperation("authenticate", username, password);
#else
- return PAMAuthenticateInProcess(username, password);
+ return PAMAuthenticateInProcess(username, password, isRemoteUser);
#endif
}
diff -up pegasus/src/Executor/Parent.c.orig pegasus/src/Executor/Parent.c
--- pegasus/src/Executor/Parent.c.orig 2015-03-31 14:57:37.595034076 +0200
+++ pegasus/src/Executor/Parent.c 2015-03-31 14:58:11.034176796 +0200
@@ -634,7 +634,7 @@ static void HandleAuthenticatePasswordRe
#if defined(PEGASUS_PAM_AUTHENTICATION)
- status = PAMAuthenticate(request.username, request.password);
+ status = PAMAuthenticate(request.username, request.password, request.isRemoteUser);
if (status == PAM_SUCCESS)
{
diff -up pegasus/src/Executor/tests/PAMAuth/TestExecutorPAMAuth.c.orig pegasus/src/Executor/tests/PAMAuth/TestExecutorPAMAuth.c
--- pegasus/src/Executor/tests/PAMAuth/TestExecutorPAMAuth.c.orig 2015-03-31 14:58:30.460259707 +0200
+++ pegasus/src/Executor/tests/PAMAuth/TestExecutorPAMAuth.c 2015-03-31 14:58:55.882368210 +0200
@@ -49,7 +49,7 @@ int main()
sprintf(prompt, "Enter password for %s: ", PEGASUS_CIMSERVERMAIN_USER);
pw = getpass(prompt);
- if (PAMAuthenticate(PEGASUS_CIMSERVERMAIN_USER, pw) == 0)
+ if (PAMAuthenticate(PEGASUS_CIMSERVERMAIN_USER, pw, 0) == 0)
printf("Correct password\n");
else
printf("Wrong password\n");
diff -up pegasus/src/Pegasus/Common/AuthenticationInfo.h.orig pegasus/src/Pegasus/Common/AuthenticationInfo.h
--- pegasus/src/Pegasus/Common/AuthenticationInfo.h.orig 2015-03-31 14:59:10.875432201 +0200
+++ pegasus/src/Pegasus/Common/AuthenticationInfo.h 2015-03-31 15:00:03.130655230 +0200
@@ -348,6 +348,22 @@ public:
_rep->setAuthHandle(authHandle);
}
+ /** Indicate whether the user is Remote
+ */
+ Boolean isRemoteUser() const
+ {
+ CheckRep(_rep);
+ return _rep->isRemoteUser();
+ }
+
+ /** Set the Remote User flag
+ */
+ void setRemoteUser(Boolean isRemoteUser)
+ {
+ CheckRep(_rep);
+ _rep->setRemoteUser(isRemoteUser);
+ }
+
AuthHandle getAuthHandle()
{
CheckRep(_rep);
diff -up pegasus/src/Pegasus/Common/AuthenticationInfoRep.cpp.orig pegasus/src/Pegasus/Common/AuthenticationInfoRep.cpp
--- pegasus/src/Pegasus/Common/AuthenticationInfoRep.cpp.orig 2015-03-31 15:00:26.267753980 +0200
+++ pegasus/src/Pegasus/Common/AuthenticationInfoRep.cpp 2015-03-31 15:01:53.018124238 +0200
@@ -48,6 +48,7 @@ const String AuthenticationInfoRep::AUTH
AuthenticationInfoRep::AuthenticationInfoRep()
: _connectionAuthenticated(false),
_wasRemotePrivilegedUserAccessChecked(false),
+ _isRemoteUser(true),
_authHandle(),
_isExpiredPassword(false)
#ifdef PEGASUS_ENABLE_SESSION_COOKIES
@@ -86,6 +87,16 @@ AuthenticationInfoRep::~AuthenticationIn
PEG_METHOD_EXIT();
}
+
+void AuthenticationInfoRep::setRemoteUser(Boolean isRemoteUser)
+{
+ PEG_METHOD_ENTER(TRC_AUTHENTICATION,
+ "AuthenticationInfoRep::setRemoteUser");
+
+ _isRemoteUser = isRemoteUser;
+
+ PEG_METHOD_EXIT();
+}
void AuthenticationInfoRep::setConnectionAuthenticated(
Boolean connectionAuthenticated)
diff -up pegasus/src/Pegasus/Common/AuthenticationInfoRep.h.orig pegasus/src/Pegasus/Common/AuthenticationInfoRep.h
--- pegasus/src/Pegasus/Common/AuthenticationInfoRep.h.orig 2015-03-31 15:02:17.868230300 +0200
+++ pegasus/src/Pegasus/Common/AuthenticationInfoRep.h 2015-03-31 15:03:53.065636608 +0200
@@ -148,6 +148,13 @@ public:
}
#endif //PEGASUS_NEGOTIATE_AUTHENTICATION
+ Boolean isRemoteUser() const
+ {
+ return _isRemoteUser;
+ }
+
+ void setRemoteUser(Boolean isRemoteUser);
+
Array<SSLCertificateInfo*> getClientCertificateChain()
{
return _clientCertificate;
@@ -233,6 +240,8 @@ private:
Array<SSLCertificateInfo*> _clientCertificate;
+ Boolean _isRemoteUser;
+
AuthHandle _authHandle;
String _userRole;
Boolean _isExpiredPassword;
diff -up pegasus/src/Pegasus/Common/Executor.cpp.orig pegasus/src/Pegasus/Common/Executor.cpp
--- pegasus/src/Pegasus/Common/Executor.cpp.orig 2015-03-31 15:04:10.843712487 +0200
+++ pegasus/src/Pegasus/Common/Executor.cpp 2015-03-31 15:08:16.953762900 +0200
@@ -126,7 +126,8 @@ public:
virtual int authenticatePassword(
const char* username,
- const char* password) = 0;
+ const char* password,
+ Boolean isRemoteUser) = 0;
virtual int validateUser(
const char* username) = 0;
@@ -562,9 +563,10 @@ public:
#if defined(PEGASUS_PAM_AUTHENTICATION)
virtual int authenticatePassword(
const char* username,
- const char* password)
+ const char* password,
+ Boolean isRemoteUser)
{
- return PAMAuthenticate(username, password);
+ return PAMAuthenticate(username, password, isRemoteUser);
}
virtual int validateUser(
@@ -912,7 +914,8 @@ public:
virtual int authenticatePassword(
const char* username,
- const char* password)
+ const char* password,
+ Boolean isRemoteUser)
{
AutoMutex autoMutex(_mutex);
@@ -930,6 +933,7 @@ public:
memset(&request, 0, sizeof(request));
Strlcpy(request.username, username, EXECUTOR_BUFFER_SIZE);
Strlcpy(request.password, password, EXECUTOR_BUFFER_SIZE);
+ request.isRemoteUser = isRemoteUser;
if (SendBlock(_sock, &request, sizeof(request)) != sizeof(request))
return -1;
@@ -1181,10 +1185,11 @@ int Executor::reapProviderAgent(
int Executor::authenticatePassword(
const char* username,
- const char* password)
+ const char* password,
+ Boolean isRemoteUser)
{
once(&_executorImplOnce, _initExecutorImpl);
- return _executorImpl->authenticatePassword(username, password);
+ return _executorImpl->authenticatePassword(username, password, isRemoteUser);
}
int Executor::validateUser(
diff -up pegasus/src/Pegasus/Common/Executor.h.orig pegasus/src/Pegasus/Common/Executor.h
--- pegasus/src/Pegasus/Common/Executor.h.orig 2015-03-31 15:08:26.668804365 +0200
+++ pegasus/src/Pegasus/Common/Executor.h 2015-03-31 15:08:46.535889158 +0200
@@ -184,7 +184,8 @@ public:
*/
static int authenticatePassword(
const char* username,
- const char* password);
+ const char* password,
+ Boolean isRemoteUser);
/** Check whether the given user is valid for the underlying authentcation
mechanism.
diff -up pegasus/src/Pegasus/Common/HTTPConnection.cpp.orig pegasus/src/Pegasus/Common/HTTPConnection.cpp
--- pegasus/src/Pegasus/Common/HTTPConnection.cpp.orig 2015-03-31 15:09:05.706970982 +0200
+++ pegasus/src/Pegasus/Common/HTTPConnection.cpp 2015-03-31 15:10:08.472238867 +0200
@@ -2295,6 +2295,70 @@ void HTTPConnection::_handleReadEvent()
message->contentLanguages = contentLanguages;
message->dest = _outputMessageQueue->getQueueId();
+ // Allow authenticators to differentiate Remote and Local users:
+ struct sockaddr_storage sin_peer, sin_svr;
+ socklen_t slen1 = sizeof (struct sockaddr_storage), slen2 = sizeof (struct sockaddr_storage);
+ uint32_t sock = _socket.get()->getSocket() ;
+ memset(&sin_peer,'\0',slen1);
+ memset(&sin_svr, '\0',slen2);
+ if ( ( ::getpeername( sock, (struct sockaddr*)&sin_peer, &slen1) == 0 )
+ ||( ::getsockname( sock, (struct sockaddr*)&sin_svr, &slen2) == 0 )
+ )
+ {
+ PEG_TRACE((TRC_HTTP, Tracer::LEVEL4,
+ "sin_peer.ss_family: %d",
+ sin_peer.ss_family));
+ if( sin_peer.ss_family == AF_INET )
+ {
+ struct sockaddr_in *s = (struct sockaddr_in *)&sin_peer;
+ if( ((ntohl( s->sin_addr.s_addr ) >> 24) & 0xff) == 127 )
+ // message was sent FROM localhost interface
+ message->isFromRemoteHost = false;
+ }
+ if( sin_peer.ss_family == AF_INET6 )
+ {
+ char straddr[INET6_ADDRSTRLEN];
+ struct sockaddr_in6 *s = (struct sockaddr_in6 *)&sin_peer;
+ static const unsigned char localhost_bytes[] =
+ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 };
+ inet_ntop(AF_INET6, &s->sin6_addr, straddr, sizeof(straddr));
+ PEG_TRACE((TRC_HTTP, Tracer::LEVEL4,
+ "Peer IP address: %s",
+ straddr));
+ if(memcmp(s->sin6_addr.s6_addr, localhost_bytes, 16) == 0)
+ // message was sent FROM localhost interface
+ message->isFromRemoteHost = false;
+ }
+ PEG_TRACE((TRC_HTTP, Tracer::LEVEL4,
+ "sin_svr.ss_family: %d",
+ sin_svr.ss_family));
+ if( sin_svr.ss_family == AF_INET )
+ {
+ struct sockaddr_in *s = (struct sockaddr_in *)&sin_svr;
+ if( ((ntohl( s->sin_addr.s_addr ) >> 24) & 0xff) == 127 )
+ // message was sent TO localhost interface
+ message->isFromRemoteHost = false;
+ }
+ if( sin_svr.ss_family == AF_INET6 )
+ {
+ char straddr[INET6_ADDRSTRLEN];
+ struct sockaddr_in6 *s = (struct sockaddr_in6 *)&sin_svr;
+ static const unsigned char localhost_bytes[] =
+ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 };
+ inet_ntop(AF_INET6, &s->sin6_addr, straddr, sizeof(straddr));
+ PEG_TRACE((TRC_HTTP, Tracer::LEVEL4,
+ "svr IP address: %s",
+ straddr));
+ if(memcmp(s->sin6_addr.s6_addr, localhost_bytes, 16) == 0)
+ // message was sent TO localhost interface
+ message->isFromRemoteHost = false;
+ }
+ }
+
+ PEG_TRACE((TRC_HTTP, Tracer::LEVEL4,
+ "isFromRemoteHost: %d",
+ message->isFromRemoteHost));
+
//
// The _closeConnection method sets the _connectionClosePending flag.
// If we are executing on the client side and the
diff -up pegasus/src/Pegasus/Common/HTTPMessage.cpp.orig pegasus/src/Pegasus/Common/HTTPMessage.cpp
--- pegasus/src/Pegasus/Common/HTTPMessage.cpp.orig 2015-03-31 15:10:32.186340162 +0200
+++ pegasus/src/Pegasus/Common/HTTPMessage.cpp 2015-03-31 15:11:00.008459185 +0200
@@ -133,7 +133,8 @@ HTTPMessage::HTTPMessage(
authInfo(0),
acceptLanguagesDecoded(false),
contentLanguagesDecoded(false),
- binaryResponse(false)
+ binaryResponse(false),
+ isFromRemoteHost(true)
{
if (cimException_)
cimException = *cimException_;
diff -up pegasus/src/Pegasus/Common/HTTPMessage.h.orig pegasus/src/Pegasus/Common/HTTPMessage.h
--- pegasus/src/Pegasus/Common/HTTPMessage.h.orig 2015-03-31 15:11:13.706517786 +0200
+++ pegasus/src/Pegasus/Common/HTTPMessage.h 2015-03-31 15:11:33.528602586 +0200
@@ -73,6 +73,7 @@ public:
ContentLanguageList contentLanguages;
Boolean acceptLanguagesDecoded;
Boolean contentLanguagesDecoded;
+ Boolean isFromRemoteHost;
CIMException cimException;
bool binaryResponse;
diff -up pegasus/src/Pegasus/Common/tests/Executor/TestExecutor.cpp.orig pegasus/src/Pegasus/Common/tests/Executor/TestExecutor.cpp
--- pegasus/src/Pegasus/Common/tests/Executor/TestExecutor.cpp.orig 2015-03-31 15:11:50.617675692 +0200
+++ pegasus/src/Pegasus/Common/tests/Executor/TestExecutor.cpp 2015-03-31 15:12:49.031925589 +0200
@@ -76,7 +76,7 @@ void testExecutorLoopbackImpl()
#endif
PEGASUS_TEST_ASSERT(Executor::authenticatePassword(
- "xnonexistentuserx", "wrongpassword") != 0);
+ "xnonexistentuserx", "wrongpassword", true) != 0);
PEGASUS_TEST_ASSERT(Executor::validateUser("xnonexistentuserx") != 0);
char challengeFilePath[EXECUTOR_BUFFER_SIZE];
@@ -115,7 +115,7 @@ void testExecutorSocketImpl()
PEGASUS_TEST_ASSERT(Executor::reapProviderAgent(123) == 0);
PEGASUS_TEST_ASSERT(Executor::authenticatePassword(
- "xnonexistentuserx", "wrongpassword") == -1);
+ "xnonexistentuserx", "wrongpassword", true) == -1);
PEGASUS_TEST_ASSERT(Executor::validateUser("xnonexistentuserx") == -1);
char challengeFilePath[EXECUTOR_BUFFER_SIZE];
diff -up pegasus/src/Pegasus/Security/Authentication/BasicAuthenticationHandler.cpp.orig pegasus/src/Pegasus/Security/Authentication/BasicAuthenticationHandler.cpp
--- pegasus/src/Pegasus/Security/Authentication/BasicAuthenticationHandler.cpp.orig 2015-03-31 15:12:58.057964203 +0200
+++ pegasus/src/Pegasus/Security/Authentication/BasicAuthenticationHandler.cpp 2015-03-31 15:13:19.591056322 +0200
@@ -159,6 +159,7 @@ AuthenticationStatus BasicAuthentication
_basicAuthenticator->authenticate(
userName,
password,
+ authInfo->isRemoteUser(),
authInfo);
// Log audit message.
diff -up pegasus/src/Pegasus/Security/Authentication/BasicAuthenticator.h.orig pegasus/src/Pegasus/Security/Authentication/BasicAuthenticator.h
--- pegasus/src/Pegasus/Security/Authentication/BasicAuthenticator.h.orig 2015-03-31 15:13:32.889113211 +0200
+++ pegasus/src/Pegasus/Security/Authentication/BasicAuthenticator.h 2015-03-31 15:13:51.240191720 +0200
@@ -65,6 +65,7 @@ public:
virtual AuthenticationStatus authenticate(
const String& userName,
const String& password,
+ Boolean isRemoteUser,
AuthenticationInfo* authInfo) = 0;
/** Construct and return the HTTP Basic authentication challenge header
diff -up pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticator.h.orig pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticator.h
--- pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticator.h.orig 2015-03-31 15:14:04.185247096 +0200
+++ pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticator.h 2015-03-31 15:14:20.391316426 +0200
@@ -54,6 +54,7 @@ public:
AuthenticationStatus authenticate(
const String& userName,
const String& password,
+ Boolean isRemoteUser,
AuthenticationInfo* authInfo);
AuthenticationStatus validateUser(
diff -up pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorStub.cpp.orig pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorStub.cpp
--- pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorStub.cpp.orig 2015-03-31 15:14:32.937370098 +0200
+++ pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorStub.cpp 2015-03-31 15:14:52.631454350 +0200
@@ -74,6 +74,7 @@ PAMBasicAuthenticator::~PAMBasicAuthenti
AuthenticationStatus PAMBasicAuthenticator::authenticate(
const String& userName,
const String& password,
+ Boolean isRemoteUser,
AuthenticationInfo* authInfo)
{
PEG_METHOD_ENTER(TRC_AUTHENTICATION,
diff -up pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorUnix.cpp.orig pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorUnix.cpp
--- pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorUnix.cpp.orig 2015-03-31 15:15:08.521522327 +0200
+++ pegasus/src/Pegasus/Security/Authentication/PAMBasicAuthenticatorUnix.cpp 2015-03-31 15:15:49.255696589 +0200
@@ -66,6 +66,7 @@ PAMBasicAuthenticator::~PAMBasicAuthenti
AuthenticationStatus PAMBasicAuthenticator::authenticate(
const String& userName,
const String& password,
+ Boolean isRemoteUser,
AuthenticationInfo* authInfo)
{
PEG_METHOD_ENTER(TRC_AUTHENTICATION,
@@ -74,7 +75,8 @@ AuthenticationStatus PAMBasicAuthenticat
int pam_rc =
Executor::authenticatePassword(
userName.getCString(),
- password.getCString());
+ password.getCString(),
+ isRemoteUser);
// return code of -1 will be translated to AUTHSC_UNAUTHORIZED
AuthenticationStatus authStatus = _getAuthStatusFromPAM_RC(pam_rc);
diff -up pegasus/src/Pegasus/Security/Authentication/SecureBasicAuthenticator.cpp.orig pegasus/src/Pegasus/Security/Authentication/SecureBasicAuthenticator.cpp
--- pegasus/src/Pegasus/Security/Authentication/SecureBasicAuthenticator.cpp.orig 2015-03-31 15:16:03.097755805 +0200
+++ pegasus/src/Pegasus/Security/Authentication/SecureBasicAuthenticator.cpp 2015-03-31 15:16:24.758848473 +0200
@@ -239,7 +239,7 @@ AuthenticationStatus SecureBasicAuthenti
if (Executor::detectExecutor() == 0)
{
if (Executor::authenticatePassword(
- userName.getCString(), password.getCString()) == 0)
+ userName.getCString(), password.getCString(), true) == 0)
{
authenticated = true;
}
diff -up pegasus/src/Pegasus/Server/HTTPAuthenticatorDelegator.cpp.orig pegasus/src/Pegasus/Server/HTTPAuthenticatorDelegator.cpp
--- pegasus/src/Pegasus/Server/HTTPAuthenticatorDelegator.cpp.orig 2015-03-31 15:16:39.848913028 +0200
+++ pegasus/src/Pegasus/Server/HTTPAuthenticatorDelegator.cpp 2015-03-31 15:17:21.079089410 +0200
@@ -431,6 +431,9 @@ void HTTPAuthenticatorDelegator::handleH
Tracer::LEVEL3,
"HTTPAuthenticatorDelegator - Authentication processing start");
+ // Let Authenticators know whether this user is Local or Remote:
+ httpMessage->authInfo->setRemoteUser( httpMessage->isFromRemoteHost );
+
//
// Handle authentication:
//

View File

@ -0,0 +1,62 @@
diff -up pegasus/mak/program-unix.mak.orig pegasus/mak/program-unix.mak
--- pegasus/mak/program-unix.mak.orig 2012-10-08 12:19:55.965024675 +0200
+++ pegasus/mak/program-unix.mak 2012-10-08 12:21:02.378355115 +0200
@@ -28,19 +28,10 @@
#//////////////////////////////////////////////////////////////////////////
INCLUDES = -I$(ROOT)/src $(EXTRA_INCLUDES)
-ifndef LINK_RPATH
- LINK_RPATH = -Xlinker -rpath
-endif
-
LINK_DEST_LIB = -Xlinker $(PEGASUS_DEST_LIB_DIR)
LINK_LIB_DIR = -Xlinker $(LIB_DIR)
-ifndef LINK_RPATH_LINK
- LINK_RPATH_LINK = -Xlinker -rpath-link
-endif
-
-
TMP_OBJECTS = $(foreach i,$(SOURCES),$(OBJ_DIR)/$i)
S_OBJECTS = $(TMP_OBJECTS:.s=.o)
@@ -52,15 +43,9 @@ FULL_PROGRAM=$(BIN_DIR)/$(PROGRAM)$(EXE)
EXE_OUTPUT = $(EXE_OUT) $(FULL_PROGRAM)
ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
- ifdef PEGASUS_USE_RELEASE_DIRS
- EXTRA_LINK_FLAGS += $(LINK_RPATH) $(LINK_DEST_LIB) $(LINK_RPATH_LINK) $(LINK_LIB_DIR)
- else
- EXTRA_LINK_FLAGS += $(LINK_RPATH) $(LINK_LIB_DIR)
- endif
-
ifeq ($(HAS_ICU_DEPENDENCY),true)
ifdef ICU_INSTALL
- EXTRA_LINK_FLAGS += $(LINK_RPATH) -Xlinker ${ICU_INSTALL}/lib
+ EXTRA_LINK_FLAGS += -Xlinker ${ICU_INSTALL}/lib
endif
endif
endif
diff -up pegasus/mak/shared-library-unix.mak.orig pegasus/mak/shared-library-unix.mak
--- pegasus/mak/shared-library-unix.mak.orig 2012-10-08 12:21:15.279419276 +0200
+++ pegasus/mak/shared-library-unix.mak 2012-10-08 12:22:32.715804612 +0200
@@ -98,15 +98,14 @@ ifeq ($(COMPILER),gnu)
ifneq ($(OS),darwin)
ifdef PEGASUS_USE_RELEASE_DIRS
LINK_COMMAND = $(CXX) -shared $(LINK_MACHINE_OPTIONS)
- LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX) -Xlinker -rpath \
- -Xlinker $(PEGASUS_DEST_LIB_DIR) $(EXTRA_LINK_ARGUMENTS)
+ LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX) $(EXTRA_LINK_ARGUMENTS)
else
LINK_COMMAND = $(CXX) -shared $(LINK_MACHINE_OPTIONS)
- LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX) -Xlinker -rpath -Xlinker $(LIB_DIR) $(EXTRA_LINK_ARGUMENTS)
+ LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX) $(EXTRA_LINK_ARGUMENTS)
endif
else
LINK_COMMAND = $(CXX) -dynamiclib
- LINK_ARGUMENTS = --helplib$(LIBRARY)$(LIB_SUFFIX) -ldl
+ LINK_ARGUMENTS = --helplib$(LIBRARY)$(LIB_SUFFIX) -ldl $(EXTRA_LINK_ARGUMENTS)
endif
ifeq ($(PEGASUS_PLATFORM), SOLARIS_SPARC_GNU)
LINK_ARGUMENTS = -Wl,-hlib$(LIBRARY)$(LIB_SUFFIX) -Xlinker -L$(LIB_DIR) $(EXTRA_LINK_ARGUMENTS)

View File

@ -0,0 +1,38 @@
diff -up pegasus/env_var_Linux.status.redhat-config pegasus/env_var_Linux.status
--- pegasus/env_var_Linux.status.redhat-config 2015-04-01 00:41:07.000000000 +0200
+++ pegasus/env_var_Linux.status 2015-05-26 13:05:21.021110656 +0200
@@ -25,18 +25,21 @@ PEGASUS_HAS_SSL=yes
PEGASUS_USE_SSL_RANDOMFILE=false
PEGASUS_NOASSERTS=yes
PEGASUS_PAM_AUTHENTICATION=true
-PEGASUS_USE_PAM_STANDALONE_PROC=true
PEGASUS_USE_RELEASE_CONFIG_OPTIONS=true
PEGASUS_USE_RELEASE_DIRS=true
PEGASUS_USE_SYSLOGS=true
-PEGASUS_CIM_SCHEMA=CIM241
+PEGASUS_CIM_SCHEMA=CIM238
PEGASUS_USE_NET_SNMP=true
-PEGASUS_ENABLE_PRIVILEGE_SEPARATION=true
+PEGASUS_ENABLE_PRIVILEGE_SEPARATION=false
+
+PEGASUS_ENABLE_EXECQUERY=true
+PEGASUS_DEFAULT_ENABLE_OOP=true
+PEGASUS_INTEROP_NAMESPACE=root/interop
PEGASUS_ENABLE_INTEROP_PROVIDER=true
PEGASUS_ENABLE_PROTOCOL_WSMAN=true
-PEGASUS_ENABLE_SLP=false
+PEGASUS_ENABLE_SLP=true
ifeq ($(PEGASUS_ENABLE_SLP), true)
PEGASUS_SLP_REG_TIMEOUT=1090
PEGASUS_USE_EXTERNAL_SLP=openslp
@@ -126,7 +129,7 @@ PEGASUS_INSTALL_LOG = $(PEGASUS_LOG_DIR)
PEGASUS_CIMSERVER_START_FILE = $(PEGASUS_VARRUN_DIR)/cimserver.pid
PEGASUS_CIMSERVER_START_LOCK_FILE = $(PEGASUS_VARRUN_DIR)/cimserver_start.lock
-PEGASUS_LOCAL_DOMAIN_SOCKET_DIR = $(PEGASUS_VARRUN_DIR)/socket
+PEGASUS_LOCAL_DOMAIN_SOCKET_DIR = $(PEGASUS_VARRUN_DIR)
PEGASUS_LOCAL_DOMAIN_SOCKET_PATH = \
$(PEGASUS_LOCAL_DOMAIN_SOCKET_DIR)/cimxml.socket

460
pegasus-2.9.0-sparc.patch Normal file
View File

@ -0,0 +1,460 @@
diff -up pegasus/mak/config-linux.mak.orig pegasus/mak/config-linux.mak
--- pegasus/mak/config-linux.mak.orig 2013-08-27 14:26:51.229234756 +0200
+++ pegasus/mak/config-linux.mak 2013-08-27 14:27:23.467354043 +0200
@@ -176,6 +176,9 @@ ifndef PEGASUS_ARCH_LIB
ifeq ($(PEGASUS_PLATFORM),LINUX_X86_64_CLANG)
PEGASUS_ARCH_LIB = lib64
endif
+ ifeq ($(PEGASUS_PLATFORM),LINUX_SPARC64_GNU)
+ PEGASUS_ARCH_LIB = lib64
+ endif
PEGASUS_ARCH_LIB = lib
endif
DEFINES += -DPEGASUS_ARCH_LIB=\"$(PEGASUS_ARCH_LIB)\"
diff -up pegasus/mak/platform_LINUX_SPARC64_GNU.mak.orig pegasus/mak/platform_LINUX_SPARC64_GNU.mak
--- pegasus/mak/platform_LINUX_SPARC64_GNU.mak.orig 2013-08-27 14:27:56.748477172 +0200
+++ pegasus/mak/platform_LINUX_SPARC64_GNU.mak 2013-08-27 14:28:42.522646515 +0200
@@ -0,0 +1,36 @@
+#//%2006////////////////////////////////////////////////////////////////////////
+#//
+#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
+#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
+#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation, The Open Group.
+#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; Symantec Corporation; The Open Group.
+#//
+#// Permission is hereby granted, free of charge, to any person obtaining a copy
+#// of this software and associated documentation files (the "Software"), to
+#// deal in the Software without restriction, including without limitation the
+#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+#// sell copies of the Software, and to permit persons to whom the Software is
+#// furnished to do so, subject to the following conditions:
+#//
+#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+#// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+#// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+#// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+#// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+#// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+#// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#//
+#//==============================================================================
+# Platform Configuration for Linux on PPC
+# If you have generic Linux config options, please place them in config-linux.mak
+
+include $(ROOT)/mak/config-linux.mak
+
+ARCHITECTURE = sparc
diff -up pegasus/mak/platform_LINUX_SPARCV9_GNU.mak.orig pegasus/mak/platform_LINUX_SPARCV9_GNU.mak
--- pegasus/mak/platform_LINUX_SPARCV9_GNU.mak.orig 2013-08-27 14:29:02.011718625 +0200
+++ pegasus/mak/platform_LINUX_SPARCV9_GNU.mak 2013-08-27 14:29:28.282815781 +0200
@@ -0,0 +1,36 @@
+#//%2006////////////////////////////////////////////////////////////////////////
+#//
+#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
+#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
+#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation, The Open Group.
+#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; Symantec Corporation; The Open Group.
+#//
+#// Permission is hereby granted, free of charge, to any person obtaining a copy
+#// of this software and associated documentation files (the "Software"), to
+#// deal in the Software without restriction, including without limitation the
+#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+#// sell copies of the Software, and to permit persons to whom the Software is
+#// furnished to do so, subject to the following conditions:
+#//
+#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+#// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+#// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+#// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+#// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+#// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+#// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#//
+#//==============================================================================
+# Platform Configuration for Linux on PPC
+# If you have generic Linux config options, please place them in config-linux.mak
+
+include $(ROOT)/mak/config-linux.mak
+
+ARCHITECTURE = sparc
diff -up pegasus/mak/SDKMakefile.orig pegasus/mak/SDKMakefile
--- pegasus/mak/SDKMakefile.orig 2013-08-27 14:29:46.108881720 +0200
+++ pegasus/mak/SDKMakefile 2013-08-27 14:32:18.170444052 +0200
@@ -510,6 +510,18 @@ ifeq ($(RUNTIME_PLATFORM_TEST_NEEDED), t
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
@$(ECHO-E) " endif" \
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " ifeq (\044(shell uname -i),sparc)" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " PEGASUS_PLATFORM = LINUX_SPARCV9_GNU" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " endif" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " ifeq (\044(shell uname -i),sparc64)" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " PEGASUS_PLATFORM = LINUX_SPARC64_GNU" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " endif" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
else
$(error This SDK has been defined to include the following \
platforms: $(PACKAGED_PLATFORM_FILES). \
@@ -594,6 +606,18 @@ ifeq ($(RUNTIME_PLATFORM_TEST_NEEDED), t
@$(ECHO-E) "endif" \
>> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) "ifeq (\044(PEGASUS_PLATFORM),LINUX_SPARCV9_GNU)" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " PEGASUS_ARCH_LIB = lib" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) "endif" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) "ifeq (\044(PEGASUS_PLATFORM),LINUX_SPARC64_GNU)" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) " PEGASUS_ARCH_LIB = lib64" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
+ @$(ECHO-E) "endif" \
+ >> $(PEGASUS_STAGING_DIR)$(PEGASUS_SAMPLES_DIR)/mak/config.mak
else
$(error This SDK has been defined to include the following \
platforms: $(PACKAGED_PLATFORM_FILES). \
diff -up pegasus/src/Pegasus/Common/Config.h.orig pegasus/src/Pegasus/Common/Config.h
--- pegasus/src/Pegasus/Common/Config.h.orig 2013-08-27 14:32:34.763505395 +0200
+++ pegasus/src/Pegasus/Common/Config.h 2013-08-27 14:33:05.402618625 +0200
@@ -82,6 +82,10 @@
# include <Pegasus/Common/Platform_LINUX_PPC64_GNU.h>
#elif defined (PEGASUS_PLATFORM_LINUX_PPC_E500_GNU)
# include <Pegasus/Common/Platform_LINUX_PPC_E500_GNU.h>
+#elif defined (PEGASUS_PLATFORM_LINUX_SPARCV9_GNU)
+# include <Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h>
+#elif defined (PEGASUS_PLATFORM_LINUX_SPARC64_GNU)
+# include <Pegasus/Common/Platform_LINUX_SPARC64_GNU.h>
#elif defined (PEGASUS_PLATFORM_LINUX_ZSERIES_GNU)
# include <Pegasus/Common/Platform_LINUX_ZSERIES_GNU.h>
#elif defined (PEGASUS_PLATFORM_LINUX_ZSERIES64_GNU)
diff -up pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h.orig pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h
--- pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h.orig 2013-08-27 14:33:28.186702833 +0200
+++ pegasus/src/Pegasus/Common/Platform_LINUX_SPARC64_GNU.h 2013-08-27 14:34:45.833989895 +0200
@@ -0,0 +1,93 @@
+/*
+//%2006////////////////////////////////////////////////////////////////////////
+//
+// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
+// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
+// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
+// IBM Corp.; EMC Corporation, The Open Group.
+// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
+// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
+// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+// EMC Corporation; VERITAS Software Corporation; The Open Group.
+// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+// EMC Corporation; Symantec Corporation; The Open Group.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to
+// deal in the Software without restriction, including without limitation the
+// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+// sell copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+//==============================================================================
+//
+//%/////////////////////////////////////////////////////////////////////////////
+*/
+
+#ifndef Pegasus_Platform_LINUX_SPARC64_GNU_h
+#define Pegasus_Platform_LINUX_SPARC64_GNU_h
+
+#include <stddef.h>
+
+#define PEGASUS_OS_TYPE_UNIX
+
+#ifndef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
+#define PEGASUS_PLATFORM_LINUX_GENERIC_GNU
+#endif
+
+#define PEGASUS_OS_LINUX
+
+#define PEGASUS_POINTER_64BIT
+
+#define PEGASUS_COMPILER_GNU
+
+#define PEGASUS_UINT64 unsigned long long
+
+#define PEGASUS_SINT64 long long
+
+#define PEGASUS_HAVE_NAMESPACES
+
+#define PEGASUS_HAVE_FOR_SCOPE
+
+#define PEGASUS_HAVE_TEMPLATE_SPECIALIZATION
+
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+#ifndef _REENTRANT
+#define _REENTRANT
+#endif
+#define _THREAD_SAFE
+#include <features.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/param.h> /* For MAXHOSTNAMELEN */
+#include <limits.h> /* _POSIX_HOST_NAME_MAX */
+
+#if (__GNUC__ >= 4)
+# define PEGASUS_EXPORT __attribute__ ((visibility("default")))
+# define PEGASUS_IMPORT __attribute__ ((visibility("default")))
+# define PEGASUS_HIDDEN_LINKAGE __attribute__((visibility("hidden")))
+#endif
+
+#define PEGASUS_HAVE_PTHREADS
+
+#define PEGASUS_HAVE_NANOSLEEP
+
+#define PEGASUS_HAS_SIGNALS
+
+/* getifaddrs() avilable in gcc version >= 3.4 */
+#if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 4))
+# define PEGASUS_HAS_GETIFADDRS
+#endif
+
+#endif /* Pegasus_Platform_LINUX_SPARC64_GNU_h */
diff -up pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h.orig pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h
--- pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h.orig 2013-08-27 14:35:15.787100560 +0200
+++ pegasus/src/Pegasus/Common/Platform_LINUX_SPARCV9_GNU.h 2013-08-27 14:36:22.937348657 +0200
@@ -0,0 +1,93 @@
+/*
+//%2006////////////////////////////////////////////////////////////////////////
+//
+// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
+// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
+// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
+// IBM Corp.; EMC Corporation, The Open Group.
+// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
+// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
+// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+// EMC Corporation; VERITAS Software Corporation; The Open Group.
+// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+// EMC Corporation; Symantec Corporation; The Open Group.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to
+// deal in the Software without restriction, including without limitation the
+// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+// sell copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+//==============================================================================
+//
+//%/////////////////////////////////////////////////////////////////////////////
+*/
+
+#ifndef Pegasus_Platform_LINUX_SPARCV9_GNU_h
+#define Pegasus_Platform_LINUX_SPARCV9_GNU_h
+
+#include <stddef.h>
+
+#define PEGASUS_OS_TYPE_UNIX
+
+#ifndef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
+#define PEGASUS_PLATFORM_LINUX_GENERIC_GNU
+#endif
+
+#define PEGASUS_OS_LINUX
+
+#define PEGASUS_ARCHITECTURE_SPARC
+
+#define PEGASUS_COMPILER_GNU
+
+#define PEGASUS_UINT64 unsigned long long
+
+#define PEGASUS_SINT64 long long
+
+#define PEGASUS_HAVE_NAMESPACES
+
+#define PEGASUS_HAVE_FOR_SCOPE
+
+#define PEGASUS_HAVE_TEMPLATE_SPECIALIZATION
+
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+#ifndef _REENTRANT
+#define _REENTRANT
+#endif
+#define _THREAD_SAFE
+#include <features.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/param.h> /* For MAXHOSTNAMELEN */
+#include <limits.h> /* _POSIX_HOST_NAME_MAX */
+
+#if (__GNUC__ >= 4)
+# define PEGASUS_EXPORT __attribute__ ((visibility("default")))
+# define PEGASUS_IMPORT __attribute__ ((visibility("default")))
+# define PEGASUS_HIDDEN_LINKAGE __attribute__((visibility("hidden")))
+#endif
+
+#define PEGASUS_HAVE_PTHREADS
+
+#define PEGASUS_HAVE_NANOSLEEP
+
+#define PEGASUS_HAS_SIGNALS
+
+/* getifaddrs() avilable in gcc version >= 3.4 */
+#if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 4))
+# define PEGASUS_HAS_GETIFADDRS
+#endif
+
+#endif /* Pegasus_Platform_LINUX_SPARCV9_GNU_h */
diff -up pegasus/src/SDK/samples/mak/LINUX_SPARC64_GNU.mak.orig pegasus/src/SDK/samples/mak/LINUX_SPARC64_GNU.mak
--- pegasus/src/SDK/samples/mak/LINUX_SPARC64_GNU.mak.orig 2013-08-27 14:37:02.458494760 +0200
+++ pegasus/src/SDK/samples/mak/LINUX_SPARC64_GNU.mak 2013-08-27 14:37:36.121619044 +0200
@@ -0,0 +1,55 @@
+#//%2006////////////////////////////////////////////////////////////////////////
+#//
+#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
+#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
+#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation, The Open Group.
+#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; Symantec Corporation; The Open Group.
+#//
+#// Permission is hereby granted, free of charge, to any person obtaining a copy
+#// of this software and associated documentation files (the "Software"), to
+#// deal in the Software without restriction, including without limitation the
+#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+#// sell copies of the Software, and to permit persons to whom the Software is
+#// furnished to do so, subject to the following conditions:
+#//
+#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+#// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+#// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+#// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+#// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+#// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+#// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#//
+#//==============================================================================
+
+ECHO = echo
+MKDIRHIER = mkdir -p
+RM = rm -f
+TOUCH = touch
+
+COMPILE_CXX_COMMAND = g++
+COMPILE_C_COMMAND = gcc
+LIBRARY_LINK_COMMAND = $(COMPILE_CXX_COMMAND) -shared
+PROGRAM_LINK_COMMAND = $(COMPILE_CXX_COMMAND)
+
+SYS_LIBS = -ldl -lpthread -lcrypt
+
+OBJ_SUFFIX=.o
+
+DEFINES = -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM)
+PROGRAM_COMPILE_OPTIONS = -O2 -W -Wall -Wno-unused -D_GNU_SOURCE \
+ -DTHREAD_SAFE -D_REENTRANT -fPIC
+LIBRARY_COMPILE_OPTIONS = $(PROGRAM_COMPILE_OPTIONS)
+
+PROGRAM_LINK_OPTIONS = -Xlinker -rpath -Xlinker $(PEGASUS_DEST_LIB_DIR)
+LIBRARY_LINK_OPTIONS = $(PROGRAM_LINK_OPTIONS)
+LINK_OUT = -o
+SYM_LINK_LIB = $(PEGASUS_PROVIDER_LIB_DIR)/lib$(LIBRARY)
+PLATFORM_LIB_SUFFIX = so
diff -up pegasus/src/SDK/samples/mak/LINUX_SPARCV9_GNU.mak.orig pegasus/src/SDK/samples/mak/LINUX_SPARCV9_GNU.mak
--- pegasus/src/SDK/samples/mak/LINUX_SPARCV9_GNU.mak.orig 2013-08-27 14:38:00.233708183 +0200
+++ pegasus/src/SDK/samples/mak/LINUX_SPARCV9_GNU.mak 2013-08-27 14:38:37.113844321 +0200
@@ -0,0 +1,55 @@
+#//%2006////////////////////////////////////////////////////////////////////////
+#//
+#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
+#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
+#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation, The Open Group.
+#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
+#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; VERITAS Software Corporation; The Open Group.
+#// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
+#// EMC Corporation; Symantec Corporation; The Open Group.
+#//
+#// Permission is hereby granted, free of charge, to any person obtaining a copy
+#// of this software and associated documentation files (the "Software"), to
+#// deal in the Software without restriction, including without limitation the
+#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+#// sell copies of the Software, and to permit persons to whom the Software is
+#// furnished to do so, subject to the following conditions:
+#//
+#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
+#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
+#// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+#// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+#// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+#// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+#// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+#// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#//
+#//==============================================================================
+
+ECHO = echo
+MKDIRHIER = mkdir -p
+RM = rm -f
+TOUCH = touch
+
+COMPILE_CXX_COMMAND = g++
+COMPILE_C_COMMAND = gcc
+LIBRARY_LINK_COMMAND = $(COMPILE_CXX_COMMAND) -shared
+PROGRAM_LINK_COMMAND = $(COMPILE_CXX_COMMAND)
+
+SYS_LIBS = -ldl -lpthread -lcrypt
+
+OBJ_SUFFIX=.o
+
+DEFINES = -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM)
+PROGRAM_COMPILE_OPTIONS = -O2 -W -Wall -Wno-unused -D_GNU_SOURCE \
+ -DTHREAD_SAFE -D_REENTRANT -fPIC
+LIBRARY_COMPILE_OPTIONS = $(PROGRAM_COMPILE_OPTIONS)
+
+PROGRAM_LINK_OPTIONS = -Xlinker -rpath -Xlinker $(PEGASUS_DEST_LIB_DIR)
+LIBRARY_LINK_OPTIONS = $(PROGRAM_LINK_OPTIONS)
+LINK_OUT = -o
+SYM_LINK_LIB = $(PEGASUS_PROVIDER_LIB_DIR)/lib$(LIBRARY)
+PLATFORM_LIB_SUFFIX = so

View File

@ -0,0 +1,66 @@
diff -up pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp_old pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp
--- pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp_old 2010-01-14 15:06:36.757941652 +0100
+++ pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp 2010-01-14 15:08:12.113962655 +0100
@@ -539,7 +539,7 @@ NOTES :
*/
Boolean Process::getRealText(Uint64& i64) const
{
- i64 = pInfo.pst_tsize * getpagesize() / 1024;
+ i64 = pInfo.pst_tsize * sysconf(_SC_PAGESIZE) / 1024;
return true;
}
@@ -555,7 +555,7 @@ NOTES :
*/
Boolean Process::getRealData(Uint64& i64) const
{
- i64 = pInfo.pst_dsize * getpagesize() / 1024;
+ i64 = pInfo.pst_dsize * sysconf(_SC_PAGESIZE) / 1024;
return true;
}
@@ -603,7 +603,7 @@ NOTES :
*/
Boolean Process::getVirtualData(Uint64& i64) const
{
- i64 = pInfo.pst_vdsize * getpagesize() / 1024;
+ i64 = pInfo.pst_vdsize * sysconf(_SC_PAGESIZE) / 1024;
return true;
}
@@ -619,7 +619,7 @@ NOTES :
*/
Boolean Process::getVirtualStack(Uint64& i64) const
{
- i64 = pInfo.pst_vssize * getpagesize() / 1024;
+ i64 = pInfo.pst_vssize * sysconf(_SC_PAGESIZE) / 1024;
return true;
}
@@ -635,7 +635,7 @@ NOTES :
*/
Boolean Process::getVirtualMemoryMappedFileSize(Uint64& i64) const
{
- i64 = pInfo.pst_vmmsize * getpagesize() / 1024;
+ i64 = pInfo.pst_vmmsize * sysconf(_SC_PAGESIZE) / 1024;
return true;
}
@@ -651,7 +651,7 @@ NOTES :
*/
Boolean Process::getVirtualSharedMemory(Uint64& i64) const
{
- i64 = pInfo.pst_vshmsize * getpagesize() / 1024;
+ i64 = pInfo.pst_vshmsize * sysconf(_SC_PAGESIZE) / 1024;
return true;
}
@@ -721,7 +721,7 @@ Boolean Process::getRealSpace(Uint64& i6
i64 = (pInfo.pst_dsize + // real data
pInfo.pst_tsize) // real text may need to figure out how to get
// realStackSize
- * getpagesize() / 1024;
+ * sysconf(_SC_PAGESIZE) / 1024;
return true;
}

158
pegasus_arch_alternatives Executable file
View File

@ -0,0 +1,158 @@
#!/bin/bash
#
# Script to manage tog-pegasus alternatives for multi-lib platforms
#
# Jason Vas Dias<jvdias@redhat.com>, Red Hat, Inc. June 2006
#
# Usage:
# pegasus_arch_alternatives
# ( --list [pfx] |
# ( [ devel | test ] [ -64 ] [ -32 ] [ --remove ] [ --display ] )
# )
# no args : set up library and binary 'pegasus' alternatives
# --list : list 64/32-bit alternatives, with optional prefix pfx
# devel : set up the 'pegasus-devel' alternative
# test : set up the 'pegasus-test' alternative
# -64 : select 64-bit alternatives
# -32 : select 32-bit alternatives
# --remove : remove all pegasus alternatives
# --display: display the pegasus alternatives
#
ALT='pegasus'
LINK=/usr/sbin/cimserver
SLAVES=(/usr/{bin/{cimmof,cimmofl,cimprovider,osinfo,wbemexec},sbin/{cimauth,cimconfig,cimprovagt,cimsub,cimuser,repupgrade}})
DEVEL_LINK=/usr/share/Pegasus/samples/mak/config.mak
TEST_LINK=/usr/share/Pegasus/test/Makefile
#
# Handle listing arg:
#
if [ "$1" = '--list' ]; then
pfx='';
if [ $# -gt 1 ]; then
pfx=$2' ';
fi;
for f in $LINK ${SLAVES[@]} $DEVEL_LINK $TEST_LINK; do
echo ${pfx}$f;
done;
exit 0;
fi
#
# Ensure that files and alternatives are correctly in-sync for architecture:
#
ARCH=`/bin/uname -i`
case $ARCH in
# return for arches that have no alternatives
ia64 )
# nothing to be done - shipped without binary suffix
exit 0;
;;
i386 | ppc | s390 | sparc )
# shipped with -32 suffix, but no alternatives possible - move:
for f in $LINK ${SLAVES[@]} $DEVEL_LINK $TEST_LINK;
do
if [ -f ${f}-32 ] ; then
/bin/mv -f ${f}-32 $f;
fi;
done;
exit 0;
;;
x86_64 | ppc64 | ppc64le | s390x | sparc64 )
# continue
;;
*)
# unhandled architecture
exit 1;
;;
esac;
if [ "$1" = 'devel' ] || [ "$1" = 'test' ]; then
ALT='pegasus-'$1;
shift;
SLAVES=();
if [ "$ALT" = 'pegasus-devel' ]; then
LINK=$DEVEL_LINK;
else
LINK=$TEST_LINK;
fi;
fi;
#
# Ensure that whatever alternatives can be installed, are installed,
# and those that can't be installed are removed:
#
alternatives="`/usr/sbin/alternatives --display $ALT 2>/dev/null`";
slaves64=''
slaves32=''
installed64=1;
installed32=1;
for f in $LINK ${SLAVES[@]}; do
if [ $installed64 -eq 1 ] && [ -f ${f}-64 ]; then
slaves64=${slaves64}'--slave '$f' '${f##*/}' '${f}-64' ';
else
installed64=0;
continue;
fi;
if [ $installed32 -eq 1 ] && [ -f ${f}-32 ]; then
slaves32=${slaves32}'--slave '$f' '${f##*/}' '${f}-32' ';
else
installed32=0;
continue;
fi;
if [ -e $f ] && [ ! -L $f ]; then
/bin/rm -f $f;
fi;
done
if [ $installed64 -eq 0 ]; then
/usr/sbin/alternatives --remove $ALT ${LINK}-64 >/dev/null 2>&1 || :;
elif ! echo "$alternatives" | /bin/egrep -q "^${LINK}-64"; then
/usr/sbin/alternatives --install $LINK $ALT ${LINK}-64 50 $slaves64;
fi;
if [ $installed32 -eq 0 ]; then
/usr/sbin/alternatives --remove $ALT ${LINK}-32 >/dev/null 2>&1 || :;
elif ! echo "$alternatives" | /bin/egrep -q "^${LINK}-32"; then
/usr/sbin/alternatives --install $LINK $ALT ${LINK}-32 50 $slaves32;
fi;
#
# Handle optional user args
#
if [ -n "$1" ]; then
case $1 in
-64 )
if [ $installed64 -eq 1 ]; then
/usr/sbin/alternatives --set $ALT ${LINK}-64;
if [ "$ALT" = 'pegasus' ]; then
/usr/sbin/alternatives --set pegasus-devel ${DEVEL_LINK}-64 >/dev/null 2>&1;
/usr/sbin/alternatives --set pegasus-test ${TEST_LINK}-64 >/dev/null 2>&1;
fi;
fi
;;
-32 )
if [ $installed32 -eq 1 ]; then
/usr/sbin/alternatives --set $ALT ${LINK}-32;
if [ "$ALT" = 'pegasus' ]; then
/usr/sbin/alternatives --set pegasus-devel ${DEVEL_LINK}-32 >/dev/null 2>&1;
/usr/sbin/alternatives --set pegasus-test ${TEST_LINK}-32 >/dev/null 2>&1;
fi;
fi
;;
--remove )
/usr/sbin/alternatives --remove $ALT ${LINK}-32 >/dev/null 2>&1;
/usr/sbin/alternatives --remove $ALT ${LINK}-64 >/dev/null 2>&1;
if [ "$ALT" = 'pegasus' ]; then
/usr/sbin/alternatives --remove pegasus-devel ${DEVEL_LINK}-32 >/dev/null 2>&1;
/usr/sbin/alternatives --remove pegasus-devel ${DEVEL_LINK}-64 >/dev/null 2>&1;
/usr/sbin/alternatives --remove pegasus-test ${TEST_LINK}-32 >/dev/null 2>&1;
/usr/sbin/alternatives --remove pegasus-test ${TEST_LINK}-64 >/dev/null 2>&1;
fi;
;;
--display )
/usr/sbin/alternatives --display $ALT;
if [ "$ALT" = 'pegasus' ]; then
/usr/sbin/alternatives --display pegasus-devel;
/usr/sbin/alternatives --display pegasus-test;
fi
;;
*)
exit 1;
;;
esac;
fi;
exit 0;

69
pegasus_rpm_build_env.sh Normal file
View File

@ -0,0 +1,69 @@
# pegasus_rpm_build_env.sh:
#
# Open Pegasus RPM %build + %install environment setup.
#
# Expects these variables to be set on entry:
# RPM_ARCH : rpmbuild architecture identifier
# RPM_OPT_FLAGS : rpmbuild compile options
# RPM_BUILD_DIR : rpmbuild source directory
# RPM_BUILD_ROOT: rpmbuild build destination directory
# RPM_ARCH_LIB : %{_lib} : lib or lib64
# SRCNAME : name of pegasus source directory
#
# compile options:
#
export PEGASUS_EXTRA_C_FLAGS="$RPM_OPT_FLAGS -Wno-unused"
export PEGASUS_EXTRA_CXX_FLAGS="$PEGASUS_EXTRA_C_FLAGS"
export PEGASUS_EXTRA_PROGRAM_LINK_FLAGS="-pie -Wl,-z,relro,-z,now,-z,nodlopen,-z,noexecstack"
export SYS_INCLUDES=-I/usr/kerberos/include
#
# build object directories:
#
SRCNAME=${SRCNAME:-pegasus}
export PEGASUS_ROOT=${RPM_BUILD_DIR}/${SRCNAME}
export PEGASUS_HOME=${RPM_BUILD_DIR}/${SRCNAME}/build
#
# build time settings:
export PEGASUS_ARCH_LIB=${RPM_ARCH_LIB:-lib}
export PEGASUS_ENVVAR_FILE=${PEGASUS_ROOT}/env_var_Linux.status
export OPENSSL_HOME=/usr
export OPENSSL_BIN=/usr/bin
export LD_LIBRARY_PATH=${PEGASUS_HOME}/lib
export PATH=${PEGASUS_HOME}/bin:${PATH}
#
# PEGASUS_PLATFORM (hardware platform) setup:
#
if [ -z "$RPM_ARCH" ]; then
export RPM_ARCH=`/bin/uname -i`;
fi;
case ${RPM_ARCH} in
ia64)
export PEGASUS_PLATFORM=LINUX_IA64_GNU;
;;
x86_64)
export PEGASUS_PLATFORM=LINUX_X86_64_GNU;
;;
ppc)
export PEGASUS_PLATFORM=LINUX_PPC_GNU;
;;
ppc64|ppc64le|pseries)
export PEGASUS_PLATFORM=LINUX_PPC64_GNU;
;;
s390)
export PEGASUS_PLATFORM=LINUX_ZSERIES_GNU;
export PEGASUS_EXTRA_C_FLAGS="$PEGASUS_EXTRA_C_FLAGS -fsigned-char";
export PEGASUS_EXTRA_CXX_FLAGS="$PEGASUS_EXTRA_C_FLAGS";
;;
s390x|zseries)
export PEGASUS_PLATFORM=LINUX_ZSERIES64_GNU;
export PEGASUS_EXTRA_C_FLAGS="$PEGASUS_EXTRA_C_FLAGS -fsigned-char";
export PEGASUS_EXTRA_CXX_FLAGS="$PEGASUS_EXTRA_C_FLAGS";
;;
i386)
export PEGASUS_PLATFORM=LINUX_IX86_GNU
;;
*)
echo "Architecture unsupported by pegasus: $RPM_ARCH";
exit 1;
;;
esac;

BIN
repupgrade.1.gz Normal file

Binary file not shown.

142
rpm_build_env Normal file
View File

@ -0,0 +1,142 @@
# Pegasus RPM %build + %install environment setup:
#
# compile options:
#
export PEGASUS_EXTRA_C_FLAGS="$RPM_OPT_FLAGS -fPIC -g -Wall -Wno-unused"
export PEGASUS_EXTRA_CXX_FLAGS="$PEGASUS_EXTRA_C_FLAGS"
export PEGASUS_EXE_LINK_FLAGS="$RPM_OPT_FLAGS -g -pie -Wl,-z,relro,-z,now,-z,nodlopen,-z,noexecstack"
export SYS_INCLUDES=-I/usr/kerberos/include
#
# build object directories:
#
export SRCNAME=pegasus
export PEGASUS_ROOT=${RPM_BUILD_DIR}/${SRCNAME}-${RPM_PACKAGE_VERSION}
export ROOT=$PEGASUS_ROOT
export PEGASUS_HOME=${RPM_BUILD_ROOT}/build
export PEGASUS_ARCH_LIB_DIR=${RPM_ARCH_LIB}
#
# PEGASUS_PLATFORM (hardware platform) setup:
#
if [ -z "$RPM_ARCH" ]; then
export RPM_ARCH=`/bin/uname -i`;
fi;
case ${RPM_ARCH} in
ia64|x86_64)
export PEGASUS_PLATFORM=LINUX_IA64_GNU;
;;
ppc)
export PEGASUS_PLATFORM=LINUX_PPC_GNU;
;;
ppc64|ppc64le|pseries)
export PEGASUS_PLATFORM=LINUX_PPC64_GNU;
;;
s390)
export PEGASUS_PLATFORM=LINUX_ZSERIES_GNU;
export PEGASUS_EXTRA_C_FLAGS="$PEGASUS_EXTRA_C_FLAGS -fsigned-char";
export PEGASUS_EXTRA_CXX_FLAGS="$PEGASUS_EXTRA_C_FLAGS";
;;
s390x|zseries)
export PEGASUS_PLATFORM=LINUX_ZSERIES64_GNU;
export PEGASUS_EXTRA_C_FLAGS="$PEGASUS_EXTRA_C_FLAGS -fsigned-char";
export PEGASUS_EXTRA_CXX_FLAGS="$PEGASUS_EXTRA_C_FLAGS";
;;
i386)
export PEGASUS_PLATFORM=LINUX_IX86_GNU
;;
*)
echo "Architecture unsupported by pegasus: $RPM_ARCH";
exit 1;
;;
esac;
#
# Pegasus Build options:
#
export OPENSSL_HOME=/usr
export PEGASUS_HAS_SSL=yes
# per bug #368
export PEGASUS_USE_RELEASE_DIRS=true
export PEGASUS_USE_RELEASE_CONFIG_OPTIONS=true
# per PEP #144
export PEGASUS_PAM_AUTHENTICATION=true
export PAM_CONFIG_DIR=/etc/pam.d
#
# export PEGASUS_USE_PAM_STANDALONE_PROC=true
# NO, we do NOT use 'cimservera' on Red Hat platforms!
#
export PEGASUS_CIM_SCHEMA=CIM29
export PEGASUS_LOCAL_DOMAIN_SOCKET=true
export PEGASUS_USE_SYSLOGS=true
export PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER=true
# per PEP #174
export PEGASUS_ENABLE_USERGROUP_AUTHORIZATION=true
export PEGASUS_HAS_PERFSTATS=true
export PEGASUS_NOASSERTS=true
# enable CMPI !! :
PEGASUS_ENABLE_CQL=true
# export PEGASUS_DISABLE_CQL=true
export PEGASUS_DISABLE_OBJECT_NORMALIZATION=true
export PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER=true
export PEGASUS_ENABLE_USERGROUP_AUTHORIZATION=true
export PEGASUS_USE_RELEASE_DIRS=true
#
# Pegasus Directory Structure:
#
export PEGASUS_PROD_DIR=/usr
export PEGASUS_PRODSHARE_DIR=${PEGASUS_PROD_DIR}/share/Pegasus
export PEGASUS_DOC_DIR=/usr/share/doc/tog-pegasus-${RPM_PACKAGE_VERSION}
export PEGASUS_MAN_DIR=/usr/share/man
export PEGASUS_MANUSER_DIR=${PEGASUS_MAN_DIR}/man1
export PEGASUS_MANADMIN_DIR=${PEGASUS_MAN_DIR}/man8
export PEGASUS_MOF_DIR=${PEGASUS_PRODSHARE_DIR}/mof
export PEGASUS_DEST_LIB_DIR=${PEGASUS_PROD_DIR}/${PEGASUS_ARCH_LIB_DIR}
export PEGASUS_PROVIDER_DIR=${PEGASUS_DEST_LIB_DIR}/Pegasus/providers
export PEGASUS_PROVIDER_LIB_DIR=${PEGASUS_PROVIDER_DIR}
export PEGASUS_SBIN_DIR=${PEGASUS_PROD_DIR}/sbin
export PEGASUS_BIN_DIR=${PEGASUS_PROD_DIR}/bin
export PEGASUS_VARDATA_DIR=/var/lib/Pegasus
export PEGASUS_REPOSITORY_PARENT_DIR=${PEGASUS_VARDATA_DIR}
export PEGASUS_REPOSITORY_DIR=${PEGASUS_REPOSITORY_PARENT_DIR}/repository
export PEGASUS_PREV_REPOSITORY_DIR=${PEGASUS_REPOSITORY_PARENT_DIR}/prev_repository
export PEGASUS_CONFIG_DIR=/etc/Pegasus
export PEGASUS_VARRUN_DIR=/var/run/tog-pegasus
export PEGASUS_CIMSERVER_START_FILE=${PEGASUS_VARRUN_DIR}/cimserver.pid
export PEGASUS_LOCAL_DOMAIN_SOCKET_DIR=${PEGASUS_VARRUN_DIR}
export PEGASUS_LOCAL_DOMAIN_SOCKET_PATH=${PEGASUS_LOCAL_DOMAIN_SOCKET_DIR}/cimxml.socket
export PEGASUS_VARDATA_CACHE_DIR=${PEGASUS_VARDATA_DIR}/cache
export PEGASUS_LOCAL_AUTH_DIR=${PEGASUS_VARDATA_CACHE_DIR}/localauth
export PEGASUS_TRACE_DIR=${PEGASUS_VARDATA_CACHE_DIR}/trace
export PEGASUS_PLANNED_CONFIG_FILE=cimserver_planned.conf
export PEGASUS_CURRENT_CONFIG_FILE=cimserver_current.conf
export PEGASUS_PEM_DIR=${PEGASUS_CONFIG_DIR}
export PEGASUS_LOG_DIR=/var/log/Pegasus
export PEGASUS_SSL_KEY_FILE=file.pem
export PEGASUS_SSL_CERT_FILE=server.pem
export PEGASUS_SSL_TRUSTSTORE=client.pem
export PEGASUS_SAMPLES_DIR=${PEGASUS_PRODSHARE_DIR}/samples
export PEGASUS_INCLUDE_DIR=${PEGASUS_PROD_DIR}/include
export PEGASUS_HTML_DIR=${PEGASUS_PRODSHARE_DIR}/html
export PEGASUS_TEST_DIR=${PEGASUS_PRODSHARE_DIR}/test
export PEGASUS_TEST_REPOSITORY_DIR=${PEGASUS_VARDATA_DIR}
export PEGASUS_TEST_REPOSITORY_NAME=testrepository
export PRODUCT_DIRECTORY_STRUCTURE=(\
${PEGASUS_PROD_DIR} \
${PEGASUS_PRODSHARE_DIR} \
${PEGASUS_DOC_DIR} \
${PEGASUS_MAN_DIR} \
${PEGASUS_MANUSER_DIR} \
${PEGASUS_MANADMIN_DIR} \
${PEGASUS_DEST_LIB_DIR} \
${PEGASUS_PROVIDER_DIR} \
${PEGASUS_PROVIDER_LIB_DIR} \
${PEGASUS_SBIN_DIR} \
${PEGASUS_BIN_DIR} \
${PEGASUS_MOF_DIR} \
${PEGASUS_VARDATA_DIR} \
${PEGASUS_REPOSITORY_DIR} \
${PEGASUS_VARDATA_CACHE_DIR} \
${PEGASUS_TRACE_DIR} \
${PEGASUS_LOG_DIR} \
${PEGASUS_LOCAL_AUTH_DIR} \
${PEGASUS_VARRUN_DIR} \
${PEGASUS_LOCAL_DOMAIN_SOCKET_DIR} \
${PEGASUS_CONFIG_DIR});

13
snmptrapd.conf Normal file
View File

@ -0,0 +1,13 @@
# Example configuration file for snmptrapd
#
# No traps are handled by default, you must edit this file!
#
# SNMPv3
createUser -e 0x80001f88808a67e858ee38ec4c sahana MD5 setup_passphrase DES setup_passphrase
authUser log,execute,net sahana
# SNMPv2
authCommunity log,execute,net public

2
sources Normal file
View File

@ -0,0 +1,2 @@
6e02fe14dd36b2b761d69e19a6fab219 pegasus-2.14.1.tar.gz
e5cad2e960f80dda4390bf422dd7f164 cim_schema_2.38.0Experimental-MOFs.zip

12
tog-pegasus.service Normal file
View File

@ -0,0 +1,12 @@
[Unit]
Description=OpenPegasus CIM Server
After=syslog.target slpd.service
[Service]
Type=forking
ExecStartPre=/usr/share/Pegasus/scripts/generate-certs
ExecStart=/usr/sbin/cimserver
PIDFile=/var/run/tog-pegasus/cimserver.pid
[Install]
WantedBy=multi-user.target

1163
tog-pegasus.spec Normal file

File diff suppressed because it is too large Load Diff

1
tog-pegasus.tmpfiles Normal file
View File

@ -0,0 +1 @@
d /run/tog-pegasus 1750 root pegasus -