Previous section.
Resource ReSerVation Protocol API (RAPI)
Copyright © 1998 The Open Group
Introduction
Purpose and Scope
RAPI is a specific Application Programming Interface (API) for
the Resource ReSerVation Protocol (RSVP).
The RAPI interface is one realization of the generic API
contained in the RSVP Functional Specification (see reference
RFC 2205).
This Resource ReSerVation Protocol (RSVP) describes
a resource reservation setup protocol designed for an integrated
services Internet. RSVP provides receiver-initiated setup of resource
reservations for multicast or unicast data flows.
See the RSVP applicability statement in reference
RFC 2210.
RSVP is designed to be used in conjunction with the Internet
Protocol (IP, see reference
RFC 791).
It may be used in conjunction with either IP version 4 (IPv4)
or IP version 6 (IPv6) of that protocol.
The definition of RAPI assumes use of RSVP in conjunction
with IP, and contains some provisions that are IP-specific.
The RAPI interface is a set of C language bindings whose calls are
defined in this specification.
Terminology
The following terms are used in this specification:
can
This describes a permissible optional
feature or behavior available to the user or application;
all systems support such features or behavior as mandatory requirements.
implementation-dependent
The value or behavior is not consistent across all implementations.
The provider of an implementation
normally documents the requirements for correct program construction and
correct data in the use of that value or behavior. When the value or
behavior in the implementation is designed to be variable or customizable on
each instantiation of the system, the provider of the implementation
normally documents the nature and permissible ranges of this variation.
Applications that are intended to be portable must not rely on
implementation-dependent values or behavior.
may
With respect to implementations, the feature or behavior is optional.
Applications should not rely on the existence of the feature. To avoid
ambiguity, the reverse sense of
may
is expressed as
need not,
instead of
may not.
must
This describes a requirement on the application or user.
should
With respect to implementations, the feature is recommended, but it
is not mandatory.
Applications should not rely on the existence of the feature.
With respect to users or applications, the word means
recommended programming practice that is necessary for maximum portability.
undefined
A value or behavior is undefined if this document imposes no
portability requirements
on applications for erroneous program constructs or erroneous data.
Implementations
may specify the result of using that value or causing that behavior,
but such specifications
are not guaranteed to be consistent across all implementations.
An application using such behavior is not fully portable to all systems.
unspecified
A value or behavior is
unspecified if this document imposes no portability requirements
on applications for correct program construct or correct data. Implementations
may specify the result of using that value or causing that behavior,
but such specifications
are not guaranteed to be consistent across all implementations.
An application requiring a specific behavior, rather
than tolerating any behavior when using that functionality, is
not fully portable to all systems.
will
This means that the behavior described is a requirement on the
implementation and applications can rely on its existence.
Namespace Use
Feature test macro _XOPEN_SOURCE is used to control use of the
namespace by implementations of this specification.
All identifiers used in the normative sections of this
specification are defined in
<rapi.h>
(see
Header File
).
In order to use the API defined in this
specification, an application should define macro
_XOPEN_SOURCE with a value of at least 500 before including
header file
<rapi.h>.
When this is done:
-
The symbols specified in
Header File
are made visible to the application.
-
identifiers with the prefixes or suffix shown below are
reserved for any use by the implementation: applications
must not define or declare identifiers beginning with
any of these prefixes or ending with this suffix.
-
all other identifiers except those reserved to the
implementation by the ISO C Standard are available for use
by the application or by implementations of services
other than RAPI.
Header
| Prefix
| Suffix
|
---|
<rapi.h>
| RAPI_, rapi_, RSVP_, rsvp_, IS_, is_
| _t;
|
The behavior of the implementation when _XOPEN_SOURCE
is not defined, or is defined with a value of less than 500,
is unspecified.