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 martin 1.3 <p>Licensed to The Open Group (TOG) under one or more contributor license
556 agreements. Refer to the OpenPegasusNOTICE.txt file distributed with
557 this work for additional information regarding copyright ownership.
558 Each contributor licenses this file to you under the OpenPegasus Open
559 Source License; you may not use this file except in compliance with the
560 License.</p>
561 <p>Permission is hereby granted, free of charge, to any person obtaining a
562 copy of this software and associated documentation files (the "Software"),
563 to deal in the Software without restriction, including without limitation
564 the rights to use, copy, modify, merge, publish, distribute, sublicense,
565 and/or sell copies of the Software, and to permit persons to whom the
566 Software is furnished to do so, subject to the following conditions:</p>
567 <p>The above copyright notice and this permission notice shall be included
568 in all copies or substantial portions of the Software.</p>
569 <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
570 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
571 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
572 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
573 CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
574 TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
575 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
|
576 denise.eckstein 1.1 <hr>
577 </body>
578
579 </html>
|