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 venkat.puvvada 1.4 <td height="14" width="306"> maxFailedProviderModuleRestarts</td>
529 <td height="14" width="105"> man page</td>
530 </tr>
531 <tr>
|
532 denise.eckstein 1.1 <td height="14" width="306"> logLevel</td>
533 <td height="14" width="105"> PEP 200/277</td>
534 </tr>
535 <tr>
536 <td height="14" width="306"> shutdownTimeout</td>
537 <td height="14" width="105"> man page</td>
538 </tr>
539 <tr>
540 <td height="14" width="306"> socketWriteTimeout</td>
541 <td height="14" width="105"> man page</td>
542 </tr>
543 <tr>
544 <td height="14" width="306"> sslClientVerificationMode</td>
545 <td height="14" width="105"> PEP 165</td>
546 </tr>
547 <tr>
548 <td height="14" width="306"> traceComponents</td>
549 <td height="14" width="105"> man page</td>
550 </tr>
551 <tr>
552 <td height="14" width="306"> traceLevel</td>
553 denise.eckstein 1.1 <td height="14" width="105"> man page</td>
554 </tr>
555 </table>
556 </ul>
557
558 <hr>
|
559 martin 1.3 <p>Licensed to The Open Group (TOG) under one or more contributor license
560 agreements. Refer to the OpenPegasusNOTICE.txt file distributed with
561 this work for additional information regarding copyright ownership.
562 Each contributor licenses this file to you under the OpenPegasus Open
563 Source License; you may not use this file except in compliance with the
564 License.</p>
565 <p>Permission is hereby granted, free of charge, to any person obtaining a
566 copy of this software and associated documentation files (the "Software"),
567 to deal in the Software without restriction, including without limitation
568 the rights to use, copy, modify, merge, publish, distribute, sublicense,
569 and/or sell copies of the Software, and to permit persons to whom the
570 Software is furnished to do so, subject to the following conditions:</p>
571 <p>The above copyright notice and this permission notice shall be included
572 in all copies or substantial portions of the Software.</p>
573 <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
574 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
575 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
576 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
577 CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
578 TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
579 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
|
580 denise.eckstein 1.1 <hr>
581 </body>
582
583 </html>
|