tt_message_xarg_add(library call)

NAME
tt_message_xarg_add — add an argument with an XDR-interpreted value to a message object

SYNOPSIS

#include &<Tt/tt_c.h>
Tt_status tt_message_xarg_add(
Tt_message m,
Tt_mode n,
const char *vtype,
xdrproc_t xdr_proc,
void *value);

DESCRIPTION

The tt_message_xarg_add function adds an argument with an XDR-interpreted value to a message object.

To change existing argument values, the application must use only modes TT_OUT or TT_INOUT.

Adding arguments when replying to a message produces undefined results.

The m argument is the opaque handle for the message involved in this operation. The n argument specifies who (sender, handler, observers) writes and reads a message argument. The following modes are defined:

TT_IN
    The argument is written by the sender and read by the handler and any observers.

TT_OUT
    The argument is written by the handler and read by the sender and any reply observers.

TT_INOUT
    The argument is written by the sender and the handler and read by all.

The vtype argument describes the type of argument data being added. The xdr_proc argument points to the XDR procedure to be used to serialize the data pointed to by value. The value argument is the data to be serialized.

RETURN VALUE

Upon successful completion, the tt_message_xarg_add function returns the status of the operation as one of the following Tt_status values:

TT_OK
    The operation completed successfully.

TT_ERR_MODE
    The specified Tt_mode is invalid.

TT_ERR_NOMP
    The ttsession(1) process is not running and the ToolTalk service cannot restart it.

TT_ERR_POINTER
    The pointer passed does not point to an object of the correct type for this operation.

TT_ERR_XDR
    The XDR procedure failed on the given data, or evaluated to a zero-length expression.

SEE ALSO

Tt/tt_c.h - Tttt_c(5)