 |
Index for Section 3 |
|
 |
Alphabetical listing for R |
|
 |
Bottom of page |
|
rapi_reserve(3)
NAME
rapi_reserve - Make, modify, or delete a Resource ReSerVation Protocol
(RSVP) session reservation
SYNOPSIS
#include <rapi.h>
int rapi_reserve(
rapi_sid_t Sid,
unsigned int flags,
rapi_addr_t *Rhost,
rapi_styleid_t StyleId,
rapi_stylex_t *Style_Ext,
rapi_policy_t *Rcvr_Policy,
int FilterSpecNo,
rapi_filter_t *FilterSpec_List,
int FlowspecNo,
rapi_flowspec_t *Flowspec_List );
LIBRARY
RAPI Library (librsvp.so, librsvp.a)
PARAMETERS
Sid Specifies the session handle that was returned by a successful call to
the rapi_session() routine.
flags
Specifies one of the following flags:
RAPI_REQ_CONFIRM
Requests confirmation of the reservation by means of a confirmation
upcall (RAPI_RESV_CONFIRM).
Rhost
Specifies the interface address on which to receive data for multicast
flows. This is an optional parameter, and is useful for a multi-homed
host. If this parameter is omitted or if the host address is
INADDR_ANY, the API assumes the default interface.
StyleId
Specifies one of the following reservation style identifiers:
RAPI_RSTYLE_WILDCARD
Specifies a Wildcard Filter (WF). For this style, the Flowspec_List
parameter is either NULL (to delete the reservation) or points to a
single flow specification. The FilterSpec_List parameter is either
empty or points to a single filter specification that contains the
appropriate wildcard or wildcards.
RAPI_RSTYLE_FIXED
Specifies a Fixed Filter (FF). For this style, the FilterSpecNo and
FlowspecNo parameters must be equal. Entries in the Flowspec_List
and FilterSpec_List parameters correspond in pairs.
RAPI_RSTYLE_SE
Specifies a Shared Explicit (SE). For this style, the Flowspec_List
parameter points to a single flow specification. The
FilterSpec_List parameter points to a list of any length.
Style_Ext
Points to a style-dependent extension to the parameter list, or is
NULL. This is an optional parameter.
Rcvr_Policy
Points to a policy data structure, or is NULL. This is an optional
parameter.
FilterSpecNo
Specifies the number of objects in a sequential vector of RAPI filter
specification objects that is pointed to by the FilterSpec_List
parameter. If this parameter is zero (0), FilterSpec_List is ignored.
FilterSpec_List
Points to an area that contains a sequential vector of RAPI filter
specification objects. If the FilterSpecNo parameter is zero (0), this
parameter is ignored.
FlowspecNo
Specifies the number of objects in a sequential vector of RAPI flow
specification objects that is pointed to by the Flowspec_List
parameter.
If this parameter is zero (0), the rapi_reserve() routine removes the
current reservation or reservations for the specified session and
ignores the FilterSpec_List and Flowspec_List parameters.
Flowspec_List
Points to an area that contains a sequential vector of RAPI flow
specification objects. If the FlowspecNo parameter is zero (0), this
parameter is ignored.
DESCRIPTION
The rapi_reserve() routine makes, modifies, or deletes a resource
reservation for an RSVP session. Applications can call this routine in
repeatedly, with different parameters, to modify or remove reservations.
The last call takes precedence over previous calls.
If the call to rapi_reserve() succeeds, the application might receive
upcalls of type RAPI_RESV_ERROR or RAPI_RESV_CONFIRM.
NOTES
Depending on the parameters specified, each call to the rapi_reserve()
routine might result in new admission control calls, which could fail
asynchronously.
If your application uses the RAPI_REQ_CONFIRM option, the application
typically receives a positive acknowledgement that the QoS request
succeeded. If your application does not use this option, the application
will not receive positive acknowledgement, and will need to determine
success in another manner (for example, by errors returned).
If an admission control call fails (for example, refusal of the QoS
(Quality of Service) request), the application receives a RAPI_RESV_ERROR
type upcall. An RSVP NO_PATH_STATE error code indicates that the RSVP state
from one or more of the senders specified in the filter list has not
propagated all the way to the receiver. The error code can also indicate
that one or more of the specified senders has closed its API and that its
RSVP state has been deleted from the routers.
RETURN VALUES
Upon successful completion, the rapi_reserve() routine returns zero (0). If
there is a synchronous error, the routine returns a RAPI error code.
SEE ALSO
Functions: rapi_dispatch(3), rapi_event_rtn_t(3), rapi_getfd(3),
rapi_release(3), rapi_sender(3), rapi_session(3), rapi_strerror(3),
rapi_version(3).
Network: RSVP(7).
Network Programmer's Guide
 |
Index for Section 3 |
|
 |
Alphabetical listing for R |
|
 |
Top of page |
|