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 <p align="center"><b><font size="4">OpenPegasus External
12 Interface Definition</font></b>
13 </p>
14 <hr>
15 <p><b>Abstract: </b>This document provides THE list of the OpenPegasus
16 interfaces that are considered external and therefore "frozen" with
17 this release. Unless an exception is explicitly approved by
18 the Steering Committee all subsequent releases of Pegasus MUST
19 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 denise.eckstein 1.1 <hr>
23
24 <h2><font color="#000000">Definition of the Problem</font></h2>
25
26 <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 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 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 considered part of the OpenPegasus External Interface Definition.
38 Applications using either EXPERIMENTAL or internal interfaces should
39 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 denise.eckstein 1.1 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 bordercolorlight="#CCCCCC"
59 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 denise.eckstein 1.1 <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 <tr>
81 <td width="294"> Pegasus/Common/CIMDateTime.h</td>
82 <td width="306"> Pegasus/Common/CIMDateTime.h</td>
83 </tr>
84 <tr>
85 denise.eckstein 1.1 <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 <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 denise.eckstein 1.1 <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 <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 denise.eckstein 1.1 </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 </tr>
144 <tr>
145 <td width="294"> Pegasus/Common/CIMStatusCode.h</td>
146 <td width="306"> Pegasus/Common/CIMStatusCode.h</td>
147 </tr>
148 denise.eckstein 1.1 <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 <tr>
165 <td width="294"> Pegasus/Common/ContentLanguageList.h</td>
166 <td width="306"> Pegasus/Common/ContentLanguageList.h</td>
167 </tr>
168 <tr>
169 denise.eckstein 1.1 <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 <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 denise.eckstein 1.1 <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 <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 denise.eckstein 1.1 <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 </tr>
228
229 </table>
230 </ul>
231
232 denise.eckstein 1.1 <h4>2.1.3 Provider</h4>
233
234 <ul>
235 <table border="1" cellspacing="1" bordercolordark="#666666"
236 bordercolorlight="#CCCCCC"
237 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 denise.eckstein 1.1 </tr>
254 <tr>
255 <td width="377">
256 Pegasus/Provider/CIMIndicationProvider.h</td>
257 <td width="369">
258 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 denise.eckstein 1.1 Pegasus/Provider/CIMOMHandle.h</td>
275 <td width="369">
276 Pegasus/Provider/CIMOMHandle.h</td>
277 </tr>
278 <tr>
279 <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 denise.eckstein 1.1 </tr>
296 </table>
297 </ul>
298
299 <h4>2.1.4 Consumer</h4>
300
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 denise.eckstein 1.1 </tr>
317
318 </table>
319 </ul>
320
321 <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 bordercolorlight="#CCCCCC"
328 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 denise.eckstein 1.1 <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 <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 denise.eckstein 1.1
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 <p>As a statement of policy, the use of CIM_Schema is strongly encouraged and
366 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 bordercolorlight="#CCCCCC"
373 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 denise.eckstein 1.1 <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 <td>
395 Schemas/Pegasus/ManagedSystem/VER20/PG_UnixProcess20.mof</td>
396 <td> MOF</td>
397 </tr>
398 <tr>
399 <td>
400 denise.eckstein 1.1 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
416
417 <h3>2.3 Command Line Interfaces</h3>
418 <p>This section documents the command line interfaces that have been approved
419 for inclusion in the OpenPegasus External Interface. Commands not
420 explicitly listed in this section are subject to change.</p>
421 denise.eckstein 1.1 <ul>
422 <table border="1" cellspacing="1" bordercolordark="#666666"
423 bordercolorlight="#CCCCCC"
424 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 denise.eckstein 1.1 <td width="86"> cimprovider</td>
443 <td> man page</td>
444 </tr>
445 <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 denise.eckstein 1.1 <td> man page</td>
464 </tr>
465 <tr>
466 <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 <p>This section documents the configuration parameters that are part of the
478 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 bordercolorlight="#CCCCCC"
483 style='font-size=10.0pt;font-family:Arial' height="188" width="424">
484 denise.eckstein 1.1 <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 <tr>
505 denise.eckstein 1.1 <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 <td height="14" width="105"> man page</td>
526 denise.eckstein 1.1 </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 </tr>
547 denise.eckstein 1.1 <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 ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED<br>
568 denise.eckstein 1.1 "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>
|