snalu62_post_on_receipt(3) — Subroutines
NAME
snalu62_post_on_receipt − Causes the interface to post the specified conversation when information is available for the program to receive. To wait for posting to occur, make a call to snalu62_wait after calling this verb. Alternatively, call snalu62_test after this verb to test if posting has occurred.
LIBRARY
/usr/shlib/libsnatprm.so
SYNOPSIS
#include <sna/snatprmdf.h>
STATUS_RTN snalu62_post_on_receipt(
RES_ID resource,
STATUS_VEC status_vec,
UINT32 fill,
UINT32 length
);
Valid Conversation States
HDX: Receive
FDX: Not supported
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.
fill
A UINT32 value specifying when posting should occur. Specify one of the following values:
•SNALU62_C_BUFFER
Post the conversation when data is received whose length is at least equal to that specified on the length parameter. Posting can also occur if the end of data is received before the buffer is completely filled.
•SNALU62_C_LL (the default)
Post the conversation when a complete logical record or the remainder of a previously truncated logical record or when part of a logical record is available whose length is at least equal to that specified on the length parameter.
This parameter is only valid for basic conversations. The interface ignores it for mapped conversations.
length
A UINT32 value specifying the maximum length data record that the program can receive. The interpretation of this parameter is based on the value specified on the fill parameter. A length of zero causes posting to occur if at least one byte of data arrives.
RETURNED PARAMETER
status_vec
A pointer to a STATUS_VEC array to receive the completion status information.
DESCRIPTION
Use this verb in conjunction with snalu62_test or snalu62_wait. The use of this verb and snalu62_wait allows a program to wait for posting on multiple conversations. To do this, the program calls this verb for each of the conversations, and then calls snalu62_wait (for each conversation) to wait until information is available. The use of this verb and snalu62_test allows a program to continue its processing and test the conversations to determine when information is available to be received.
A program calls snalu62_post_on_receipt to enable posting for the specified conversation. Once enabled, posting remains active unless the interface cancels posting or resets posting. Cancelling occurs when the interface disables posting before it posts the conversation. Resetting occurs when the interface disables posting after it posts a conversation.
The following verbs cause the interface to cancel posting:
•snalu62_deallocate with type=SNALU62_C_ABEND_∗
•snalu62_receive_and_wait
•snalu62_receive_immediate
•snalu62_send_error
The following verbs cause the interface to reset posting:
•snalu62_deallocate with type=SNALU62_C_ABEND_∗
•snalu62_receive_and_wait
•snalu62_receive_immediate
•snalu62_send_error
•snalu62_test
•snalu62_wait
If the program makes more than one call to the snalu62_post_on_receipt verb, the last call controls what is required before the interface posts the conversation.
RESTRICTIONS
This verb is only available in half-duplex conversations.
RETURN VALUES
SNALU62_S_OKnormal successful completion
SNALU62_S_CONVCANC
conversation canceled
SNALU62_S_PARERR
parameter error, function-name
SNALU62_S_PRGPARCHK
program parameter check
SNALU62_S_STAERR
LU6.2 verb function-name invalid with conversation in current state
SNALU62_S_UNSUC
verb did not execute successfully
ERRORS
None
RELATED INFORMATION
Functions: snalu62_wait and snalu62_test
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.