One of the many COM interfaces that are installed in the services database received by the C/POSIX library, is the oskit_libcenv COM interface. The oskit_libcenv encapsulates a number of external interfaces that only the C library needs. For example, before the application can use any of the filesystem interface calls, it must request a reference to the filesystem namespace object (see Section 20), which handles translation from multi component pathnames to oskit_file COM objects. The oskit_libcenv COM interface can be described as an ad-hoc collection of interfaces that do not belong anyplace else since only the C/POSIX libraries require them.
The oskit_libcenv COM interface inherits from IUnknown, and has the following additional methods:
In the descriptions that follow, it should be noted that the accessor function are intended to be used by the C/POSIX libraries, while the the functions to modify the object are intended to be used by the clientos library when setting up the object.