Open System Services Programmer's Guide
By default, functions and macros specified by HP are declared only for Guardian modules. To use
such a function or macro in an OSS module (if that is allowed), specify the _TANDEM_SOURCE
feature test macro when you compile the module.
Regardless of whether the function or macro is being called from a Guardian or OSS module,
some functions and macros specified by X/OPEN UNIX require that the
_XOPEN_SOURCE_EXTENDED feature test macro be specified when you compile the module, and
some require that either the _XOPEN_SOURCE_EXTENDED or the _TANDEM_SOURCE feature test
macro be specified when you compile the module. _XOPEN_SOURCE_EXTENDED must be defined
as the constant 1.
Defining Parameters and Objects
OSS parameters include OSS pathnames, stream pointers, file descriptors, and process identifiers.
Guardian parameters include Guardian filenames, stream pointers, and process identifiers. OSS
objects include OSS files, streams, and processes. Guardian objects include Guardian files, streams,
and processes.
In some cases, OSS parameters can be used to access Guardian objects. For example, an OSS
pathname parameter can identify a Guardian file using the /G/volume/subvolume/fileid
syntax.
Usage Notes
The “Usage Notes” column provides information about the behavior of the function or macro.
Unless indicated otherwise in the “Usage Notes” column, a function or macro has the same behavior
regardless of the module or process environment from which it is called.
The following table describes the “Usage Notes” values that appear frequently.
MeaningUsage Note
The Guardian function or macro operates only on Guardian
objects.
Guardian function operates only on Guardian objects
The function or macro operates only on Guardian objects.Guardian objects only
The function or macro requires Guardian parameters
(Guardian filename, stream pointer, or process identifier).
Guardian parameters only
The function or macro is only implemented for the
IEEE_float floating point option. Application using this
IEEE_float only
function or macro cannot be compiled if the specified
floating-point option is Tandem_float.
An application can explicitly call this function when you
use the #define _LARGEFILE64_SOURCE 1 feature
_LARGEFILE64_SOURCE or
_FILE_OFFSET_BITS
test macro or an equivalent compiler command option to
compile the application.
An application call to interface() is automatically
mapped to this interface64() function when you use
the #define _FILE_OFFSET_BITS 64 feature test
macro or an equivalent compiler command option to
compile the application.
The function or macro operates on some types of OSS
objects. The extent of support for OSS objects differs for
each function or macro.
Limited OSS objects only
The function or macro’s operation is limited when it is called
from a Guardian process.
Limited when called from Guardian process
The function or macro can be called only from a Guardian
module within a Guardian process or from an OSS module
Only Guardian modules or only OSS modules
within an OSS process. The function or macro cannot be
called from both Guardian and OSS modules within the
same process. The module and process environments must
Using the API Interoperability Tables 503