1 karl 1.1 CHANGE LOG FOR PEGASUS
|
2 karl 1.59
3
4 Version 1.07 working towards 1.1 - Started 4 Feb 2002
5 Started just before cutover to the new dispatcher, etc.
6 TAG: VERSION_1_07
7
8 1. KS - Updated pegsusversion to 1.07 and tagged file.
9
|
10 sage 1.60 2. (Markus Mueller) 05 Feb 2002 - AIX support.
|
11 karl 1.59
12 -------------------------------------------------------------------
|
13 karl 1.52 Version 1.06 working towards 1.1 Started 13 December 2001
14
15 1. Merged back to Main branch. All general development will be in main branch
16 in the future with releases in side branches. Special side developments
17 may temporarily be in side branches.
18 Changed cimversion to 1.06. We will do 1.1 based on functionality.
|
19 karl 1.53
20 2. (Karl) 18 December 2001 - Added new directory repositories where repository
21 implementations will be kept to separate them from the
22 repository interface defintion. Initial implementation is genericfile
23 which is the current file based repository.
24
25 Added new build variable RMREPOSITORY which is a generic MAKE command
26 to remove an existing repository. It simply substitutes for the RMDIRHIER
27 command at this point but we will make this a generic part of system
28 in the future.
|
29 karl 1.52
|
30 kumpf 1.54 3. (Roger Kumpf - HP) 18 Dec 2001 - Updated the CIMOperationRequestDecoder
31 to check that all required parameters for intrinsic methods are
32 present. If a required parameter is missing, a CIM_ERR_INVALID_PARAMETER
33 exception is thrown. Also added checks for duplicate parameters in the
34 intrinsic methods. If a parameter is specified more than once, a
35 CIM_ERR_INVALID_PARAMETER exception is thrown.
36
|
37 kumpf 1.57 4. (Nag Boranna - HP) 14 Jan 2002 - Created CIMOperationRequestAuthorizer queue
|
38 kumpf 1.55 and moved Authorization verification code from CIMOperationRequestDecoder
39 queue to this new queue. Modified CIMServer.cpp to create
40 CIMOperationRequestAuthorizer queue only when authorization is enabled.
41 Also modified CIMRequestMessagesin CIMMessage.h to include userName to make
42 it available to the CIMOperationRequestDispatcher.
43
|
44 kumpf 1.57 5. (Mary Hinton - Jan 17, 2002) Fixed the problem with the CIMserver when it
|
45 mary 1.56 runs as a Windows service. The work thread was exiting instead of running
46 forever. The problem was noticed when the TestClient program and CIMserver
47 service were both running. The service wasn't accessible to the TestClient
48 program.
49
|
50 kumpf 1.58 6. (Nitin Upasani - Jan 25, 2002) Operations on CIM_IndicationSubscription,
51 CIM_IndicationHandlerCIMXML and CIM_IndicationFilter classes will be now processed
52 in new queue, IndicationService which will get invoked from dispatcher.
53 CIM_CREATE_INSTANCE_REQUEST_MESSAGE
54 CIM_MODIFY_INSTANCE_REQUEST_MESSAGE
55 CIM_DELETE_INSTANCE_REQUEST_MESSAGE
56 CIM_GET_INSTANCE_REQUEST_MESSAGE
57 CIM_ENUMERATE_INSTANCES_REQUEST_MESSAGE
58 CIM_ENUMERATE_INSTANCE_NAMES_REQUEST_MESSAGE
59
60 This new service will also take care of processing the indications on receiving
61 CIM_PROCESS_INDICATION_REQUEST_MESSAGE. This message should come from
62 IndicationProvider or some other mechanism which is not yet clear.
63
64 IndicationService will also receive following messages from PG_ProviderRegistration
65 when a new IndicationProvider will get registered.
66 CIM_NOTIFY_PROVIDER_REGISTRATION_REQUEST_MESSAGE
67 CIM_NOTIFY_PROVIDER_TERMINATION_REQUEST_MESSAGE
68
69 I had also defined new Indication Provider APIs, enableIndication, disableIndication
70 and modifyIndication with more parameters passed and eventually planning to terminate
71 kumpf 1.58 old APIs (provideIndication, cancelIndication and updateIndication). Also there is a
72 plan to implement one more call as startIndication and will be done soon.
73
74 There are three new test programs in IndicationService directory, which will create
75 Filter, Indication and Subscription instances using IndicationService.
76
77 Also modified sample IndicationProvider code with the new APIs introduced.
|
78 mary 1.56
|
79 karl 1.52 -------------------------------------------------------------------------
|
80 karl 1.1
|
81 mike 1.51 Version 1.1.1 - 3 August 2001 - Development Branch (Work in Progress)
82 current working dev branch of build
|
83 mike 1.36
|
84 karl 1.49 ---------------------------------------------------------------------------
85 Version 1.1 - July 2001 Development branch (Work in PRogress)
86
|
87 mike 1.50 1. (Mike Brasher) Fixed bug with XML generation (was not generating
88 PARAMETER.REFERENCE constructs for references).
89
90 2. (Mike Brasher) Reworked server communication into new module scheme.
|
91 mike 1.51 =======
92 1. (Karl) 6 Aug - extend ToMof functions. The MOF for a class can now be
93 seen as part of CGIclient class displays.
94
95 2. (Karl) 7 Aug - Update CIM25 Schema from the "preliminary" version
96 to the final version in Schemas\CIM25. This included minor
97 corrections, etc and a couple of file changes. This is the
98 official final CIM 25 schema relesed by the DMTF. This change
99 should not affect any current work.
100 3. (Karl) 7 Aug 2001 - Added CIM Schema 2.6 (preliminary) to the Schemas
101 directorys. Note however that today the make repository still
102 loads the 2.5 schema.
103
104 4. (Karl) 8 Aug 2001 - Change cimmofparser.cpp to put header and trailers
105 on XML output.
106
107 5. (Denise Eckstein - HP) 13 Aug 2001 - Fixed an HP-UX compile problem
108 in various src/utils/mu commands (MoveCmd.cpp, PrependCmd.cpp, RmCmd.cpp,
109 RmDirHierCmd.cpp, StripCmd.cpp, TouchCmd.cpp). aCC scopes variable
110 declarations in for loop initializers outside the loop, so multiple
111 "for (int i=0; i<10; i++);" statements cause a compile error.
112 mike 1.51
113 6. (Nag Boranna - HP) 15 Aug 2001 - Modified Config framework to remove
114 dependency on the config files at the start of the cimserver. Now the
115 cimserver will use in-memory default values in the absence of config files
116 and command line options. Fixed a few defects in the config framework that
117 were causing cimom to crash under certain conditions. Changed the config
118 provider class name to 'PG_ConfigSetting' in the mof file and modified
119 provider implementation files accordingly. Also modified the config CLI
120 to show user friendly error/status messages.
121
122 7. (Carol Ann Krug Graves - HP) 16 Aug 2001 - Fixed a bug in wbemexec CLI
123 (reported incorrect line number on error in XML request if input redirected).
124 Enhanced the -d debug command line option to allow more flexibility in
125 generating debug output.
126
127 8. Karl 17 Aug 2001) - Extended CIMMOF compiler to put pegasus comment line in
128 xml when it generates xml output.
129
130 9. (Roger Kumpf - HP) 20 Aug 2001 - Combine instances of each class into
131 a common file to reduce the number of files required by the default
132 repository implementation.
133 mike 1.51
134 10. (Mike Brasher) - Fixed minor bug in repository implementation.
135
136 11. (Mike Brasher) - Committed fix to missing PARAMETER.REFERENCE XML element.
137
138 12. (Mike Brasher) - Committed rework of server into queue approach.
139
140 13. (Mike Brasher) - New webserver and webclient examples.
141
142 14. (Sushma Fernandes - HP) 21 Aug 2001 - Fixed a bug that was creating an empty file when trace was not enabled. Changed the Tracer test program's executable file name to TracerTest instead of Tracer.
143
144 15. (Mike Brasher) - Initial work on refactorying client into modules.
145 CIMOperationRequestEncoder and partial CIMOperationResponseDecoder.
146
147 16. (Mike Brasher) - queue-based clients now complete.
148
149 17. (Jim Chou - HP) 12 Sep 2001 - Initial contribution of wbemexec test directory and make infrastructure. This submittal also includes an initial set of test scripts.
150
151 18. (Markus Mueller - IBM) 13 Sep 2001 - Initial support for z/OS on z/Series, the successor of OS/390 and MVS.
152
153 19. (Warren Otsuka - HP) 14 Sep 2001 - Implementation of servlet web server
154 mike 1.51 interface to CIMServer.This is for the PEGASUS CIM Server to coexist with
155 a web server. See doc/Servlet for more information.
156
157 20. (Yi Zhou - HP) 20 Sep 2001 - Added tracing in files
158 CIMOperationRequestDecoder.cpp and CIMOperationResponseEncoder.cpp so XML
159 input and output can be written in a trace file.
160
161 21. (Markus Mueller - IBM) 25 Sep 2001 - Initial Signal Handler support
162 Created new class SignalHandler that allow registration, activation and
163 deactivation of signal handler functions (Linux only !).
164
165 22. (Nitin Upasani - HP) 27 Sep 2001 - Modification of ExportServer and
166 ExportClient to support ExportIndication. DisplayConsumer, a sample
167 consumer is added which will consume (by displaying on screen) the
168 indication exported by CIMExportRequestDispatcher. This complete
169 implementation is based on CIM_EXPORT_INDICATION_REQUEST and
170 RESPONSE messages. CIMMessage.h, Message.cpp and Message.h files
171 are modified to implement above messages.
172
173 XmlIndicationDispatcher test program is modified to test complete
174 operation. It now creates a consumer, handler and indication
175 mike 1.51 instance and then calls CIMExportRequestDispatcher to export the
176 indication to consumer. This program needs
177 src/Pegasus/Server/tests/XmlIndicationDispatcher/TestSoftwarePkg.mof
178 and Schemas/Pegasus/PG_ConsumerRegistration.mof files to be loaded
179 in the repository to complete the test successfully. This test
180 program also needs Handler qualifier defined in repository and
181 modify CIM_Event25.mof for CIM_IndicationHandlerXMLHTTP class as
182 below:
183
184 //====================================================================
185 // CIM_IndicationHandlerXMLHTTP
186 //====================================================================
187 [Description (
188 "CIM_IndicationHandlerXMLHTTP describes the destination for "
189 "Indications to be delivered via HTTP, using a cimXML "
190 "representation."), Handler ("CIMxmlIndicationHandler") ]
191
192 23. (Sushma Fernandes - HP) 27 Sep 2001 - Added tracing code in
193 ProviderTable.cpp and SystemUnix.cpp to indicate progress of loading
194 a provider library.
195
196 mike 1.51 24. (Nitin Upasani - HP) 05 Oct 2001 - implementation of InvokeMethod
197 interface for the provider. InvokeMethod currently uses CIMValue as
198 type for inParameters and outParameters, which are unable to give
199 information about param name, type and value. This should be changed
200 to CIMParamValue which will help providers to know details of the
201 parameter name and type along with value passed through InvoleMethod
202 call. Current implementation uses CIMParamValue as parameters while
203 travelling through message queues and converts it back to array of
204 CIMValue before calling Provider API (which needs to be changed
205 later).
206
207 Also added are two test programs:
208
209 src/Pegasus/Common/tests/ParamValue - which demonstrate use of
210 CIMParamValue class.
211
212 src/Pegasus/Client/tests/InvokeMethod - which makes call to
213 InvokeMethod and displays the return value. Current
214 implementation assumes that provider had returned true value
215 and outParameters (which are now hard coded in
216 CIMOperationRequestDispatcher to implement functionality)
217 mike 1.51 which are passed as response of InvokeMethod to client.
218
219 25. (Nag Boranna - HP) 05 Oct 2001 - Added first level implementation of
220 authentication to the pegasus code. Created an Authentication Manager
221 and authenticator interfaces. The file based local authentication
222 module has been modified to implement the local authenticator
223 interface, to generate the challenge for the unauthorized requests
224 and to verify the authentication.
225
226 A skeleton program has been created for the Basic Authenticator.
227 This code is in the Security/Authentication directory which is not
228 yet linked into the build.
229
230 26. (Nitin Upasani - HP) 08 Oct 2001 - Changes to Operation and Export
231 Decoders. Earlier decoders were sending requests and responses
232 before finishing complete Xml parse. This was prone to send
233 request/response even the Xml is wrong after the MethodCall.
234 New changes collects the Message* as return value from the
235 appropriate functions while parsing the Xml and sends on
236 _outputQueue only when Xml is parsed successfully.
237
238 mike 1.51 27. (Nag Boranna - HP) 11 Oct 2001 - Modified ProviderModule.cpp to
239 fix the problem with constructing provider name and loading the
240 providers for unix platforms. Also moved the shared library name
241 construction (appending .sl or .so) from
242 CIMOperationRequestDispatcher.cpp/SystemUnix.cpp to
243 ProviderModule.cpp and included it in a method that returns
244 provider file path name.
245
246 28. (Nitin Upasani - HP) 12 Oct 2001 - Implementation of SNMP Indication
247 Handler. This handler extracts MappingStrings qualifier from class
248 definition and converts it into SNMP specific trap data. The trap
249 structure is defined in a abstract class in snmpDeliverTrap.h file.
250 Every one has his or her own SNMP agent, which will talk with master
251 agent to deliver the trap or may have some other mechanism.
252 Extending snmpDeliverTrap class and deliverTrap method will help to
253 implement specific trap delivery mechanism.
254
255 29. (Yi Zhou - HP) 09 Oct 2001 - Changed cimconfig to allow setting property to
256 be NULL. Also, if -u -p specified in the cimconfig, instead of updating
257 property value to be default in the plan file, remove the property from the
258 plan file. Converted ConfigSettingProvider to use provider2 library.
259 mike 1.51
260 30. (Sushma Fernandes - HP) 24 Oct 2001 - Added an interface to the tracer
261 to allow tracing of a specific number of bytes in a given
262 string. Also modified the XmlIO trace code to use the new interface.
263 Changed the config file defaults for tracing.
264
265 31. (Rudy Schuet - Compaq) 28 Oct 2001 - Added "make" support for Compaq
266 NonStop platform (NSK) in directory pegasus/mak. The following files
267 were added: platform_NSK_NONSTOP_NMCPLUS.mak, objects-nsk.mak,
268 library-nsk.mak, config-nsk.mak, program-nsk.mak, program-windows.mak,
269 program-unix.mak. The original program.mak which previously covered
270 all platforms was split into platform-specific make files, and now
271 only contains conditionals. Files config.mak, objects.mak, and
272 library.mak were changed to include the NSK files.
273 File platform_NSK_NONSTOP_NMCPLUS.mak includes config-nsk.mak.
274
275 32. (Jenny Yu - HP) 29 Oct 2001 - Fixed CIMReference constructor to allow
276 commas (,) in the string values of key properties.
277
278 33. (Karl Schopmeyer) 30 October 2001- Move the repository load to CIM schema 2.6
279
280 mike 1.51 34. (Rudy Schuet - Compaq) 30 Oct 2001 - Fixed a problem in
281 pegasus/mak/program-windows.mak that prevented program builds for
282 the windows platform (related to change from 28 Oct). Replaced
283 leading whitespace in front of commands with tabs as required
284 in make files.
285
286 35. (K Schopmeyer) 2 Nov 2001 - Temporarily moved repository back to CIM25
287 because getting an error in 26
288
289 35. (Roger Kumpf - HP) 30 Oct 2001 - Association classes have keys
290 whose types are references. These reference values must be
291 treated specially in the XML encoding, using the VALUE.REFERENCE
292 tag structure.
293
294 Pegasus had been passing reference values simply as String values.
295 For example, EnumerateInstanceNames returned KEYVALUEs of string
296 type rather than VALUE.REFERENCEs.
297
298 I've modified the XmlReader::getKeyBindingElement() and
299 CIMReference::instanceNameToXml() methods to read and write the
300 XML in the proper format. However, making that change required
301 mike 1.51 that a CIMReference object be able to distinguish between a key
302 of String type and a key of reference type.
303
304 I've modified the String format of CIMReferences slightly to
305 allow efficient processing of references whose keys are also of
306 reference type. The "official" form uses the same encoding for
307 key values of String type and of reference type, and so it
308 would be necessary to retrieve the class definition and look up
309 the types of the key properties to determine how to treat the
310 key values. This is clearly too inefficient for internal
311 transformations between CIMReferences and String values.
312
313 The workaround is to encode a 'R' at the beginning of the value
314 for a key of reference type (before the opening '"'). This allows
315 the parser to know a priori whether the key is of String or
316 reference type.
317
318 In this example:
319
320 MyClass.Key1="StringValue",Key2=R"RefClass.KeyA="StringA",KeyB=10"
321
322 mike 1.51 Property Key1 of class MyClass is of String type, and so it gets
323 the usual encoding. Key2 is a reference property, so the extra 'R'
324 is inserted before its encoded value. Note that this algorithm is
325 recursive, such that RefClass could include KeyC of reference type,
326 which would also get encoded with the 'R' notation.
327
328 The toString() method inserts the 'R' to provide symmetry. A new
329 KeyBinding type (REFERENCE) has been defined to denote keys in a
330 CIMReference that are of reference type. This KeyBinding type must
331 be used appropriately for CIMReference::ttoString() to behave
332 correctly.
333
334 The files that have been modified to make this change are
335 CIMReference.h, CIMReference.cpp, and CIMInstanceRep.cpp.
336
337 A result of this change is that instances names in the instance
338 repository will include this extra 'R' character. Thus, you will
339 need to repopulate your repository when you download the latest
340 CIMOM version.
341
342 Note that for user-facing uses of the String encoding of instance
343 mike 1.51 names (such as might appear in MOF for static association
344 instances or in the CGI client), this solution is non-standard and
345 therefore unacceptable. It is likely that these points will need
346 to process the more expensive operation of retrieving the class
347 definition to determine the key property types.
348
349 36. (Sushma Fernandes - HP) Modified tracer to return invalid components
350 in case of error in setting trace components. Modified the property owner
351 init and update methods. Submitted the pegasus/mak/Buildmakefile with
352 cleanbuild, rebuild and trace configuration options.
353
354 37. (Yi Zhou - HP) 05 Nov 2001 - Fixed createInstance to return a CIMReference
355 (instanceName).
356
357 38. (Roger Kumpf - HP) 08 Nov 2001 - Implemented encoding/decoding of
358 GetProperty/SetProperty/EnumerateInstances request/response messages.
359 Added encoding and decoding of PropertyList parameters on all
360 relevant intrinsic methods.
361
362 39. (Markus Mueller - IBM) 09 Nov 2001 - Added Associator calls to CIMBase
363 ProviderFacade.cpp; fixed Provider unloading in CIMProviderManager.cpp
364 mike 1.51
365 40. (Rudy Schuet - Compaq) 12 Nov 2001 - Common module: added the following
366 files for nsk platform support: TraceFileHandlerNsk.cpp, ThreadNsk.cpp,
367 TCPChannelNsk.cpp, SystemNsk.cpp, ServiceNsk.cpp, SelectorNsk.cpp,
368 IPCNsk.cpp, DirNsk.cpp. Most of these files (with the exception of
369 SystemNsk.cpp) contain stubs. The associated control files
370 (TraceFileHandler.cpp, Thread.cpp, etc) have been updated to include
371 nsk platform links.
372
373 41. (Roger Kumpf - HP) 14 Nov 2001 - Changed the behavior of the CIMValue
374 toString() method for CIMValues of String type. The old behavior
375 returned an XML encoding of the String with special characters
376 replaced by their UTF-8 equivalents. For example, a CIMValue of a"b
377 would be returned as a"b. The new behavior just returns the
378 String value directly with no translation. (Note that
379 CIMValue.toXml() may still be used to get the XML-encoded value.)
380
381 This change was necessary in part to correct the behavior of the
382 repository. CreateInstance stores the instance name returned by
383 CIMInstance.getInstanceName(), which is built using calls to
384 CIMValue.toString(). GetInstance searches for the instance name
385 mike 1.51 without UTF-8 encoding of special characters. For GetInstance to
386 be successful, CreateInstance must have stored the instance name
387 in that same form, without special character encoding.
388
389 42. (Roger Kumpf - HP) 15 Nov 2001 - Added a toXml(void) method to
390 the CIMValue class. Eliminated improper use of CIMValue.toString(),
391 often replacing with CIMValue.get(String&) or CIMValue.toXml().
392 Also added some error handling in the indication handlers.
393
394 43. (Sushma Fernandes - HP) 16 Nov 2001 - Added a function
395 localObjectPathtoXml(Array<Sint8>& out) to the CIMReference class
396 to handle local instance path and local classpath. Modified the
397 CIMOperationRequestDecoder to handle <LOCALCLASSPATHELEMENT ...>.
398 Changed the CIMOperationRequestEncoder to call the localObjectPathtoXml.
399
400 44. (Roger Kumpf - HP) 19 Nov 2001 - Added a CIMNamedInstance class
401 to hold the argument to ModifyInstance and the return values
402 from EnumerateInstances. The client and provider APIs need to
403 be updated to use this class.
404
405 45. (Sushma Fernandes - HP) 19 Nov 2001 - Added the cimuser command line
406 mike 1.51 source files. This CLI allows addition, modification, removal and listing
407 of CIM users. The CLI is not linked to the main makefile as the Provider
408 functionality is yet to be implemented. Added the function
409 String getPassword(char* prompt) to the System.h and cpp files.
410
411 46. (Nag Boranna - HP) 20 Nov 2001 - Implemented Authentication code on
412 the server to challenge the unauthorized requests, authenticate
413 the challenge responses, and verify the subsequent authorized requests.
414 Implemented authentication mechanism on the Client api to send
415 responses to the challenges from the server. Current implementation
416 supports only 'local' authentication mechanism.
417
418 47. (Roger Kumpf - HP) 20 Nov 2001 - Commited the following set of changes:
419
420 - Changed the return value of EnumerateInstances from Array<CIMInstance>
421 to Array<CIMNamedInstance>
422 - Changed the parameter to ModifyInstance from CIMInstance to
423 CIMNamedInstance
424 - Added an optional PropertyList parameter to ModifyInstance
425 - Changed all handling of PropertyList parameters to use the
426 CIMPropertyList class instead of Array<String>
427 mike 1.51
428 Each of these changes was required to comply with the DMTF specification.
429
430 These changes were made throughout the system except for in the provider
431 API. For now, the CIMProviderHandle and CIMBaseProviderHandle hide the
432 differences from providers, so older providers will continue to function.
433 However, this means that clients can not yet take advantage of the added
434 functionality.
435
436 When the provider API is updated, the following changes will be visible:
437
438 - Providers will get a PropertyList parameter to ModifyInstance which
439 they are required to respect. Providers that can not process the
440 PropertyList must throw a NOT_SUPPORTED exception whenever the
441 list is not null. Clients can take advantage of this change by
442 issuing a ModifyInstance request against a selected set of
443 properties in an instance, rather than being required to replace
444 the entire instance.
445
446 - Providers will be required to return instance names along with
447 instances in the EnumerateInstances method. Clients will receive
448 mike 1.51 these instance names, as the standard dictates.
449
450 - Providers will receive a CIMPropertyList argument containing the
451 PropertyList instead of an Array<String>. This change allows
452 providers to distinguish between an empty list and a null list.
453
454 Note that the repository also does not yet handle the PropertyList in
455 ModifyInstance correctly.
456
457 48. (Roger Kumpf - HP) 21 Nov 2001 - I have updated the Provider2 instance
458 provider API to match the changes made to the EnumerateInstances and
459 ModifyInstance operations. These changes were made to comply with
460 the DMTF specification.
461
462 The original Provider API has not been updated, and I have no
463 plans to do so. Providers written to the original API will
464 continue to function, but they will not have the opportunity
465 to take advantage of the features that have been added.
466
467 The significant changes to the Provider2 API are:
468
469 mike 1.51 - Providers will get a PropertyList parameter to ModifyInstance which
470 they are required to respect. Providers that can not process the
471 PropertyList must throw a NOT_SUPPORTED exception whenever the
472 list is not null. Clients can take advantage of this change by
473 issuing a ModifyInstance request against a selected set of
474 properties in an instance, rather than being required to replace
475 the entire instance.
476
477 - Providers will get an IncludeQualifiers parameter to ModifyInstance
478 which they are required to respect. If IncludeQualifiers is
479 false, the qualifiers on the modified instance provided must not
480 be used to update the instance.
481
482 - Providers will be required to return instance names along with
483 instances in the EnumerateInstances method. Clients will receive
484 these instance names, as the standard dictates.
485
486 The providers that are in the Pegasus build have all been updated.
487 However, whenever the PropertyList is not null, the providers throw
488 a NOT_SUPPORTED exception.
489
490 mike 1.51 49. (Rudy Schuet - Compaq) 25 NOV 2001 - To support the NSK platform,
491 files Platform_NSK_NONSTOP_NMCPLUS.h and ConfigNsk.h were added to
492 the Common module. File Config.h was modified to include the NSK
493 platform and a new option PEGASUS_HAVE_NO_STD that allows compilation
494 without the standard (std) namespace.
495
496 50. (Roger Kumpf - HP) 26 Nov 2001 - Added two new configuration
497 properties to support alternate behavior of the Pegasus repository:
498 repositoryIsDefaultInstanceProvider and repositoryProviderName.
499
500 Using the first one, the repository can be enabled/disabled as the
501 default provider for instance (and association) operations. The default
502 setting is "true", so the default behavior has not been changed. To
503 disable the repository as the default instance provider, issue the
504 following command before starting cimserver:
505
506 cimconfig -s repositoryIsDefaultInstanceProvider=false -p
507
508 The repositoryProviderName configuration property specifies what
509 provider name is used to explicitly register the repository as a
510 provider. This is necessary when the repository needs to serve
511 mike 1.51 instances of a class and repositoryIsDefaultInstanceProvider is set
512 to "false". The default value is "repository". To register the
513 repository as an instance provider for a class, add a
514 'Provider("repository")' qualifier to the class definition.
515
516 51. (Roger Kumpf - HP) 26 Nov 2001 - Added a new ServiceCIMOMHandle to
517 pass to providers that act as services. This handle provides
518 service providers with access to the CIMServer data structures.
519
520 52. (Roger Kumpf - HP) 28 Nov 2001 - Implemented ModifyInstance in
521 the repository so that it respects the IncludeQualifiers and
522 PropertyList parameters. Updated SetProperty in the repository
523 so that it uses ModifyInstance correctly. The repository now
524 supports GetProperty and SetProperty in addition to ModifyInstance.
525
526 Implemented GetProperty and SetProperty in the Dispatcher and
527 Provider2 so that they get translated to GetInstance and
528 ModifyInstance calls (respectively) in the provider. Providers
529 written to the Provider2 API that correctly process the new
530 ModifyInstance parameters will automatically support SetProperty
531 operations. Note that GetProperty and SetProperty currently only
532 mike 1.51 work for String properties because of an XML encoding limitation.
533
534 53. (Nag Boranna - HP, Sushma Fernandes - HP) 30 Nov 2001 - Implemented the
535 Security components for authentication and authorization.
536
537 Authentication and User Management:
538 cimuser CLI : This CLI is used for addition, modification, removal
539 and listing of CIM Users. The CIM user password is encrypted and stored
540 in a file. The password file format is compatible with Apache's htpasswd
541 generated password file.
542
543 cimauth CLI implement the authorization managment functionality by letting
544 to add/remove/list user authorizations.
545
546 User Manager and User Manager Provider components implement the user
547 management and authorization functionality.
548
549 54. (Mike Brasher - BMC) 3 Dec 2001 - Added support for WQL-1. New directory
550 under src/Pegasus/WQL which contains library and BNF.
551
552 55. (Yi Zhou - HP) 03 Dec 2001 - Implemented Pegasus registration provider
553 mike 1.51 which does provider registration, block, unblock, and stop a provider.
554 It also alert Subscription Service of any provider registration changes.
555
556 56. (Rudy Schuet - Compaq) 04 Dec 2001 - Replaced _min macro in String.h
557 and String.cpp with PEG_min. The _min macro caused problems on the
558 NSK platform because of a duplicate definition in a standard file.
559
560 57. (Carol Ann Krug Graves - HP) 04 Dec 2001 - Implemented Pegasus indication
561 subscription service provider that serves as the instance provider for the
562 CIM_IndicationSubscription, CIM_IndicationFilter and CIM_IndicationHandler
563 classes (from CIM_Events27.mof). The service also takes appropriate action
564 in response to startup, shutdown of the cimom, termination of a provider,
565 or change in provider registration.
566
567 58. (Jenny Yu - HP) 05 Dec 2001 - Implemented Pegasus Shutdown Service
568 and the command line interface for shutting down cimom gracefully.
569 For more information, refer to the CIMOM Shutdown working paper
570 in pegasus/doc/WorkPapers/CIMOMShutdown.pdf.
571
572 59. (Markus Mueller - IBM) 06 Dec 2001 - Implemented SSL support (Linux only).
573 It consists the new classes SSL_Context, SSLSocket and MP_Socket defined
574 mike 1.51 in TLS.h. HTTPAcceptor and HTTPConnector are extended with an additional
575 constructor to set a pointer to the server-, resp. client wide SSL_Context
576 structure. The Socket field in HTTPConnection is substituted with an
577 MP_Socket pointer, a class that is designed to hide the differences
578 between Socket and SSLSocket. The MP_Socket (multipurpose socket) class
579 is defined even in a non-ssl environment.
580 How to use it in a Server or Client:
581 1. Just create an SSL_Context once per Server/Client address space
582 2. Construct every HTTPConnector/Acceptor with a pointer to this
583 SSL_Context if you want to enable SSL; construct Connectors/Acceptors
584 without SSL_Context for conventional connections.
|
585 mike 1.50
|
586 mike 1.51 The Configuration data was extended with the boolean SSL property, and
587 cimserver and TestClient now understand the -SSL, resp. -ssl flag.
588
589 60. (Bapu Patil - HP) Updated makefiles to support HP-UX IA64 bits O.S.
590
|
591 kumpf 1.61 61. (Sushma Fernandes - HP) 13 Feb 2001 Implemented FileSystemPropertyOwner
592 class to support PEGASUS_HOME dependent properties like Repository
593 location, Provider location and Consumer location.
594 The default location for these properties continue to be the same
595 as before. Added support to the Config Manager to own the
596 Pegasus Home variable and implemented method (getHomedPath) to
597 return absolute paths based from Pegasus Home.
598
599 For more information look in to the following files:
600 pegasus/src/Pegasus/Config/ConfigManager.h
601 pegasus/src/Pegasus/Config/ConfigManager.cpp
602 pegasus/src/Pegasus/Config/FileSystemPropertyOwner.h
603 pegasus/src/Pegasus/Config/FileSystemPropertyOwner.cpp
604
|
605 mike 1.51 ---------------------------------------------------------------------------
606 Version 1.1 - July 2001 Development branch
607 Tagged as version_1_01 on 3 August 2001 (sorry should have been
608 1.1
609
610 1. (Nitin Upasani - HP) Implementation of handleIndication() to deliver
611 indication by defining IndicationDispatcher, HandlerTable, CIMHandler
612 and ExportClient classes. the indication.
613
614 Also implemented CIMxmlIndicationHandler and sendmailIndicationHandler to
615 make the delivery of indications over Xml-HTTP and email respectively.
616
617 Provided examples for HandlerTable, XmlIndicationDelivery and
618 SendMailIndicationDelivery to support this implementation.
619
620 2. (Markus Mueller - IBM) Implementation of a Linux specific threading
621 library and a thread-safe message queue (first stage). Classes defined
622 are Mutex, Condition, Semaphore, AtomicInt, ReadWriteSem, cleanup_handler
623 and SimpleThread.
624
625 3. (Carol Ann Krug Graves - HP) Implementation of wbemexec CLI. Please refer
626 mike 1.51 to the man page in pegasus/src/Clients/wbemexec/doc/wbemexec.html for more
627 information on using wbemexec. A simple test script is included. Please
628 see pegasus/src/Clients/wbemexec/tests/readme for information on running
629 the test script.
630
631 4. (Sushma Fernandes - HP) Implementation of Trace Framework. Please
632 refer to the documentation in src/Pegasus/Common/doc/TracingDevGuide.pdf
633 and
634 src/Pegasus/Common/doc/TracingUserGuide.pdf for more information on using
635 the Trace framework. Classes defined are src/Pegasus/Common/Tracer.cpp and
636 src/Pegasus/Common/TraceFileHandler.cpp.
637
638 5. (Nag Boranna - HP) Implementation of Config Framework, Config Provider and
639 Config CLI. Please refer to the documentation
640 in pegasus/doc/WorkPapers/CIMOMConfigurationWorkPaper.pdf and the man page
641 in pegasus/src/Clients/cimconfig/doc/cimconfig.html for more information on
642 using the config framework and cimconfig CLI. Make sure to load the config
643 mof (src/gmake config) before starting the cimserver. A simple test script
644 is included. Please see pegasus/src/Clients/wbemexec/tests/readme for
645 information on running the test script.
646
647 mike 1.51 6. (Karl Schopmeyer 31 July 2001) - Add toMof functions to the CIM objects
648 (changed the H and CPP files for the major CIM objects. These
649 functions generate CIM MOF output for the objects.
650
651 7. (Bapu Patil - HP) Implementation of Local Channel Authentication. Local
652 Authentication provides security mechanism to authenticates CIM clients
653 that
654 connect to CIM Server on the same system without having to specify a
655 password.
656 Please refer to "doc/LocalCIMSecurity.pdf" for more information on design.
657 This component only works on unix and it's not linked in with the main
658 build.
659 When authentication framework is defined this component may need to be
660 modified to integrate with the framework.
|
661 karl 1.49
662 ---------------------------------------------------------------------------
663 Version 0.99.x (Fixes to version 0.99) in Process
|
664 mike 1.51
|
665 karl 1.49 NOTE: Please do not input anything to this branch except for critical
666 fixes. This is, in effect, 1.0 and we do not want to use it for
667 development.
668
669 ----------------------------------------------------------------------------
670
671 Version 0.98.0 - Work in progress (This number skipped)
|
672 karl 1.48 Version -.99.0 - Tagged as version 0.99,17 July 8:00 am - KS
|
673 mike 1.36
|
674 karl 1.38 1. (Mike Brasher) Added support for class association operations
|
675 mike 1.37 (references(), associators(), referenceNames(), associatorNames()).
676
|
677 kumpf 1.39 2. (Jenny Yu - HP) Fixed problem in CGIClient.cpp to handle double quotes
678 in the HTML URL reference for passing instance names.
679
|
680 mike 1.41 3. (Mike Brasher) Mass substitution to prepend CIM_ERR to CIM Status Codes.
681
682 4. (Mike Brasher) Added CIM Message types in preparation for qeueing.
683
|
684 kumpf 1.40 3. (Denise E. - HP) HP-UX specific changes to lslp-perl-linux,h and slp.h to
685 allow slp to compile.
686
|
687 mike 1.42 4. (Mike Brasher) - Finalized CIM messages.
688
689 5. (Mike Brasher) - Added queue ids concept (using hash table which maps
690 ids to queue pointers).
691
|
692 mike 1.43 6. (Mike Brasher) - Started integration of message queues with ServerHandler
693 and Dispatcher.
694
|
695 karl 1.48 7. (Chip Vincent) - Update Provider2 interfaces. Made changes to Dispatcher
696 and
697 CIMProvider to support both interfaces. Added CIMOMHandle and sample
|
698 chip 1.44 ResponseHandler for Provider2 interface.
|
699 mike 1.45
700 8. (Mike Brasher) - Replaced dispatcher with a queue-based dispatcher.
701
702 9. (Mike Brasher) - Retrofited CIMOMHandle to be queue-based.
703
|
704 mike 1.46 10. (Mike Brasher) - Changed CIMOMHandle to carry repository pointer.
705
|
706 mike 1.47 11. (Mike Brasher) - Ported to TRU64.
707
708 12. (Mike Brasher) - Fixed compiler error on Linux.
709
|
710 karl 1.38 ------------------------------------------------------------------------------
711 --
|
712 mike 1.26
|
713 karl 1.35 Version 0.97.4 - Tag Created for 0.97.4 and snapshot 7 July 2001
|
714 karl 1.16
715 1. Deamonizaiton added to CIMServer.cpp by Mike Day. This includes code bothe
716 for NT and Linux platforms.
|
717 mike 1.26
|
718 karl 1.17 2. KS Changed the namespace cimv20 to cimv2 and the default port from 888 to
719 5988.
720 NOTE: 5988 is now the officially recognized preferred port for a CIMServer by
721 the DMTF.
|
722 mike 1.26
|
723 karl 1.17 3. KS Corrected some errors found in interoperability testing during the DMTF
724 Fusion event. THis included a) extended the test for end of HTTP header from
725 CR/LF/CR/LF to also allow LF/LF. Not strictly legal but widely used. b).
726 Extended the HTTP message ID to allow for non-numeric message IDs.
|
727 mike 1.26
|
728 bob 1.18 4. Broke out RepositoryDeclContext class from Repository/CIMRepository.cpp
729 and created RepositoryDeclContext.{cpp,h}. This is the first step in
730 revamping the compiler to work independently of the repository (grb).
|
731 mike 1.26
|
732 bob 1.19 5. Created new makefile Compiler/Makefile.grammar and modified
733 Compiler/Makefile; and added cimmof_tab.{cpp,h} and cimmof_lex.cpp.
734 Now when you build normally, you will get the committed grammar and parser
735 files instead of generating your own for a particular platform. This should
736 prevent back-level lex and yacc implementations from generating troublesome
737 code. The committed files are generated from flex 2.5.4 and bison 1,28.
|
738 bob 1.20 (grb)
|
739 mike 1.26
|
740 bob 1.20 6. Added Compiler/compilerDeclContext.{cpp,h} and makefile changes.
741 This change paves the way for upcoming changes that will allow the compiler
742 to work indepently of the repository. (grb)
|
743 mike 1.26
|
744 karl 1.21 7. Extend testclient (clients/testclient) tests and functions. ks 19 June 2001
|
745 mike 1.26
|
746 karl 1.25 8. CV added const to CIMOperations modifyInstance, createInstance,
747 modifyClass,
|
748 chip 1.22 createClass to protect caller's object.
|
749 mike 1.26
|
750 karl 1.25 9. CV added CIMQueryProvider and CIMAssociationProvider to the Provider2
751 directory. These
752 interfaces allow very smart providers to perform advances operations.
753 CIMProviderStub has
|
754 chip 1.23 been updated to support the new interfaces. Needs testing.
|
755 mike 1.26
|
756 sage 1.24 10. Added rpm packaging support and shell script based build process. MM
|
757 mike 1.26
|
758 karl 1.25 11. Changed Make so make tests no longer rebuilds repository. To rebuild
759 repository you make world, make rebuild or make repository. ks
|
760 mike 1.26
761 12. Added associators() and associatorNames() operations to CIM repository.
|
762 mike 1.27 (MEB)
763
764 13. More on association implementation (all four operations supported).
765 Need to handle deletion of associations and protocol stubs still.
766 Need to test class associations (rather than just instance associations).
767 Need to handle deleteInstance().
768 (MEB)
|
769 mike 1.26
|
770 mday 1.28 14. slp client code integrated as pegasus-style c++ library. (MDD)
771
|
772 karl 1.30 15. (Karl)Update CGI Client to correct number of errors and install
773 AssociationName
|
774 karl 1.29 and ReferenceName functions. This included extensive update to the HTML
775 pages.
776
|
777 karl 1.30 16. (Denise E.) Changes to slp client support code for HPUX (
|
778 sage 1.31
779 17. (Markus Mueller) Additional changes to support dynamic libraries. Fixed
780 ProviderTable tests. Fixed build process (slp with PEGASUS_SUPPORTS_DYNLIB).
781 Made cimserver accept the -D flag to eliminate the need for environment
782 variables.
|
783 mike 1.32
784 18. (Mike Brasher) Added support for Associators(), AssociatorNames(),
785 References() and ReferenceNames() CIM operations. These only operate
786 on instances at this time. They will operate on classes soon.
|
787 kumpf 1.34
788 19. (Mike Glantz) Extended and modified dynamic support
789 changes to (1) work on HP-UX and (2) have all images and libraries
790 buildable per the value of PEGASUS_SUPPORTS_DYNLIB. The biggest
791 change is to program.mak and library-unix.mak, removing specific
792 lists of dynamic library specs and putting them in the Makefile
793 and libraries.mak files that build the actual targets (lots of
794 these now have DYNAMIC_LIBRARIES defined).
|
795 karl 1.35
796 20. (Karl) added basic Queue function to common (based on array) and added
797 tests for stack and queue.
|
798 karl 1.38
799 ------------------------------------------------------------------------------
800 --
|
801 mike 1.36
|
802 karl 1.16 Version 0.97.3 - Released 5 June 2001
|
803 karl 1.11
|
804 karl 1.12 1. (KS)OptionManager (CPP and H), Logger (CPP and H), Handler (CPP and H),
805 CIMServer (both)
|
806 karl 1.11 Functions added include:
807 a. Enable trace to log file.
|
808 karl 1.12 b. Add option so that you can trace to console or trace to logfile (-l
809 is
|
810 karl 1.11 trace to log, -t is trace to console).
811 c. add parameter in optionsrow for help message and enable the capture
|
812 karl 1.12 of these messages in Options class. Also added help print that
813 prints these things out. However, format not to beautiful.
|
814 karl 1.11 d. Eliminate a couple of messages coming from __Namespace provider.
815 e. Extend the Clients\testclient so he does tests on Namespace.
|
816 karl 1.15 2. (KS)Extended Log to show time, severity.
|
817 mike 1.33
|
818 karl 1.15 3. (KS)Added getCurrentASCIITime functions to System.x
|
819 mike 1.33
|
820 karl 1.15 4. (KS)Extended options on CIMServer including 1. option to determine where
821 logs
|
822 karl 1.12 are put
|
823 mike 1.33
|
824 karl 1.15 5. (KS)Added TestClient that executes a series of tests against a server.
825 This is a preliminary version.
|
826 mike 1.33
|
827 karl 1.15 6. (KS)Corrected problem with acceptor.bind where failure was being lost. Now
|
828 karl 1.13 throws CannotBind exception.
|
829 mike 1.33
|
830 karl 1.15 7. (KS)Added logger entry to XMLParser for errors. NOTE: At this point it may
831 not
|
832 karl 1.14 print out all of the message. At the least it prints out the error message
833 and components of the message causing the problem.
|
834 mike 1.33
|
835 karl 1.15 8. (KS)Added clean option to server but temprarily disabled.
|
836 mike 1.33
|
837 karl 1.15 9. (KS)Fixed problem where logs were not created unless logs directory already
|
838 karl 1.14 existed.
|
839 mike 1.33
840 10. (Mike Brasher) Added "Test" prefix to all test program names.
|
841 karl 1.15
|
842 karl 1.29 ------------------------------------------------------------------------------
843 --
|
844 karl 1.6 Version 0.97.2
845
846 1. Extend HP UX port to correctly load Dynamic Load Libraries.
847 2. Extend Formatter for Boolean and Uint32 types.
848 3. Change CIM Server to use Trace (-t) flag. This also changed
849 Handler.h to work off of flag.
850 4. Minor corrections to __Namespace Provider.
851 5. Extend tests for Formatter, String, and other modules.
852 6. Correct errors in documentation.
853 7. New working papers (provider interface).
|
854 karl 1.8 8. Add Providerreg.exe tool.
855 9. Add trace output for messages sent from the Server.
|
856 mike 1.26
|
857 karl 1.29 ------------------------------------------------------------------------------
858 --
|
859 mike 1.26
|
860 karl 1.6 23 May 2001 Version 0.97.1 Tags as version_0_971
|
861 karl 1.5
|
862 karl 1.3 1. Add PEG_NOT_FOUND symbol to replace Uint32(-1) in any of the object
863 find functions. Note: This symbol is defined in config.h. (ks).
864
|
865 karl 1.5 2. Port To HP UX. This required a number of changes particularly in the area
866 of dynamic lib loaading.
|
867 karl 1.1
868
|
869 karl 1.29 ------------------------------------------------------------------------------
870 --
|
871 mike 1.26
|
872 karl 1.3 21 May 2001 Version 0.97 - Tagged as version_0_97
|
873 karl 1.1
874 1. Added methods in CIMClass, CIMInstance, for existance of properties,
875 qualifiers, methods.
876 2. Add methods in CIMClass, CIMInstance to remove properties, qualifier,
877 methods.
878 3. Added CIMmethod and CIMProperty in CIMMethod to text for existance of
879 qualifiers and to
880 remove qualifiers.
881 4. Ported to AIX. NOTE: This port was done using an earlier version of the AIX
882 compiler. It probably imposed more limitations than would be required with
|
883 karl 1.2 the current compiler. This version of the port produces an excessively large
884 common module due to template bloat. That problem will be fixed in a future
885 change to the port. Also there are a log of duplicate symbol warnings generate
886 by the AIC compiler but these cause no problems. The port has been tested
887 with the complete unit test and client/server test successfully.
|
888 karl 1.1
889 --------------------------------------------------------------------------
|
890 karl 1.2
|
891 mike 1.4 23 May 2001
|
892 karl 1.1
|
893 mike 1.9 1. Ported to HPUX
|
894 karl 1.5
|
895 mike 1.9 --------------------------------------------------------------------------
896
897 29 May 2001
898
899 1. Implemented CIMRepository::setProperty() and CIMRepository::getProperty().
|
900 mike 1.51
901
902
903
|
904 karl 1.48
|
905 karl 1.38
|
906 karl 1.30
|
907 karl 1.29
|
908 mike 1.10
|