Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

snalu62_send_error(3)  —  Subroutines

 
 
 
 

NAME

snalu62_send_error − Sends an error message to the remote transaction program. 
 
 

LIBRARY

 
/usr/shlib/libsnatprm.so
 
 
 

SYNOPSIS

 
#include <sna/snatprmdf.h>
 
STATUS_RTN snalu62_send_error(
       RES_ID resource,
       STATUS_VEC status_vec,
       UINT32 type,
       BUFFER ∗log_data,
       UINT32 sense_code,
       UINT8 ∗rts_recv,
       UINT8 ∗exp_data_recv,
       ASYNC_INFO ∗wait_object
       );
 
 

Valid Conversation States

 
HDX: Send, Receive,
 
Confirm, Confirm-Send, and Confirm-Deallocate

FDX: Send-Receive and Send-Only
 
 
 

SUPPLIED PARAMETERS

 
 

resource

A RES_ID structure specifying the resource ID assigned to the conversation by the interface. This ID is returned by the snalu62_allocate, snalu62_attach_listen, or snalu62_receive_allocate verb. 
 
 

type

A UINT32 value specifying the type of error being reported.  Specify one of the following values:
 
 
 
 

•SNALU62_C_PROG (the default)

Indicates the error is at the program level.  At the remote system, the error is reported to the remote transaction program. 
 
 

•SNALU62_C_SVC

Indicates the error is at the LU services level.  At the remote system, the error is reported to the remote LU services program. 
 

For mapped conversation, specify 0. 
 
 
 

log_data

A pointer to a BUFFER structure specifying the data buffer to be sent.  The buffer contains a single logical record.  The logical record consists of a 2-byte length field followed by a data field.  The high-order bit of this length field is not used.  The remaining 15 bits contain the length of the record (including the 2-byte length field). Therefore, the maximum length of the data field is 32,765 bytes and logical-record length values of 0 and 1 are invalid.  Supply this parameter in ASCII format; the interface translates it to EBCDIC.  The data field is optional, that is, the data field can consist of 0 bytes. 

For mapped conversation, specify the NULL pointer. 
 

sense_code

A UINT32 value specifying the sense code that the interface should transmit in the Function Management Header Type 7 (FMH-7) message.  Only a process having superuser privileges or a user listed in the system group in the etc/group file can specify a value other than zero.  A value of zero means to transmit the architected sense code. 
 
 

wait_object

A pointer to an ASYNC_INFO structure specifying whether the interface should process this verb in a blocking or non-blocking manner. 
 
 
 

 
 
 

RETURNED PARAMETERS

 
 

status_vec

A pointer to a STATUS_VEC array to receive the completion status information. 
 
 

rts_recv

A pointer to a UINT8 location to receive a boolean value indicating whether the remote transaction program has requested permission to send data.  A value of TRUE (1) indicates the remote program is requesting to send data.  A value of FALSE (0) indicates the remote program has not requested to send data.  For full-duplex conversations, the interface always returns a value of FALSE for this parameter. 
 
 

exp_data_recv

A pointer to a UINT8 location to receive a boolean value indicating whether an expedited data notification has been received.  A value of TRUE (1) indicates an expedited data notification has been received. A value of FALSE (0) indicates no expedited data notification has been received. 
 
 
 

 
 

DESCRIPTION

 
The program can use this verb for the following purposes:
 
 
 
 
 

•To indicate transmission of an incomplete logical record (basic conversations only)

The local program issues this verb in the Send (half-duplex) or Send-Receive or Send-Only states (full-duplex).  The remote program receives this notification as a PROG_ERROR_TRUNC or SVC_ERROR_TRUNC return code depending on the type parameter in the snalu62_send_error verb. 
 
 

•To respond negatively to a confirm request (half-duplex conversations only)

The local program issues this verb in the Confirm state.  In basic conversations, the remote program receives this notification as a PROG_ERROR_PURGING or SVC_ERROR_PURGING return code depending on the type parameter in the snalu62_send_error verb.  In mapped conversations, the remote program always receives this notification as a PROG_ERROR_PURGING return code. 
 
 

•To notify the remote program of a problem with received data

The local program issues this verb in the Send (half-duplex) or Send-Receive or Send-Only states (full-duplex).  In basic conversations, the remote program receives this notification as a PROG_ERROR_NO_TRUNC or SVC_ERROR_NO_TRUNC return code depending on the type parameter in the snalu62_send_error verb.  In mapped conversations, the remote program always receives this notification as a PROG_ERROR_NO_TRUNC return code. 
 
 

•To purge the incoming data stream (half-duplex conversations only)

The local program issues this verb in the Receive state.  All data sent by the remote program and not yet received by the local program is lost (including confirmation requests).  In addition, the local program does not receive any of the following return codes:
 

 
 

•ALLOCATION_ERROR
 

•DEALLOCATE_ABEND_PROG
 

•DEALLOCATE_ABEND_SVC
 

•DEALLOCATE_ABEND_TIMER
 

•PROG_ERROR_NO_TRUNC
 

•PROG_ERROR_PURGING
 

•PROG_ERROR_TRUNC
 

•SVC_ERROR_NO_TRUNC
 

•SVC_ERROR_PURGING
 

•SVC_ERROR_TRUNC
 

 

The local program receives the DEALLOCATE_NORMAL code instead of the ALLOCATION_ERROR and DEALLOCATE_ABEND_xxx codes.  For all other purged codes, the local program receives OK. 

In basic conversations, the remote program receives this notification as a PROG_ERROR_PURGING or SVC_ERROR_PURGING return code depending on the type parameter in the snalu62_send_error verb.  In mapped conversations, the remote program always receives this notification as a PROG_ERROR_PURGING return code. 
 

The interface sends all data provided with this verb immediately; it does not buffer the data. 

This verb cancels or resets posting. For more information, see the description of the snalu62_post_on_receipt verb. 
 
 

RESTRICTIONS

 
None
 

RETURN VALUES

 

SNALU62_S_OKnormal successful completion

SNALU62_S_ALLERR
conversation could not be allocated

SNALU62_S_BACKOUT
backed out

SNALU62_S_CONVCANC
conversation canceled

SNALU62_S_DEABPR
deallocate ABEND program

SNALU62_S_DEABSVC
deallocate ABEND services

SNALU62_S_DEABTIM
deallocate ABEND timer

SNALU62_S_DEALNOR
deallocate normal

SNALU62_S_ERRIND
error indication

SNALU62_S_OPINCOMP
non-blocking operation not completed

SNALU62_S_OPNOTACC
non-blocking operation not accepted

SNALU62_S_PARERR
parameter error, function-name

SNALU62_S_PRERPU
program error purging

SNALU62_S_PRGPARCHK
program parameter check

SNALU62_S_RESFNO
resource failure no retry

SNALU62_S_RESFRET
resource failure retry

SNALU62_S_STAERR
LU6.2 verb function-name invalid with conversation in current state

SNALU62_S_SVCERPU
service error purging

SNALU62_S_UNSUC
verb did not execute successfully
 
 
 

ERRORS

 
None

RELATED INFORMATION

 
Functions: snalu62_send

Manuals: Compaq SNA APPC/LU6.2 Programming Interface for Tru64 UNIX Programming and IBM’s Systems Network Architecture Transaction Programmer’s Reference Manual for LU Type 6.2. 
 
 
 
 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026