1 denise.eckstein 1.1 <html>
2
3 <head>
4 <link rel="stylesheet" href="http://www.opengroup.org/stylesheets/info1.css">
5 </head>
6
7 <body>
8
9 <hr>
10
|
11 kumpf 1.2 <p align="center"><b><font size="4">OpenPegasus External
|
12 denise.eckstein 1.1 Interface Definition</font></b>
13 </p>
14 <hr>
|
15 kumpf 1.2 <p><b>Abstract: </b>This document provides THE list of the OpenPegasus
|
16 denise.eckstein 1.1 interfaces that are considered external and therefore "frozen" with
17 this release. Unless an exception is explicitly approved by
|
18 kumpf 1.2 the Steering Committee all subsequent releases of Pegasus MUST
|
19 denise.eckstein 1.1 continue to support these interfaces. Interfaces not explicitly listed
20 in this document, should be considered as internal and
21 subject to change.</p>
22 <hr>
23
24 <h2><font color="#000000">Definition of the Problem</font></h2>
25
|
26 kumpf 1.2 <p>With each release, as new features mature and gain Community acceptance and
27 old features age and lose value, the OpenPegasus External Interface
28 Definition needs to be updated. The purpose of this document is to
|
29 denise.eckstein 1.1 document approved changes (i.e., additions, modifications or deprecations) to
30 the OpenPegasus External Interface Definition.</p>
31
32 <p><b>Note: </b>Support for forward-compatibility is a fundamental design
|
33 kumpf 1.2 principle for the OpenPegasus project. As a Community, our
34 goal is for well-behaved OpenPegasus Providers or Clients, using only the
35 externally defined OpenPegasus interface, to continue to work with a minor
36 version upgrade of OpenPegasus. EXPERIMENTAL interfaces are not
|
37 denise.eckstein 1.1 considered part of the OpenPegasus External Interface Definition.
|
38 kumpf 1.2 Applications using either EXPERIMENTAL or internal interfaces should
|
39 denise.eckstein 1.1 have no expectation of working in the next release.</p>
40
41 <p><b>Note: </b> Although the content of the OpenPegasus SDK is strongly
42 influenced by the OpenPegasus External Interface Definition, not all
43 APIs included in the SDK are part of the External Interface Definition.
44 In addition, not all External Interfaces are included in the SDK.</p>
45
46 <h2><font color="#000000">Proposed Solution</font></h2>
47
48
49 <h2>2.0 External Interface Definitions</h2>
50
51 <h3>2.1 OpenPegasus C++ Interfaces</h3>
52
53 <h4>2.1.1 Common</h4>
54
55 <ul>
56
57 <table border="1" cellspacing="1" bordercolordark="#666666"
|
58 kumpf 1.2 bordercolorlight="#CCCCCC"
|
59 denise.eckstein 1.1 style='font-size=10.0pt;font-family:Arial' width="603">
60 <tr>
61 <th bgcolor="#CAE6CA" width="294">Source File</th>
62 <th bgcolor="#CAE6CA" width="306">Specification</th>
63 </tr>
64 <tr>
65 <td width="294"> Pegasus/Common/AcceptLanguageList.h</td>
66 <td width="306"> Pegasus/Common/AcceptLanguageList.h</td>
67 </tr>
68 <tr>
69 <td width="294"> Pegasus/Common/Array.h</td>
70 <td width="306"> Pegasus/Common/Array.h</td>
71 </tr>
72 <tr>
73 <td width="294"> Pegasus/Common/ArrayInter.h</td>
74 <td width="306"> Pegasus/Common/ArrayInter.h</td>
75 </tr>
76 <tr>
77 <td width="294"> Pegasus/Common/CIMClass.h</td>
78 <td width="306"> Pegasus/Common/CIMClass.h</td>
79 </tr>
80 denise.eckstein 1.1 <tr>
81 <td width="294"> Pegasus/Common/CIMDateTime.h</td>
82 <td width="306"> Pegasus/Common/CIMDateTime.h</td>
83 </tr>
84 <tr>
85 <td width="294"> Pegasus/Common/CIMFlavor.h</td>
86 <td width="306"> Pegasus/Common/CIMFlavor.h</td>
87 </tr>
88 <tr>
89 <td width="294"> Pegasus/Common/CIMIndication.h</td>
90 <td width="306"> Pegasus/Common/CIMIndication.h</td>
91 </tr>
92 <tr>
93 <td width="294"> Pegasus/Common/CIMInstance.h</td>
94 <td width="306"> Pegasus/Common/CIMInstance.h</td>
95 </tr>
96 <tr>
97 <td width="294"> Pegasus/Common/CIMMethod.h</td>
98 <td width="306"> Pegasus/Common/CIMMethod.h</td>
99 </tr>
100 <tr>
101 denise.eckstein 1.1 <td width="294"> Pegasus/Common/CIMName.h</td>
102 <td width="306"> Pegasus/Common/CIMName.h</td>
103 </tr>
104 <tr>
105 <td width="294"> Pegasus/Common/CIMObject.h</td>
106 <td width="306"> Pegasus/Common/CIMObject.h</td>
107 </tr>
108 <tr>
109 <td width="294"> Pegasus/Common/CIMObjectPath.h</td>
110 <td width="306"> Pegasus/Common/CIMObjectPath.h</td>
111 </tr>
112 <tr>
113 <td width="294"> Pegasus/Common/CIMOperationType.h</td>
114 <td width="306"> Pegasus/Common/CIMOperationType.h</td>
115 </tr>
116 <tr>
117 <td width="294"> Pegasus/Common/CIMParamValue.h</td>
118 <td width="306"> Pegasus/Common/CIMParamValue.h</td>
119 </tr>
120 <tr>
121 <td width="294"> Pegasus/Common/CIMParameter.h</td>
122 denise.eckstein 1.1 <td width="306"> Pegasus/Common/CIMParameter.h</td>
123 </tr>
124 <tr>
125 <td width="294"> Pegasus/Common/CIMProperty.h</td>
126 <td width="306"> Pegasus/Common/CIMProperty.h</td>
127 </tr>
128 <tr>
129 <td width="294"> Pegasus/Common/CIMPropertyList.h</td>
130 <td width="306"> Pegasus/Common/CIMPropertyList.h</td>
131 </tr>
132 <tr>
133 <td width="294"> Pegasus/Common/CIMQualifier.h</td>
134 <td width="306"> Pegasus/Common/CIMQualifier.h</td>
135 </tr>
136 <tr>
137 <td width="294"> Pegasus/Common/CIMQualifierDecl.h</td>
138 <td width="306"> Pegasus/Common/CIMQualifierDecl.h</td>
139 </tr>
140 <tr>
141 <td width="294"> Pegasus/Common/CIMScope.h</td>
142 <td width="306"> Pegasus/Common/CIMScope.h</td>
143 denise.eckstein 1.1 </tr>
144 <tr>
145 <td width="294"> Pegasus/Common/CIMStatusCode.h</td>
146 <td width="306"> Pegasus/Common/CIMStatusCode.h</td>
147 </tr>
148 <tr>
149 <td width="294"> Pegasus/Common/CIMType.h</td>
150 <td width="306"> Pegasus/Common/CIMType.h</td>
151 </tr>
152 <tr>
153 <td width="294"> Pegasus/Common/CIMValue.h</td>
154 <td width="306"> Pegasus/Common/CIMValue.h</td>
155 </tr>
156 <tr>
157 <td width="294"> Pegasus/Common/Char16.h</td>
158 <td width="306"> Pegasus/Common/Char16.h</td>
159 </tr>
160 <tr>
161 <td width="294"> Pegasus/Common/Config.h</td>
162 <td width="306"> Pegasus/Common/Config.h</td>
163 </tr>
164 denise.eckstein 1.1 <tr>
165 <td width="294"> Pegasus/Common/ContentLanguageList.h</td>
166 <td width="306"> Pegasus/Common/ContentLanguageList.h</td>
167 </tr>
168 <tr>
169 <td width="294"> Pegasus/Common/Exception.h</td>
170 <td width="306"> Pegasus/Common/Exception.h</td>
171 </tr>
172 <tr>
173 <td width="294"> Pegasus/Common/LanguageTag.h</td>
174 <td width="306"> Pegasus/Common/LanguageTag.h</td>
175 </tr>
176 <tr>
177 <td width="294"> Pegasus/Common/Linkage.h</td>
178 <td width="306"> Pegasus/Common/Linkage.h</td>
179 </tr>
180 <tr>
181 <td width="294"> Pegasus/Common/OperationContext.h</td>
182 <td width="306"> Pegasus/Common/OperationContext.h</td>
183 </tr>
184 <tr>
185 denise.eckstein 1.1 <td width="294"> Pegasus/Common/ResponseHandler.h</td>
186 <td width="306"> Pegasus/Common/ResponseHandler.h</td>
187 </tr>
188 <tr>
189 <td width="294"> Pegasus/Common/SSLContext.h</td>
190 <td width="306"> Pegasus/Common/SSLContext.h</td>
191 </tr>
192 <tr>
193 <td width="294"> Pegasus/Common/String.h</td>
194 <td width="306"> Pegasus/Common/String.h</td>
195 </tr>
196 </table>
197 </ul>
198
199 <h4>2.1.2 Client</h4>
200
201 <ul>
202 <table border="1" cellspacing="1" bordercolordark="#666666"
203 bordercolorlight="#CCCCCC" width=728
204 style='font-size=10.0pt;font-family:Arial'>
205 <tr>
206 denise.eckstein 1.1 <th bgcolor="#CAE6CA" width="363">Source File</th>
207 <th bgcolor="#CAE6CA" width="352">Specification</th>
208 </tr>
209 <tr>
210 <td width="363"> Pegasus/Client/CIMClient.h</td>
211 <td width="352"> Pegasus/Client/CIMClient.h</td>
212 </tr>
213 <tr>
214 <td width="363"> Pegasus/Client/CIMClientException.h</td>
215 <td width="352"> Pegasus/Client/CIMClientException.h</td>
216 </tr>
217 <tr>
218 <td width="363"> Pegasus/Client/Linkage.h</td>
219 <td width="352"> Pegasus/Client/Linkage.h</td>
220 </tr>
221
222 <tr>
223 <td width="363">
224 Pegasus/Client/ClientOpPerformanceDataHandler.h</td>
225 <td width="352">
226 Pegasus/Client/ClientOpPerformanceDataHandler.h</td>
227 denise.eckstein 1.1 </tr>
228
229 </table>
230 </ul>
231
232 <h4>2.1.3 Provider</h4>
233
234 <ul>
235 <table border="1" cellspacing="1" bordercolordark="#666666"
|
236 kumpf 1.2 bordercolorlight="#CCCCCC"
|
237 denise.eckstein 1.1 style='font-size=10.0pt;font-family:Arial' width="759" height="189">
238 <tr>
239 <th bgcolor="#CAE6CA" width="377" height="16">Source File</th>
240 <th bgcolor="#CAE6CA" width="369" height="16">Specification</th>
241 </tr>
242 <tr>
243 <td width="377">
244 Pegasus/Provider/CIMAssociationProvider.h</td>
245 <td width="369">
246 Pegasus/Provider/CIMAssociationProvider.h</td>
247 </tr>
248 <tr>
249 <td width="377">
250 Pegasus/Provider/CIMIndicationConsumerProvider.h</td>
251 <td width="369">
252 Pegasus/Provider/CIMIndicationConsumerProvider.h</td>
253 </tr>
254 <tr>
255 <td width="377">
256 Pegasus/Provider/CIMIndicationProvider.h</td>
257 <td width="369">
258 denise.eckstein 1.1 Pegasus/Provider/CIMIndicationProvider.h</td>
259 </tr>
260 <tr>
261 <td width="377">
262 Pegasus/Provider/CIMInstanceProvider.h</td>
263 <td width="369">
264 Pegasus/Provider/CIMInstanceProvider.h</td>
265 </tr>
266 <tr>
267 <td width="377">
268 Pegasus/Provider/CIMMethodProvider.h</td>
269 <td width="369">
270 Pegasus/Provider/CIMMethodProvider.h</td>
271 </tr>
272 <tr>
273 <td width="377">
274 Pegasus/Provider/CIMOMHandle.h</td>
275 <td width="369">
276 Pegasus/Provider/CIMOMHandle.h</td>
277 </tr>
278 <tr>
279 denise.eckstein 1.1 <td width="377">
280 Pegasus/Provider/CIMProvider.h</td>
281 <td width="369">
282 Pegasus/Provider/CIMProvider.h</td>
283 </tr>
284 <tr>
285 <td width="377">
286 Pegasus/Provider/Linkage.h</td>
287 <td width="369">
288 Pegasus/Provider/Linkage.h</td>
289 </tr>
290 <tr>
291 <td width="377">
292 Pegasus/Provider/ProviderException.h</td>
293 <td width="369">
294 Pegasus/Provider/ProviderException.h</td>
295 </tr>
296 </table>
297 </ul>
298
299 <h4>2.1.4 Consumer</h4>
300 denise.eckstein 1.1
301 <ul>
302 <table border="1" cellspacing="1" bordercolordark="#666666"
303 bordercolorlight="#CCCCCC" width=40%
304 style='font-size=10.0pt;font-family:Arial'>
305 <tr>
306 <th bgcolor="#CAE6CA">Source File</th>
307 <th bgcolor="#CAE6CA">Specification</th>
308 </tr>
309 <tr>
310 <td> Pegasus/Consumer/CIMIndicationConsumer.h</td>
311 <td> Pegasus/Consumer/CIMIndicationConsumer.h</td>
312 </tr>
313 <tr>
314 <td> Pegasus/Consumer/Linkage.h</td>
315 <td> Pegasus/Consumer/Linkage.h</td>
316 </tr>
317
318 </table>
319 </ul>
320
321 denise.eckstein 1.1 <h3>2.2 OpenPegasus CMPI C Interfaces</h3>
322
323 <h4>2.2.1 Provider</h4>
324
325 <ul>
326 <table border="1" cellspacing="1" bordercolordark="#666666"
|
327 kumpf 1.2 bordercolorlight="#CCCCCC"
|
328 denise.eckstein 1.1 style='font-size=10.0pt;font-family:Arial' width="569">
329 <tr>
330 <th bgcolor="#CAE6CA" width="269" height="16">Source File</th>
331 <th bgcolor="#CAE6CA" width="287" height="16">Specification</th>
332 </tr>
333 <tr>
334 <td width="269"> Pegasus/Provider/CMPI/cmpidt.h</td>
335 <td width="295"> Pegasus/Provider/CMPI/cmpidt.h</td>
336 </tr>
337 <tr>
338 <td width="269"> Pegasus/Provider/CMPI/cmpift.h</td>
339 <td width="295"> Pegasus/Provider/CMPI/cmpift.h</td>
340 </tr>
341 <tr>
342 <td width="269">
343 Pegasus/Provider/CMPI/cmpimacs.h</td>
344 <td width="295">
345 Pegasus/Provider/CMPI/cmpimacs.h</td>
346 </tr>
347 <tr>
348 <td width="269"> Pegasus/Provider/CMPI/cmpios.h</td>
349 denise.eckstein 1.1 <td width="295"> Pegasus/Provider/CMPI/cmpios.h</td>
350 </tr>
351 <tr>
352 <td width="269"> Pegasus/Provider/CMPI/cmpipl.h</td>
353 <td width="295"> Pegasus/Provider/CMPI/cmpipl.h</td>
354 </tr>
355 </table>
356 </ul>
357
358
359
360 <h3>2.2 Schema Definitions</h3>
361 <p>Only schema changes consistent with the DMTF definition of "minor"
362 version changes are considered "backward compatible".</p>
363
364 <h4>2.2.1 CIM Schema (CIM_)</h4>
|
365 kumpf 1.2 <p>As a statement of policy, the use of CIM_Schema is strongly encouraged and
|
366 denise.eckstein 1.1 any use of CIM_ Schema MUST be DMTF compliant.</p>
367
368 <h4>2.2.2 Pegasus Schema (PG_)</h4>
369
370 <ul>
371 <table border="1" cellspacing="1" bordercolordark="#666666"
|
372 kumpf 1.2 bordercolorlight="#CCCCCC"
|
373 denise.eckstein 1.1 style='font-size=10.0pt;font-family:Arial'>
374 <tr>
375 <th bgcolor="#CAE6CA">Source File</th>
376 <th bgcolor="#CAE6CA">Specification</th>
377 </tr>
378 <tr>
379 <td>
380 Schemas/Pegasus/InterOp/VER20/PG_ProviderModule20.mof</td>
381 <td> MOF</td>
382 </tr>
383 <tr>
384 <td>
385 Schemas/Pegasus/ManagedSystem/VER20/PG_OperatingSystem20.mof</td>
386 <td> MOF</td>
387 </tr>
388 <tr>
389 <td>
390 Schemas/Pegasus/ManagedSystem/VER20/PG_ComputerSystem20.mof</td>
391 <td> MOF</td>
392 </tr>
393 <tr>
394 denise.eckstein 1.1 <td>
395 Schemas/Pegasus/ManagedSystem/VER20/PG_UnixProcess20.mof</td>
396 <td> MOF</td>
397 </tr>
398 <tr>
399 <td>
400 Schemas/Pegasus/ManagedSystem/VER20/PG_DNSService20.mof</td>
401 <td> MOF</td>
402 </tr>
403 <tr>
404 <td>
405 Schemas/Pegasus/ManagedSystem/VER20/PG_NTPService20.mof</td>
406 <td> MOF</td>
407 </tr>
408 <tr>
409 <td>
410 Schemas/Pegasus/ManagedSystem/VER20/PG_IP20.mof</td>
411 <td> MOF</td>
412 </tr>
413 </table>
414 </ul>
415 denise.eckstein 1.1
416
417 <h3>2.3 Command Line Interfaces</h3>
|
418 kumpf 1.2 <p>This section documents the command line interfaces that have been approved
419 for inclusion in the OpenPegasus External Interface. Commands not
|
420 denise.eckstein 1.1 explicitly listed in this section are subject to change.</p>
421 <ul>
422 <table border="1" cellspacing="1" bordercolordark="#666666"
|
423 kumpf 1.2 bordercolorlight="#CCCCCC"
|
424 denise.eckstein 1.1 style='font-size=10.0pt;font-family:Arial'>
425 <tr>
426 <th bgcolor="#CAE6CA" width="86">CLI</th>
427 <th bgcolor="#CAE6CA">Specification</th>
428 </tr>
429 <tr>
430 <td width="86"> cimauth</td>
431 <td> man page</td>
432 </tr>
433 <tr>
434 <td width="86"> cimconfig</td>
435 <td> man page</td>
436 </tr>
437 <tr>
438 <td width="86"> cimmof</td>
439 <td> man page</td>
440 </tr>
441 <tr>
442 <td width="86"> cimprovider</td>
443 <td> man page</td>
444 </tr>
445 denise.eckstein 1.1 <tr>
446 <td width="86"> cimreparchive </td>
447 <td> man page</td>
448 </tr>
449 <tr>
450 <td width="86"> cimserver</td>
451 <td> man page</td>
452 </tr>
453 <tr>
454 <td width="86"> cimsub</td>
455 <td> man page</td>
456 </tr>
457 <tr>
458 <td width="86"> cimtrust</td>
459 <td> man page</td>
460 </tr>
461 <tr>
462 <td width="86"> cimuser</td>
463 <td> man page</td>
464 </tr>
465 <tr>
466 denise.eckstein 1.1 <td width="86"> osinfo</td>
467 <td> man page</td>
468 </tr>
469 <tr>
470 <td width="86"> wbemexec</td>
471 <td> man page</td>
472 </tr>
473 </table>
474 </ul>
475
476 <h3>2.4 Configuration Parameters</h3>
|
477 kumpf 1.2 <p>This section documents the configuration parameters that are part of the
|
478 denise.eckstein 1.1 external interface. Configuration parameters not explicitly listed
479 in this section are subject to change.</p>
480 <ul>
481 <table border="1" cellspacing="1" bordercolordark="#666666"
|
482 kumpf 1.2 bordercolorlight="#CCCCCC"
|
483 denise.eckstein 1.1 style='font-size=10.0pt;font-family:Arial' height="188" width="424">
484 <tr>
485 <th bgcolor="#CAE6CA" height="16" width="306">Parameter</th>
486 <th bgcolor="#CAE6CA" height="16" width="105">Specification</th>
487 </tr>
488 <tr>
489 <td height="14" width="306"> authorizedUserGroups</td>
490 <td height="14" width="105"> PEP 200/277</td>
491 </tr>
492 <tr>
493 <td height="14" width="306"> enableAuditLog</td>
494 <td height="14" width="105"> PEP 258</td>
495 </tr>
496 <tr>
497 <td height="14" width="306"> enableHttpConnection</td>
498 <td height="14" width="105"> man page</td>
499 </tr>
500 <tr>
501 <td height="14" width="306"> enableHttpsConnection</td>
502 <td height="14" width="105"> man page</td>
503 </tr>
504 denise.eckstein 1.1 <tr>
505 <td height="14" width="306">
506 enableNamespaceAuthorization</td>
507 <td height="14" width="105"> man page</td>
508 </tr>
509 <tr>
510 <td height="14" width="306">
511 enableRemotePrivilegedUserAccess</td>
512 <td height="14" width="105"> man page</td>
513 </tr>
514 <tr>
515 <td height="10" width="306">
516 enableSubscriptionsForNonprivilegedUsers</td>
517 <td height="10" width="105"> man page</td>
518 </tr>
519 <tr>
520 <td height="14" width="306"> forceProviderProcesses</td>
521 <td height="14" width="105"> PEP 200/277</td>
522 </tr>
523 <tr>
524 <td height="14" width="306"> idleConnectionTimeout</td>
525 denise.eckstein 1.1 <td height="14" width="105"> man page</td>
526 </tr>
527 <tr>
528 <td height="14" width="306"> logLevel</td>
529 <td height="14" width="105"> PEP 200/277</td>
530 </tr>
531 <tr>
532 <td height="14" width="306"> shutdownTimeout</td>
533 <td height="14" width="105"> man page</td>
534 </tr>
535 <tr>
536 <td height="14" width="306"> socketWriteTimeout</td>
537 <td height="14" width="105"> man page</td>
538 </tr>
539 <tr>
540 <td height="14" width="306"> sslClientVerificationMode</td>
541 <td height="14" width="105"> PEP 165</td>
542 </tr>
543 <tr>
544 <td height="14" width="306"> traceComponents</td>
545 <td height="14" width="105"> man page</td>
546 denise.eckstein 1.1 </tr>
547 <tr>
548 <td height="14" width="306"> traceLevel</td>
549 <td height="14" width="105"> man page</td>
550 </tr>
551 </table>
552 </ul>
553
554 <hr>
555 <p>Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;<br>
556 EMC Corporation; Symantec Corporation; The Open Group.<br>
557 <br>
558 Permission is hereby granted, free of charge, to any person obtaining a copy<br>
559 of this software and associated documentation files (the "Software")
560 to<br>
561 deal in the Software without restriction, including without limitation the<br>
562 rights to use, copy, modify, merge, publish, distribute, sublicense, and/or<br>
563 sell copies of the Software, and to permit persons to whom the Software is<br>
564 furnished to do so, subject to the following conditions:<br>
565 <br>
566 THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN<br>
567 denise.eckstein 1.1 ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED<br>
568 "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
569 INCLUDING BUT NOT<br>
570 LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR<br>
571 PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT<br>
572 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN<br>
573 ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION<br>
574 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
575 <hr>
576 <p>Template last modified: <b>March 26th 2006</b> by <b>Martin Kirk<br>
577 </b>Template version: <b>1.11</b></p>
578
579 </body>
580
581 </html>
|