version 1.49.2.37, 2001/10/31 15:56:43
|
version 1.106, 2002/04/12 21:12:00
|
|
|
CHANGE LOG FOR PEGASUS | CHANGE LOG FOR PEGASUS |
| |
|
Version 1.09 - Started 5 April 2002 |
|
TAG: Version_1_09. |
|
|
|
1. 5 April 2002 (KS) Update version to 1.09. TAG, and took snapshot. |
|
|
|
2. (Roger Kumpf - HP) 5 Apr 2002 - Modified the CIMOperationResponseMessage |
|
class and its subclasses to contain a CIMException instead of a |
|
CIMStatusCode and String description. This allows extra information in |
|
a CIMException, such as file name and line number, to be carried |
|
internally throughout the system. |
|
|
|
This change creates a single place where CIMExceptions are converted |
|
to an error code and description to be written out in XML. This |
|
single place controls the ability to tune what gets included in the |
|
error description, as well as providing a convenient place to trace |
|
errors that get returned to clients. In particular, client applications |
|
currently see messages that contain redundant error code information, |
|
such as: |
|
|
|
CIM_ERR_INVALID_PARAMETER: One or more parameter values passed |
|
to the method were invalid: "CIM_ERR_INVALID_PARAMETER: One |
|
or more parameter values passed to the method were invalid: |
|
"Unrecognized parameter "Bogus""" |
|
|
|
The CIMOperationResponseMessage change will allow the redundant |
|
information to be eliminated from the messages. |
|
|
|
3. (KS) 7 April 2002- Minor really bad hack to systemwindows.cpp getcurrenttime |
|
after roger fixed timevalue. |
|
|
|
4. (DME) 7 April 2002 Added support for HPUX running on IA64 hardware. |
|
|
|
5. (DME) 7 April 2002 Update master result file for MOF Compiler CLI tests. |
|
Update master result file of wbemexec CLI tests. |
|
|
|
6. (Ramnath Ravindran - Compaq) 8 Apr 2002 - Modified a libraries.mak file in the src/Pegasus/Security/Authentication/tests directory in order to fix the |
|
build on Tru64. |
|
|
|
7. (Roger Kumpf - HP) 8 Apr 2002 - The RETURNVALUE and IRETURNVALUE elements |
|
of the XML encoding of operation responses had been treated as mandatory. |
|
The client response decoder has been updated to make those elements |
|
optional for operations that do not require a return value. The server |
|
response encoder has been updated not to include those elements when the |
|
request does not include a return value. |
|
|
|
8. (Roger Kumpf - HP) 9 Apr 2002 - Updated the Instance, Association, and |
|
Class provider interfaces to use CIMPropertyList instead of Array<String> |
|
for the propertyList parameters. All providers that implement a method |
|
with a propertyList parameter must be modified in accordance with this |
|
change. All providers linked into the Pegasus build have been updated. |
|
|
|
9. (Roger Kumpf - HP) 11 Apr 2002 - Defined an HTTP error message to be |
|
returned to the CIMClient when an HTTP error response is returned. |
|
Added a method to parse the status line of an HTTP response. |
|
|
|
10. (Roger Kumpf - HP) 11 Apr 2002 - Changed the MessageQueue::getQueueName() |
|
method from virtual to non-virtual, and removed that method definition |
|
from all the subclasses. To make sure that the MessageQueue class gets |
|
the queue name value, the default value for the queue name parameter to |
|
the MessageQueue constructor was removed. Constants were defined in |
|
Constants.h for all the queue names currently used in Pegasus. The |
|
places where those queue names were being used for lookup were also |
|
changed to use the constants. |
|
|
|
11. (Roger Kumpf - HP) 12 Apr 2002 - Defined an HTTPError exception to |
|
report non-200-OK HTTP responses back to client applications. Added |
|
an HTTPErrorMessage class to hold information about an HTTP error |
|
response. Added support in the CIMOperationResponseDecoder to |
|
process HTTP error responses and turn them into HTTPErrorMessages. |
|
Added support in CIMClient to process HTTPErrorMessages and throw an |
|
HTTP error. This functionality required fundamental changes in the |
|
way CIMClient processes messages. It can no longer search its queue |
|
for a message of the expected type. Instead, is assumes that no |
|
messages should be on its queue unless it has sent a request to the |
|
encoder. In that case, it assumes that any message on its queue is |
|
the response to that request. |
|
|
|
======================================================================== |
|
|
|
Version 1.08 working towards 1.1 - Started 27 March 2002 |
|
TAG: Version_1_08. Note that the tagging was not all simultaneous because |
|
of problems with the CVS repository |
|
|
|
1. KS 27 March 2002 - Updaded pegasus version to 1.08. Took snapshot. |
|
Tagged CVS 1_08. |
|
|
|
2. KS 2 April 2002 -Add better qualifier testfunctions to cimclass, |
|
qualifierlist, etc. and start to add specific qualifier tests on creates. |
|
======================================================================== |
|
|
|
Version 1.07 working towards 1.1 - Started 4 Feb 2002 |
|
Started just before cutover to the new dispatcher, etc. |
|
TAG: VERSION_1_07 |
|
|
|
1. KS - Updated pegsusversion to 1.07 and tagged file. |
|
|
|
2. (Markus Mueller) 05 Feb 2002 - AIX support. |
|
|
|
3. (Sushma Fernandes - HP) 13 Feb 2002 Implemented FileSystemPropertyOwner |
|
class to support PEGASUS_HOME dependent properties like Repository |
|
location, Provider location and Consumer location. |
|
The default location for these properties continue to be the same |
|
as before. Added support to the Config Manager to own the |
|
Pegasus Home variable and implemented method (getHomedPath) to |
|
return absolute paths based from Pegasus Home. |
|
|
|
For more information look in to the following files: |
|
pegasus/src/Pegasus/Config/ConfigManager.h |
|
pegasus/src/Pegasus/Config/ConfigManager.cpp |
|
pegasus/src/Pegasus/Config/FileSystemPropertyOwner.h |
|
pegasus/src/Pegasus/Config/FileSystemPropertyOwner.cpp |
|
|
|
4. KS - 18 Feb 02 Add changes to test for and set the NULL value for CIMValues. |
|
This forces new CIMValues to have a NULL attributes that is only |
|
reset when a value is "set" or copied into them. the XML and MOF |
|
also deliver a NULL value back when the state of the CIMValue is NULL. |
|
There is a remaining addition to put an exception on CIMValue gets when |
|
the NULL attribute is set that we will install later. |
|
|
|
5. KS - 19 Feb 2002 Extended testclient slightly and cleaned up numerous bugs. |
|
|
|
6. KS - 19 Feb 2002 - Add workpaper in doc/workpaper defining the Pegasus Qualifiers. |
|
Note that this version of the paper still needs work. |
|
|
|
7. (Nag Boranna - HP) 20 Feb 2002 - Modified HTTPAcceptor to optionally bind to |
|
loopback host. Modified CIMClient to connect to loopback host when connectLocal() |
|
method is used. Added a new method lookupPort() in System.h to return the system |
|
configured wbem port number. Modified cimuser, cimauth and cimconfig CLI's to use |
|
modified CIMClient connectLocal() interface. |
|
|
|
8. (KS- 21 Feb 2002) - Modified Makefile for repository load so located in |
|
schema directory. The one in src/pegasus/compiler/load is deprecated and |
|
will be deleted. |
|
|
|
9. KS-21 Feb 2002 - Added new constructor to CIMValue and associated tests |
|
|
|
10. RK-20 Feb 2002 - Add Array reference to CIMValue and added tests |
|
|
|
11. (Sushma Fernandes - HP, Nag Boranna - HP) 22 Feb 2002 Implemented |
|
checks for privileged user when performing authorization. |
|
Added a configuration property enableRemotePrivilegedUserAccess. |
|
This property needs to be set to true to enable privileged user access |
|
for remote clients. |
|
|
|
12. (Roger Kumpf - HP) 22 Feb 2002 - Added type information to extrinsic |
|
method (InvokeMethod) operations. This change involves the addition |
|
of PARAMTYPE attributes to PARAMVALUE and RETURNVALUE tags. This tag |
|
allows the server to determine the type of a parameter value without |
|
having to look up the method definition in the schema. It also allows |
|
the client API to do the same for output parameters as well as return |
|
values. |
|
|
|
PROVIDER IMPLICATIONS: |
|
|
|
Method providers ARE affected by this change. Previously, all input |
|
parameters to invokeMethod were sent to the provider as String type |
|
regardless of what the client actually specified or how the method |
|
was defined. With this change, providers will now receive input |
|
parameters of the type that was actually specified by the client |
|
application (regardless of how the method was defined in the schema). |
|
|
|
However, parameters coming from clients other than the Pegasus client |
|
API may omit the PARAMTYPE attribute. In this case, the operation |
|
processor (currently dispatcher) will find these "typeless" parameters |
|
and convert them to the correct type based on the method definition. |
|
The result is that if the client specifies the parameter type in the |
|
XML encoding (as the Pegasus client API does), the method provider |
|
will receive the type specified by the client; if the client does not |
|
specify the parameter type, the method provider will see the type |
|
specified in the method definition. |
|
|
|
CLIENT IMPLICATIONS: |
|
|
|
Clients ARE affected by this change. Any output parameters that are |
|
returned from Pegasus (or other CIM servers using the PARAMTYPE |
|
attribute) will now be received by Pegasus clients as the same type |
|
sent by the server. Previously, they would have always been of |
|
String type. In addition, the return value will be received as the |
|
correct type rather than as a String. |
|
|
|
Parameters coming from servers other than Pegasus may omit the |
|
PARAMTYPE attribute. In this case, the client will see a |
|
CIMParamValue with type==CIMType::NONE, with a CIMValue of type |
|
String. Similarly, return values coming from other servers that omit |
|
PARAMTYPE will be seen by the client as String type. These return |
|
values will NOT have the CIMType::NONE hint that parameters get, |
|
because they are CIMValues rather than CIMParamValues. |
|
|
|
This behavior will remain for the forseeable future (through |
|
Pegasus version 2), as it is not possible to require that other |
|
implementations use the PARAMTYPE attribute. |
|
|
|
SIDE EFFECTS: |
|
|
|
In the process of implementing this functionality, I discovered |
|
that there was no way to set a CIMValue to be an array of |
|
CIMReferences. This appeared to be an oversight, since method |
|
parameters are permitted to be arrays of CIMReferences. I've |
|
added the necessary functionality to the CIMValue class. |
|
|
|
I also found that the CIMParamValue class needed significant |
|
clean-up, which I completed. |
|
|
|
SETPROPERTY CHANGES: |
|
|
|
A similar problem in SetProperty operations was addressed by |
|
"typing" the specified property value in the operation processor |
|
(currently dispatcher). This is achieved by looking up the |
|
relevant schema to get the property definition, and then converting |
|
the specified value to that property's type. |
|
|
|
The SetProperty operation encoding has not changed to accomodate |
|
inclusion of type information that would obviate the need for this |
|
extra processing. However, clients can avoid this overhead by using |
|
ModifyInstance operations (with a property list) instead of SetProperty. |
|
|
|
The GetProperty operation also has NOT been updated with type |
|
information. Client applications using the Pegasus client API will |
|
always receive String or reference values when calling GetProperty |
|
against any server (Pegasus or not). Clients that require properties |
|
to be returned as the correct type must use GetInstance (perhaps with |
|
a property list) rather than GetProperty. |
|
|
|
13. (Roger Kumpf - HP) 22 Feb 2002 - Reworked the CIMParamValue class. |
|
Instead of being composed of a CIMParameter and a CIMValue, this |
|
class is now composed of a String (parameter name) and a CIMValue. |
|
This change removes the redundancy of having the type, isArray, |
|
and arraySize members in both the CIMParameter and the CIMValue. |
|
The new CIMParamValue definition is more consistent with the XML |
|
encoding of parameter values. |
|
|
|
An isTyped member was also added to CIMParamValue to support the |
|
behavior outlined in item 12 above. Clients should use the isTyped() |
|
method to determine whether the output parameters returned from |
|
InvokeMethod operations are of the correct type, or whether they |
|
have defaulted to String type. |
|
|
|
14. (KS) 4 March 2002 - Corrections for NULL value and the XML code. |
|
Corrections to compiler for Null values input (parser and valuectory) |
|
|
|
15. (Nag Boranna - HP) 04 March 2002 - Modified CIMClient API to accept |
|
username and password as parameters to connect() method, added a new |
|
method diconnect() that closes the open connection with the server |
|
and added code to handle HTTP Basic authentication challenges from |
|
the server. |
|
|
|
16 (KS) 4 March 2002 - Correct problem with array constants not picking up |
|
all of the entires in the array. Bugzilla bug # 6. |
|
|
|
17. (Yi Zhou - HP) 4 March 2002 - Implemented provider registration manager |
|
to perform efficient lookup of instance provider, method provider, and |
|
indication provider. Also, implemented provider registration instances |
|
operations. |
|
|
|
Modified registration provider to use latest provider registration schema. |
|
|
|
18 (KS) 6 March 2002 - Implemented changes to compiler and flavors to correct the |
|
definition of CIMFlavors. |
|
|
|
|
|
19. (Roger Kumpf - HP) 1 Mar 2002 - Reworked the XmlWriter class to |
|
eliminate many of the redundant memory copies that resulted from the |
|
nested method call structure. Now, instead of having a method at |
|
each level that adds a begin tag, contents, and an end tag, there |
|
are separate methods to add the begin and end tags. At the top |
|
level, each of the begin tag methods are called, then the message |
|
"body" is added, followed by calls to the end tag methods. |
|
|
|
The message body is currently still copied twice, once into the XML |
|
payload and then again when the HTTP header is added. (Since the |
|
HTTP header contains a content length field, the header cannot be |
|
constructed until the payload is complete.) It is possible to |
|
remove these extra copies as well, but that would require additional |
|
changes elsewhere in the code. For example, the HTTPMessage class |
|
would need to hold the headers and payload separately rather than in |
|
a single buffer. |
|
|
|
Along with these changes, I did a lot of cleanup. Much of the XML |
|
formatting code has been moved from CIMReference to XmlWriter. Also, |
|
error message formatting has been consolidated in XmlWriter from the |
|
various encoders and decoders, etc. |
|
|
|
20. (Roger Kumpf - HP) 5 Mar 2002 - Added checks in the |
|
CIMOperationRequestDecoder and CIMExportRequestDecoder to validate |
|
that the information in the HTTP headers of a request is consistent |
|
with what is encoded in the XML request itself. |
|
|
|
Specifically, the CIMOperation, CIMProtocolVersion, CIMMethod, |
|
CIMObject, CIMBatch, CIMExport, and CIMExportBatch headers are |
|
validated. |
|
|
|
21. (KS) 7 March 2002 - Correct error in qualifier propagation processing in |
|
qualifierlist.resolve. Temporarily remove the DEFAULT setup on the |
|
Compiler qualifier generation. Add tests for resolve processing. |
|
|
|
22. (Roger Kumpf - HP) 8 Mar 2002 - Simplified CIMClient API construction. |
|
Previously, the client application constructed a client API using: |
|
|
|
Monitor* monitor = new Monitor; |
|
HTTPConnector* connector; |
|
connector = new HTTPConnector(monitor); |
|
Uint32 timeoutMillis = 60 * 1000; // optional |
|
|
|
CIMClient client(monitor, connector, timeoutMillis); |
|
|
|
With this change, the client application now looks like: |
|
|
|
Uint32 timeoutMillis = 60 * 1000; // optional |
|
|
|
CIMClient client(timeoutMillis); |
|
|
|
The old style allowed an SSL context to be specified in the HTTPConnector |
|
constructor. It seems that the SSL context is really a property of a |
|
connection rather than of the client API. So instead of adding an SSL |
|
context parameter to the CIMClient constructor, I added it to the CIMClient |
|
connect() method. There are now forms of the connect() method with and |
|
without an SSL context. Similar changes were made in the HTTPConnector |
|
class to allow specification of an SSL context in the connect() method |
|
rather than in the constructor. |
|
|
|
NOTE: Client applications are affected and must be updated with this |
|
change. I've already updated all the clients that are checked in and |
|
included in the Pegasus build. |
|
|
|
23. (KS) 8 March 2002 - Correct error in compiler that caused length field |
|
of fixed length arrays to be lost. |
|
|
|
24. (Jenny Yu - HP) 8 March 2002 - Modified the CIMException class to NOT |
|
include the source filename and line number in the exception message. |
|
However, for anyone who wishes to include such information in the |
|
CIM Exception message, a compile option DEBUG_CIMEXCEPTION can be used |
|
for that purpose. |
|
|
|
A couple of changes have been made to the Tracer class: |
|
|
|
- CIMException messages can now be put in a trace file using the Tracer. |
|
A new interface has been added to the Tracer to accept a CIMException |
|
as input and writes the exception message in the CIMException to the |
|
trace file. This message will include the source filename and the |
|
line number of the CIMException originator. |
|
|
|
Tracer::traceCIMException(traceComponent, traceLevel, cimException); |
|
|
|
- Strings can now be traced using the Tracer class: |
|
A new interface has been added to the Tracer to accept a String as |
|
input and writes the String to the trace file. |
|
|
|
(ex.) |
|
You can issue the following method call: |
|
Tracer::trace(TRC_CONFIG, Tracer::LEVEL2, "Operation Failed."); |
|
|
|
or use the following new macro: |
|
PEG_TRACE_STRING(TRC_CONFIG, Tracer::LEVEL2, "Operation Failed."); |
|
|
|
25. (Ramnath Ravindran - Compaq) 11 March 2002 - added IPCTru64.h and modified |
|
several files so that Pegasus could build and run on Tru64 unix. Added |
|
one macro in ConfigUnix and ConfigWindows (PEGASUS_OR_IOS_BINARY) in |
|
the case where std::ios::binary is present with a bitwise OR operator. |
|
This macro only works when the std::ios::binary is NOT the first |
|
operator to be "OR"ed. |
|
|
|
26. (Ramnath Ravindran - Compaq) 12 March 2002 - modified more files so that |
|
Pegasus could build and run on Tru64 unix. Finished replacing instances |
|
of ios::binary with the macros PEGASUS_IOS_BINARY and |
|
PEGASUS_OR_IOS_BINARY. Also modified some code that dealt with file |
|
streams. Tru64 does not support the use of the " != " operator on a |
|
fstream object. Instances of such were either modified or an ifdef |
|
block detecting a build on Tru64 was used. Added cstdarg and ctime in |
|
pegasus/src/stdcxx/cwrappers/ directory. |
|
|
|
27. (Mary Hinton) 16 March 2002 - fixed the CIMServer so that it could once |
|
again be installed as a Windows service. The repositoryRootPath could |
|
not be found, because the pegasusHome variable was not being set properly |
|
in the Windows service work thread. |
|
|
|
28. (Bob Blair by KS) 17 March 2002 - Modified repository so there is both a |
|
local repository (cimmofl) and a client interface repository (cimmof) |
|
executable |
|
|
|
29. (KS ) 18 March 2002 - Modified schema makefiles to use the cimomfl respository |
|
executable. |
|
|
|
30. (Roger Kumpf - HP) 19 Mar 2002 - Added range checking for Uint* and |
|
Sint* values in XmlReader.cpp. Previously, values that were out of |
|
range were simply truncated to fit the given integer size. An |
|
exception is now thrown when the given string can not be parsed into |
|
an integer of the specified size. |
|
|
|
31. (Roger Kumpf - HP) 20 Mar 2002 - Added support for hexadecimal integers |
|
in XmlReader.cpp. |
|
|
|
32. (Nag Boranna - HP) 21 March 2002 - Implemented server side Basic |
|
Authentication handling code and cleaned up ATTN's in the authentication |
|
releated files. Implemented a new AuthenticationInfoRep class and modified |
|
the related files. Added more test cases to test the authentication classes. |
|
|
|
33. (Ramnath Ravindran - Compaq) 21 March 2002 - replaced instances of "| ios::binary" |
|
with PEGASUS_OR_IOS_BINARY in 3 files: System.cpp, InstanceIndexFile.cpp, and |
|
InstanceDataFile.cpp |
|
|
|
34. (KS) 25 March 2002 - Extended qualifier resolution to correctly handle Flavors nad |
|
enabled the scope and flavors testing. Had been pretty much blocked before. |
|
|
|
35. (Roger Kumpf - HP) 26 Mar 2002 - Created a class to map CIM operation |
|
request messages to provider API calls. Cleaned up the dispatcher and |
|
added the ability to pass requests to control providers through the |
|
ModuleController. Integrated the ConfigSettingProvider with the |
|
ModuleController and set up the structure for getting the control |
|
providers working. Moved the ConfigSettingProvider from the |
|
Providers tree to the Pegasus tree, since it really is statically |
|
linked into the server. |
|
|
|
36. (Roger Kumpf - HP) 27 Mar 2002 - Integrated the UserAuthProvider with |
|
the ModuleController as a control provider. Moved the UserAuthProvider |
|
from the Providers tree to the Pegasus tree. |
|
|
|
37. (Roger Kumpf - HP) 27 Mar 2002 - Integrated the |
|
ProviderRegistrationProvider with the ModuleController as a control |
|
provider. Moved the ProviderRegistrationProvider to the Pegasus |
|
ControlProviders directory. Obsoleted and removed the |
|
Server/ConfigurationManager class and files. |
|
|
|
38. (KS) 27 march 2002 - Modifications to common functions and the compiler to |
|
extend the processing of class creation and correct the flavors and their |
|
use. This allows flavors to be inherited with rules for override, etc. |
|
|
|
|
|
------------------------------------------------------------------- |
|
Version 1.06 working towards 1.1 Started 13 December 2001 |
|
|
|
1. Merged back to Main branch. All general development will be in main branch |
|
in the future with releases in side branches. Special side developments |
|
may temporarily be in side branches. |
|
Changed cimversion to 1.06. We will do 1.1 based on functionality. |
|
|
|
2. (Karl) 18 December 2001 - Added new directory repositories where repository |
|
implementations will be kept to separate them from the |
|
repository interface defintion. Initial implementation is genericfile |
|
which is the current file based repository. |
|
|
|
Added new build variable RMREPOSITORY which is a generic MAKE command |
|
to remove an existing repository. It simply substitutes for the RMDIRHIER |
|
command at this point but we will make this a generic part of system |
|
in the future. |
|
|
|
3. (Roger Kumpf - HP) 18 Dec 2001 - Updated the CIMOperationRequestDecoder |
|
to check that all required parameters for intrinsic methods are |
|
present. If a required parameter is missing, a CIM_ERR_INVALID_PARAMETER |
|
exception is thrown. Also added checks for duplicate parameters in the |
|
intrinsic methods. If a parameter is specified more than once, a |
|
CIM_ERR_INVALID_PARAMETER exception is thrown. |
|
|
|
4. (Nag Boranna - HP) 14 Jan 2002 - Created CIMOperationRequestAuthorizer queue |
|
and moved Authorization verification code from CIMOperationRequestDecoder |
|
queue to this new queue. Modified CIMServer.cpp to create |
|
CIMOperationRequestAuthorizer queue only when authorization is enabled. |
|
Also modified CIMRequestMessagesin CIMMessage.h to include userName to make |
|
it available to the CIMOperationRequestDispatcher. |
|
|
|
5. (Mary Hinton - Jan 17, 2002) Fixed the problem with the CIMserver when it |
|
runs as a Windows service. The work thread was exiting instead of running |
|
forever. The problem was noticed when the TestClient program and CIMserver |
|
service were both running. The service wasn't accessible to the TestClient |
|
program. |
|
|
|
6. (Nitin Upasani - Jan 25, 2002) Operations on CIM_IndicationSubscription, |
|
CIM_IndicationHandlerCIMXML and CIM_IndicationFilter classes will be now processed |
|
in new queue, IndicationService which will get invoked from dispatcher. |
|
CIM_CREATE_INSTANCE_REQUEST_MESSAGE |
|
CIM_MODIFY_INSTANCE_REQUEST_MESSAGE |
|
CIM_DELETE_INSTANCE_REQUEST_MESSAGE |
|
CIM_GET_INSTANCE_REQUEST_MESSAGE |
|
CIM_ENUMERATE_INSTANCES_REQUEST_MESSAGE |
|
CIM_ENUMERATE_INSTANCE_NAMES_REQUEST_MESSAGE |
|
|
|
This new service will also take care of processing the indications on receiving |
|
CIM_PROCESS_INDICATION_REQUEST_MESSAGE. This message should come from |
|
IndicationProvider or some other mechanism which is not yet clear. |
|
|
|
IndicationService will also receive following messages from PG_ProviderRegistration |
|
when a new IndicationProvider will get registered. |
|
CIM_NOTIFY_PROVIDER_REGISTRATION_REQUEST_MESSAGE |
|
CIM_NOTIFY_PROVIDER_TERMINATION_REQUEST_MESSAGE |
|
|
|
I had also defined new Indication Provider APIs, enableIndication, disableIndication |
|
and modifyIndication with more parameters passed and eventually planning to terminate |
|
old APIs (provideIndication, cancelIndication and updateIndication). Also there is a |
|
plan to implement one more call as startIndication and will be done soon. |
|
|
|
There are three new test programs in IndicationService directory, which will create |
|
Filter, Indication and Subscription instances using IndicationService. |
|
|
|
Also modified sample IndicationProvider code with the new APIs introduced. |
|
|
|
------------------------------------------------------------------------- |
|
|
Version 1.1.1 - 3 August 2001 - Development Branch (Work in Progress) | Version 1.1.1 - 3 August 2001 - Development Branch (Work in Progress) |
current working dev branch of build | current working dev branch of build |
| |
|
--------------------------------------------------------------------------- |
|
Version 1.1 - July 2001 Development branch (Work in PRogress) |
|
|
|
1. (Mike Brasher) Fixed bug with XML generation (was not generating |
|
PARAMETER.REFERENCE constructs for references). |
|
|
|
2. (Mike Brasher) Reworked server communication into new module scheme. |
|
======= |
1. (Karl) 6 Aug - extend ToMof functions. The MOF for a class can now be | 1. (Karl) 6 Aug - extend ToMof functions. The MOF for a class can now be |
seen as part of CGIclient class displays. | seen as part of CGIclient class displays. |
| |
|
|
Created new class SignalHandler that allow registration, activation and | Created new class SignalHandler that allow registration, activation and |
deactivation of signal handler functions (Linux only !). | deactivation of signal handler functions (Linux only !). |
| |
22. (Nitin Upasani - HP) 27 Sep 2001 - Modification of ExportServer and ExportClient |
22. (Nitin Upasani - HP) 27 Sep 2001 - Modification of ExportServer and |
to support ExportIndication. DisplayConsumer, a sample consumer is added which |
ExportClient to support ExportIndication. DisplayConsumer, a sample |
will consume (by displaying on screen) the indication exported by |
consumer is added which will consume (by displaying on screen) the |
CIMExportRequestDispatcher. This complete implementation is based on |
indication exported by CIMExportRequestDispatcher. This complete |
CIM_EXPORT_INDICATION_REQUEST and RESPONSE messages. CIMMessage.h, Message.cpp |
implementation is based on CIM_EXPORT_INDICATION_REQUEST and |
and Message.h files are modified to implement above messages. |
RESPONSE messages. CIMMessage.h, Message.cpp and Message.h files |
|
are modified to implement above messages. |
XmlIndicationDispatcher test program is modified to test complete operation. |
|
It now creates a consumer, handler and indication instance and then calls |
XmlIndicationDispatcher test program is modified to test complete |
CIMExportRequestDispatcher to export the indication to consumer. This |
operation. It now creates a consumer, handler and indication |
program needs src/Pegasus/Server/tests/XmlIndicationDispatcher/TestSoftwarePkg.mof |
instance and then calls CIMExportRequestDispatcher to export the |
and Schemas/Pegasus/PG_ConsumerRegistration.mof files to be loaded in the repository |
indication to consumer. This program needs |
to complete the test successfully. This test program also needs Handler qualifier |
src/Pegasus/Server/tests/XmlIndicationDispatcher/TestSoftwarePkg.mof |
defined in repository and modify CIM_Event25.mof for CIM_IndicationHandlerXMLHTTP |
and Schemas/Pegasus/PG_ConsumerRegistration.mof files to be loaded |
class as below: |
in the repository to complete the test successfully. This test |
|
program also needs Handler qualifier defined in repository and |
|
modify CIM_Event25.mof for CIM_IndicationHandlerXMLHTTP class as |
|
below: |
| |
//==================================================================== | //==================================================================== |
// CIM_IndicationHandlerXMLHTTP | // CIM_IndicationHandlerXMLHTTP |
|
|
ProviderTable.cpp and SystemUnix.cpp to indicate progress of loading | ProviderTable.cpp and SystemUnix.cpp to indicate progress of loading |
a provider library. | a provider library. |
| |
24. (Nitin Upasani - HP) 05 Oct 2001 - implementation of InvokeMethod interface for the |
24. (Nitin Upasani - HP) 05 Oct 2001 - implementation of InvokeMethod |
provider. InvokeMethod currently uses CIMValue as type for inParameters and |
interface for the provider. InvokeMethod currently uses CIMValue as |
outParameters, which are unable to give information about param name, type and value. |
type for inParameters and outParameters, which are unable to give |
This should be changed to CIMParamValue which will help providers to know details of |
information about param name, type and value. This should be changed |
the parameter name and type along with value passed through InvoleMethod call. |
to CIMParamValue which will help providers to know details of the |
Current implementation uses CIMParamValue as parameters while travelling through message |
parameter name and type along with value passed through InvoleMethod |
queues and converts it back to array of CIMValue before calling Provider API (which |
call. Current implementation uses CIMParamValue as parameters while |
needs to be changed later). |
travelling through message queues and converts it back to array of |
|
CIMValue before calling Provider API (which needs to be changed |
|
later). |
| |
Also added are two test programs: | Also added are two test programs: |
| |
src/Pegasus/Common/tests/ParamValue - which demonstrate use of CIMParamValue class. |
src/Pegasus/Common/tests/ParamValue - which demonstrate use of |
|
CIMParamValue class. |
| |
src/Pegasus/Client/tests/InvokeMethod - which makes call to InvokeMethod and |
src/Pegasus/Client/tests/InvokeMethod - which makes call to |
displays the return value. Current implementation assumes that provider had returned |
InvokeMethod and displays the return value. Current |
true value and outParameters (which are now hard coded in CIMOperationRequestDispatcher |
implementation assumes that provider had returned true value |
to implement functionality) which are passed as response of InvokeMethod to client. |
and outParameters (which are now hard coded in |
|
CIMOperationRequestDispatcher to implement functionality) |
|
which are passed as response of InvokeMethod to client. |
| |
25. (Nag Boranna - HP) 05 Oct 2001 - Added first level implementation of | 25. (Nag Boranna - HP) 05 Oct 2001 - Added first level implementation of |
authentication to the pegasus code. Created an Authentication Manager and |
authentication to the pegasus code. Created an Authentication Manager |
authenticator interfaces. The file based local authentication module has |
and authenticator interfaces. The file based local authentication |
been modified to implement the local authenticator interface, to generate |
module has been modified to implement the local authenticator |
the challenge for the unauthorized requests and to verify the authentication. |
interface, to generate the challenge for the unauthorized requests |
A skeleton program has been created for the Basic Authenticator. This code is |
and to verify the authentication. |
in the Security/Authentication directory which is not yet linked into the build. |
|
|
A skeleton program has been created for the Basic Authenticator. |
26. (Nitin Upasani - HP) 08 Oct 2001 - Changes to Operation and Export Decoders. Earlier |
This code is in the Security/Authentication directory which is not |
decoders were sending requests and responses before finishing complete Xml parse. |
yet linked into the build. |
This was prone to send request/response even the Xml is wrong after the MethodCall. |
|
New changes collects the Message* as return value from the appropriate functions |
26. (Nitin Upasani - HP) 08 Oct 2001 - Changes to Operation and Export |
while parsing the Xml and sends on _outputQueue only when Xml is parsed successfully. |
Decoders. Earlier decoders were sending requests and responses |
|
before finishing complete Xml parse. This was prone to send |
27. (Nag Boranna - HP) 11 Oct 2001 - Modified ProviderModule.cpp to fix the problem with |
request/response even the Xml is wrong after the MethodCall. |
constructing provider name and loading the providers for unix platforms. Also moved |
New changes collects the Message* as return value from the |
the shared library name construction (appending .sl or .so) from |
appropriate functions while parsing the Xml and sends on |
CIMOperationRequestDispatcher.cpp/SystemUnix.cpp to ProviderModule.cpp and included |
_outputQueue only when Xml is parsed successfully. |
it in a method that returns provider file path name. |
|
|
27. (Nag Boranna - HP) 11 Oct 2001 - Modified ProviderModule.cpp to |
28. (Nitin Upasani - HP) 12 Oct 2001 - Implementation of SNMP Indication Handler. |
fix the problem with constructing provider name and loading the |
This handler extracts MappingStrings qualifier from class definition and converts it |
providers for unix platforms. Also moved the shared library name |
into SNMP specific trap data. The trap structure is defined in a abstract class in |
construction (appending .sl or .so) from |
snmpDeliverTrap.h file. Every one has his or her own SNMP agent, which will talk with |
CIMOperationRequestDispatcher.cpp/SystemUnix.cpp to |
master agent to deliver the trap or may have some other mechanism. Extending |
ProviderModule.cpp and included it in a method that returns |
snmpDeliverTrap class and deliverTrap method will help to implement specific trap |
provider file path name. |
delivery mechanism. |
|
|
28. (Nitin Upasani - HP) 12 Oct 2001 - Implementation of SNMP Indication |
|
Handler. This handler extracts MappingStrings qualifier from class |
|
definition and converts it into SNMP specific trap data. The trap |
|
structure is defined in a abstract class in snmpDeliverTrap.h file. |
|
Every one has his or her own SNMP agent, which will talk with master |
|
agent to deliver the trap or may have some other mechanism. |
|
Extending snmpDeliverTrap class and deliverTrap method will help to |
|
implement specific trap delivery mechanism. |
| |
29. (Yi Zhou - HP) 09 Oct 2001 - Changed cimconfig to allow setting property to | 29. (Yi Zhou - HP) 09 Oct 2001 - Changed cimconfig to allow setting property to |
be NULL. Also, if -u -p specified in the cimconfig, instead of updating | be NULL. Also, if -u -p specified in the cimconfig, instead of updating |
|
|
string. Also modified the XmlIO trace code to use the new interface. | string. Also modified the XmlIO trace code to use the new interface. |
Changed the config file defaults for tracing. | Changed the config file defaults for tracing. |
| |
31. (Jenny Yu - HP) 29 Oct 2001 - Fixed CIMReference constructor to allow |
31. (Rudy Schuet - Compaq) 28 Oct 2001 - Added "make" support for Compaq |
|
NonStop platform (NSK) in directory pegasus/mak. The following files |
|
were added: platform_NSK_NONSTOP_NMCPLUS.mak, objects-nsk.mak, |
|
library-nsk.mak, config-nsk.mak, program-nsk.mak, program-windows.mak, |
|
program-unix.mak. The original program.mak which previously covered |
|
all platforms was split into platform-specific make files, and now |
|
only contains conditionals. Files config.mak, objects.mak, and |
|
library.mak were changed to include the NSK files. |
|
File platform_NSK_NONSTOP_NMCPLUS.mak includes config-nsk.mak. |
|
|
|
32. (Jenny Yu - HP) 29 Oct 2001 - Fixed CIMReference constructor to allow |
commas (,) in the string values of key properties. | commas (,) in the string values of key properties. |
| |
32. (Karl Schopmeyer 30 October 2001- Move the repository load to CIM schema 2.6 |
33. (Karl Schopmeyer) 30 October 2001- Move the repository load to CIM schema 2.6 |
|
|
|
34. (Rudy Schuet - Compaq) 30 Oct 2001 - Fixed a problem in |
|
pegasus/mak/program-windows.mak that prevented program builds for |
|
the windows platform (related to change from 28 Oct). Replaced |
|
leading whitespace in front of commands with tabs as required |
|
in make files. |
|
|
|
35. (K Schopmeyer) 2 Nov 2001 - Temporarily moved repository back to CIM25 |
|
because getting an error in 26 |
|
|
|
35. (Roger Kumpf - HP) 30 Oct 2001 - Association classes have keys |
|
whose types are references. These reference values must be |
|
treated specially in the XML encoding, using the VALUE.REFERENCE |
|
tag structure. |
|
|
|
Pegasus had been passing reference values simply as String values. |
|
For example, EnumerateInstanceNames returned KEYVALUEs of string |
|
type rather than VALUE.REFERENCEs. |
|
|
|
I've modified the XmlReader::getKeyBindingElement() and |
|
CIMReference::instanceNameToXml() methods to read and write the |
|
XML in the proper format. However, making that change required |
|
that a CIMReference object be able to distinguish between a key |
|
of String type and a key of reference type. |
|
|
|
I've modified the String format of CIMReferences slightly to |
|
allow efficient processing of references whose keys are also of |
|
reference type. The "official" form uses the same encoding for |
|
key values of String type and of reference type, and so it |
|
would be necessary to retrieve the class definition and look up |
|
the types of the key properties to determine how to treat the |
|
key values. This is clearly too inefficient for internal |
|
transformations between CIMReferences and String values. |
|
|
|
The workaround is to encode a 'R' at the beginning of the value |
|
for a key of reference type (before the opening '"'). This allows |
|
the parser to know a priori whether the key is of String or |
|
reference type. |
|
|
|
In this example: |
|
|
|
MyClass.Key1="StringValue",Key2=R"RefClass.KeyA="StringA",KeyB=10" |
|
|
|
Property Key1 of class MyClass is of String type, and so it gets |
|
the usual encoding. Key2 is a reference property, so the extra 'R' |
|
is inserted before its encoded value. Note that this algorithm is |
|
recursive, such that RefClass could include KeyC of reference type, |
|
which would also get encoded with the 'R' notation. |
|
|
|
The toString() method inserts the 'R' to provide symmetry. A new |
|
KeyBinding type (REFERENCE) has been defined to denote keys in a |
|
CIMReference that are of reference type. This KeyBinding type must |
|
be used appropriately for CIMReference::ttoString() to behave |
|
correctly. |
|
|
|
The files that have been modified to make this change are |
|
CIMReference.h, CIMReference.cpp, and CIMInstanceRep.cpp. |
|
|
|
A result of this change is that instances names in the instance |
|
repository will include this extra 'R' character. Thus, you will |
|
need to repopulate your repository when you download the latest |
|
CIMOM version. |
|
|
|
Note that for user-facing uses of the String encoding of instance |
|
names (such as might appear in MOF for static association |
|
instances or in the CGI client), this solution is non-standard and |
|
therefore unacceptable. It is likely that these points will need |
|
to process the more expensive operation of retrieving the class |
|
definition to determine the key property types. |
|
|
|
36. (Sushma Fernandes - HP) Modified tracer to return invalid components |
|
in case of error in setting trace components. Modified the property owner |
|
init and update methods. Submitted the pegasus/mak/Buildmakefile with |
|
cleanbuild, rebuild and trace configuration options. |
|
|
|
37. (Yi Zhou - HP) 05 Nov 2001 - Fixed createInstance to return a CIMReference |
|
(instanceName). |
|
|
|
38. (Roger Kumpf - HP) 08 Nov 2001 - Implemented encoding/decoding of |
|
GetProperty/SetProperty/EnumerateInstances request/response messages. |
|
Added encoding and decoding of PropertyList parameters on all |
|
relevant intrinsic methods. |
|
|
|
39. (Markus Mueller - IBM) 09 Nov 2001 - Added Associator calls to CIMBase |
|
ProviderFacade.cpp; fixed Provider unloading in CIMProviderManager.cpp |
|
|
|
40. (Rudy Schuet - Compaq) 12 Nov 2001 - Common module: added the following |
|
files for nsk platform support: TraceFileHandlerNsk.cpp, ThreadNsk.cpp, |
|
TCPChannelNsk.cpp, SystemNsk.cpp, ServiceNsk.cpp, SelectorNsk.cpp, |
|
IPCNsk.cpp, DirNsk.cpp. Most of these files (with the exception of |
|
SystemNsk.cpp) contain stubs. The associated control files |
|
(TraceFileHandler.cpp, Thread.cpp, etc) have been updated to include |
|
nsk platform links. |
|
|
|
41. (Roger Kumpf - HP) 14 Nov 2001 - Changed the behavior of the CIMValue |
|
toString() method for CIMValues of String type. The old behavior |
|
returned an XML encoding of the String with special characters |
|
replaced by their UTF-8 equivalents. For example, a CIMValue of a"b |
|
would be returned as a"b. The new behavior just returns the |
|
String value directly with no translation. (Note that |
|
CIMValue.toXml() may still be used to get the XML-encoded value.) |
|
|
|
This change was necessary in part to correct the behavior of the |
|
repository. CreateInstance stores the instance name returned by |
|
CIMInstance.getInstanceName(), which is built using calls to |
|
CIMValue.toString(). GetInstance searches for the instance name |
|
without UTF-8 encoding of special characters. For GetInstance to |
|
be successful, CreateInstance must have stored the instance name |
|
in that same form, without special character encoding. |
|
|
|
42. (Roger Kumpf - HP) 15 Nov 2001 - Added a toXml(void) method to |
|
the CIMValue class. Eliminated improper use of CIMValue.toString(), |
|
often replacing with CIMValue.get(String&) or CIMValue.toXml(). |
|
Also added some error handling in the indication handlers. |
|
|
|
43. (Sushma Fernandes - HP) 16 Nov 2001 - Added a function |
|
localObjectPathtoXml(Array<Sint8>& out) to the CIMReference class |
|
to handle local instance path and local classpath. Modified the |
|
CIMOperationRequestDecoder to handle <LOCALCLASSPATHELEMENT ...>. |
|
Changed the CIMOperationRequestEncoder to call the localObjectPathtoXml. |
|
|
|
44. (Roger Kumpf - HP) 19 Nov 2001 - Added a CIMNamedInstance class |
|
to hold the argument to ModifyInstance and the return values |
|
from EnumerateInstances. The client and provider APIs need to |
|
be updated to use this class. |
|
|
|
45. (Sushma Fernandes - HP) 19 Nov 2001 - Added the cimuser command line |
|
source files. This CLI allows addition, modification, removal and listing |
|
of CIM users. The CLI is not linked to the main makefile as the Provider |
|
functionality is yet to be implemented. Added the function |
|
String getPassword(char* prompt) to the System.h and cpp files. |
|
|
|
46. (Nag Boranna - HP) 20 Nov 2001 - Implemented Authentication code on |
|
the server to challenge the unauthorized requests, authenticate |
|
the challenge responses, and verify the subsequent authorized requests. |
|
Implemented authentication mechanism on the Client api to send |
|
responses to the challenges from the server. Current implementation |
|
supports only 'local' authentication mechanism. |
|
|
|
47. (Roger Kumpf - HP) 20 Nov 2001 - Commited the following set of changes: |
|
|
|
- Changed the return value of EnumerateInstances from Array<CIMInstance> |
|
to Array<CIMNamedInstance> |
|
- Changed the parameter to ModifyInstance from CIMInstance to |
|
CIMNamedInstance |
|
- Added an optional PropertyList parameter to ModifyInstance |
|
- Changed all handling of PropertyList parameters to use the |
|
CIMPropertyList class instead of Array<String> |
|
|
|
Each of these changes was required to comply with the DMTF specification. |
|
|
|
These changes were made throughout the system except for in the provider |
|
API. For now, the CIMProviderHandle and CIMBaseProviderHandle hide the |
|
differences from providers, so older providers will continue to function. |
|
However, this means that clients can not yet take advantage of the added |
|
functionality. |
|
|
|
When the provider API is updated, the following changes will be visible: |
|
|
|
- Providers will get a PropertyList parameter to ModifyInstance which |
|
they are required to respect. Providers that can not process the |
|
PropertyList must throw a NOT_SUPPORTED exception whenever the |
|
list is not null. Clients can take advantage of this change by |
|
issuing a ModifyInstance request against a selected set of |
|
properties in an instance, rather than being required to replace |
|
the entire instance. |
|
|
|
- Providers will be required to return instance names along with |
|
instances in the EnumerateInstances method. Clients will receive |
|
these instance names, as the standard dictates. |
|
|
|
- Providers will receive a CIMPropertyList argument containing the |
|
PropertyList instead of an Array<String>. This change allows |
|
providers to distinguish between an empty list and a null list. |
|
|
|
Note that the repository also does not yet handle the PropertyList in |
|
ModifyInstance correctly. |
|
|
|
48. (Roger Kumpf - HP) 21 Nov 2001 - I have updated the Provider2 instance |
|
provider API to match the changes made to the EnumerateInstances and |
|
ModifyInstance operations. These changes were made to comply with |
|
the DMTF specification. |
|
|
|
The original Provider API has not been updated, and I have no |
|
plans to do so. Providers written to the original API will |
|
continue to function, but they will not have the opportunity |
|
to take advantage of the features that have been added. |
|
|
|
The significant changes to the Provider2 API are: |
|
|
|
- Providers will get a PropertyList parameter to ModifyInstance which |
|
they are required to respect. Providers that can not process the |
|
PropertyList must throw a NOT_SUPPORTED exception whenever the |
|
list is not null. Clients can take advantage of this change by |
|
issuing a ModifyInstance request against a selected set of |
|
properties in an instance, rather than being required to replace |
|
the entire instance. |
|
|
|
- Providers will get an IncludeQualifiers parameter to ModifyInstance |
|
which they are required to respect. If IncludeQualifiers is |
|
false, the qualifiers on the modified instance provided must not |
|
be used to update the instance. |
|
|
|
- Providers will be required to return instance names along with |
|
instances in the EnumerateInstances method. Clients will receive |
|
these instance names, as the standard dictates. |
|
|
|
The providers that are in the Pegasus build have all been updated. |
|
However, whenever the PropertyList is not null, the providers throw |
|
a NOT_SUPPORTED exception. |
|
|
|
49. (Rudy Schuet - Compaq) 25 NOV 2001 - To support the NSK platform, |
|
files Platform_NSK_NONSTOP_NMCPLUS.h and ConfigNsk.h were added to |
|
the Common module. File Config.h was modified to include the NSK |
|
platform and a new option PEGASUS_HAVE_NO_STD that allows compilation |
|
without the standard (std) namespace. |
|
|
|
50. (Roger Kumpf - HP) 26 Nov 2001 - Added two new configuration |
|
properties to support alternate behavior of the Pegasus repository: |
|
repositoryIsDefaultInstanceProvider and repositoryProviderName. |
|
|
|
Using the first one, the repository can be enabled/disabled as the |
|
default provider for instance (and association) operations. The default |
|
setting is "true", so the default behavior has not been changed. To |
|
disable the repository as the default instance provider, issue the |
|
following command before starting cimserver: |
|
|
|
cimconfig -s repositoryIsDefaultInstanceProvider=false -p |
|
|
|
The repositoryProviderName configuration property specifies what |
|
provider name is used to explicitly register the repository as a |
|
provider. This is necessary when the repository needs to serve |
|
instances of a class and repositoryIsDefaultInstanceProvider is set |
|
to "false". The default value is "repository". To register the |
|
repository as an instance provider for a class, add a |
|
'Provider("repository")' qualifier to the class definition. |
|
|
|
51. (Roger Kumpf - HP) 26 Nov 2001 - Added a new ServiceCIMOMHandle to |
|
pass to providers that act as services. This handle provides |
|
service providers with access to the CIMServer data structures. |
|
|
|
52. (Roger Kumpf - HP) 28 Nov 2001 - Implemented ModifyInstance in |
|
the repository so that it respects the IncludeQualifiers and |
|
PropertyList parameters. Updated SetProperty in the repository |
|
so that it uses ModifyInstance correctly. The repository now |
|
supports GetProperty and SetProperty in addition to ModifyInstance. |
|
|
|
Implemented GetProperty and SetProperty in the Dispatcher and |
|
Provider2 so that they get translated to GetInstance and |
|
ModifyInstance calls (respectively) in the provider. Providers |
|
written to the Provider2 API that correctly process the new |
|
ModifyInstance parameters will automatically support SetProperty |
|
operations. Note that GetProperty and SetProperty currently only |
|
work for String properties because of an XML encoding limitation. |
|
|
|
53. (Nag Boranna - HP, Sushma Fernandes - HP) 30 Nov 2001 - Implemented the |
|
Security components for authentication and authorization. |
|
|
|
Authentication and User Management: |
|
cimuser CLI : This CLI is used for addition, modification, removal |
|
and listing of CIM Users. The CIM user password is encrypted and stored |
|
in a file. The password file format is compatible with Apache's htpasswd |
|
generated password file. |
|
|
|
cimauth CLI implement the authorization managment functionality by letting |
|
to add/remove/list user authorizations. |
|
|
|
User Manager and User Manager Provider components implement the user |
|
management and authorization functionality. |
|
|
|
54. (Mike Brasher - BMC) 3 Dec 2001 - Added support for WQL-1. New directory |
|
under src/Pegasus/WQL which contains library and BNF. |
|
|
|
55. (Yi Zhou - HP) 03 Dec 2001 - Implemented Pegasus registration provider |
|
which does provider registration, block, unblock, and stop a provider. |
|
It also alert Subscription Service of any provider registration changes. |
|
|
|
56. (Rudy Schuet - Compaq) 04 Dec 2001 - Replaced _min macro in String.h |
|
and String.cpp with PEG_min. The _min macro caused problems on the |
|
NSK platform because of a duplicate definition in a standard file. |
|
|
|
57. (Carol Ann Krug Graves - HP) 04 Dec 2001 - Implemented Pegasus indication |
|
subscription service provider that serves as the instance provider for the |
|
CIM_IndicationSubscription, CIM_IndicationFilter and CIM_IndicationHandler |
|
classes (from CIM_Events27.mof). The service also takes appropriate action |
|
in response to startup, shutdown of the cimom, termination of a provider, |
|
or change in provider registration. |
|
|
|
58. (Jenny Yu - HP) 05 Dec 2001 - Implemented Pegasus Shutdown Service |
|
and the command line interface for shutting down cimom gracefully. |
|
For more information, refer to the CIMOM Shutdown working paper |
|
in pegasus/doc/WorkPapers/CIMOMShutdown.pdf. |
|
|
|
59. (Markus Mueller - IBM) 06 Dec 2001 - Implemented SSL support (Linux only). |
|
It consists the new classes SSL_Context, SSLSocket and MP_Socket defined |
|
in TLS.h. HTTPAcceptor and HTTPConnector are extended with an additional |
|
constructor to set a pointer to the server-, resp. client wide SSL_Context |
|
structure. The Socket field in HTTPConnection is substituted with an |
|
MP_Socket pointer, a class that is designed to hide the differences |
|
between Socket and SSLSocket. The MP_Socket (multipurpose socket) class |
|
is defined even in a non-ssl environment. |
|
How to use it in a Server or Client: |
|
1. Just create an SSL_Context once per Server/Client address space |
|
2. Construct every HTTPConnector/Acceptor with a pointer to this |
|
SSL_Context if you want to enable SSL; construct Connectors/Acceptors |
|
without SSL_Context for conventional connections. |
|
|
|
The Configuration data was extended with the boolean SSL property, and |
|
cimserver and TestClient now understand the -SSL, resp. -ssl flag. |
|
|
|
60. (Bapu Patil - HP) Updated makefiles to support HP-UX IA64 bits O.S. |
| |
--------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
Version 1.1 - July 2001 Development branch | Version 1.1 - July 2001 Development branch |
|
|
When authentication framework is defined this component may need to be | When authentication framework is defined this component may need to be |
modified to integrate with the framework. | modified to integrate with the framework. |
| |
8. (Sushma Fernandes - HP) Removed the ltoa() function call from Tracer.cpp. |
|
Added a constant to define the maximum length of uint32. |
|
|
|
--------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
Version 0.99.x (Fixes to version 0.99) in Process | Version 0.99.x (Fixes to version 0.99) in Process |
| |