The Filter Process Model

By default, Filter runs independently from the calling application process. This is called out-of-process filtering. Out-of-process filtering protects the stability of the calling application in the rare case when a malformed document causes Filter to fail. You can configure Filter to run in the same process as the calling application. This is called in-process filtering. However, it is strongly recommended you run Filter out of process whenever possible.

With the exception of Solaris and AIX, the creation of child processes on UNIX adheres to Portable Operating System Interface (POSIX) standards. Solaris and AIX use thread semantics. If required, a version of kvfilter with POSIX thread semantics is available for Solaris and AIX. For Solaris, the file is For AIX, the file is kvfilter_nsl.a. These files must be renamed or kvfilter.a to be used by Filter.

To monitor and debug filtering operations during out-of-process filtering, you can generate an error log at run time. See Generate an Error Log.

The following methods run in process or out of process:

Filter API


File Extraction API

extCloseDocument extGetMainFileInfo
extGetSubFileInfo extOpenDocument
extGetSubFileMetadata getSummaryInfo
extExtractSubFile KVGetExtractInterface()

Other Filter API methods always run in process.