sl_abort_request subroutine

Purpose

Send a request to a signaling process to abort a previous signaling interface request.

Library

The signaling interface library (libsl.a).

C syntax

#include <slsigpr.h>
...
SL_RET_CODE 	       sl_abort_request (
    SL_PROC_TYPE 	  sl_proc_type,
    int 	           iseq_no
);

Description

This subroutine creates an SL_ABORT_REQ primitive and sends it to the specified signaling process.

The usual way for a channel process or custom server to use the signaling interface is to create a request primitive, and to send it to the signaling process using the sl_send_request() subroutine. The channel process or custom server then uses the sl_receive_confirm() subroutine to wait for a reply from the signaling process. The sl_receive_confirm() subroutine has a time-out that specifies how long to wait for the reply.

When a channel process or a custom server has not received a confirm primitive from a signaling process in reply to a request primitive, and the time-out has expired, the sender can choose to abort the processing of the request, by calling the sl_abort_request() subroutine and specifying the sequence number of the original request.

Parameters

sl_proc_type
The signaling process type to which the original request was sent.
iseq_no
The sequence number of the request to be aborted. This must be a value previously returned by the sl_send_request() subroutine. Specifying any other value can have unpredictable results.

Return values

SLRC_OK
Successful.
SLRC_INVALID_SL_TYPE
The value of sl_proc_type is not one of those defined in the SL_PROC_TYPE enumeration.
SLRC_NOT_INSTALLED
The signaling process specified by sl_proc_type is not installed. Either the signaling process has not opened the signaling interface, or the signaling process has terminated.
SLRC_NOT_REGISTERED
The signaling process specified by sl_proc_type has not registered with the signaling interface. Since it has not registered to receive signaling interface primitives, it is not possible to send signaling requests to it.
SLRC_ERRNO
An AIX error has occurred. Check the value of errno for more information.
SLRC_INVALID_SEQ_NO
The value specified for iseq_no is invalid. Note that it is not possible for the signaling interface to detect all invalid sequence numbers, and that it is responsibility of the sending process to ensure the validity of the values it uses.
SLRC_ERROR_READING_CONFIG
An error occurred reading the Blueworx Voice Response signaling interface configuration.

Related information