Obtaining the required header files
Before you can start to develop a provider dynamic load library, you must obtain the following C header files from the OpenPegasus project through the internet:
- cmpidt.h
- Data type definitions
- cmpift.h
- Function signature definitions in the form of function tables
- cmpimacs.h
- CMPI convenience macros (optional)
These files are available in the OpenPegasus CVS Repository. Users familiar with CVS can check out these files using a CVS client on any platform by following the instructions on the OpenPegasus website in the "CVS Overview" section. The required files are located in directory pegasus/src/Pegasus/Provider/CMPI. To get the correct version of the files, they need to be checked out with at least the RELEASE_2_8_1 tag.
pegasus → src → Pegasus → Provider → CMPI

Once you have successfully navigated to the CMPI directory, the required header files are at the end of the list of displayed files. To get the correct version of the files, select the tag RELEASE_2_8_1 or later from the list.
To download the files, first click on the version number displayed in the column after each file name and then select download on the next screen where the content of the file is displayed. Once you have successfully downloaded the files, transfer them to the z/OS system on which the provider dynamic load library will be developed, ideally to a ZFS directory. Note that when transferring files from the workstation to a z/OS system, they should be converted from ASCII to EBCDIC encoding.
There are also a couple of samples for CMPI providers available on the OpenPegasus CVS Repository. They can be obtained the same way as the header files by navigating to the pegasus/src/Providers/sample/CMPI directory.