e-docs > Tuxedo > ATMI C Function Reference > Section 3c - C Functions |
ATMI C Function Reference |
Name
tpsetmbenc()—Sets the code-set encoding name for a typed buffer.
Synopsis
#include <atmi.h>
extern int tperrno;
int
tpsetmbenc(char *bufp, char *enc_name, long flags)
Description
This function is used for setting or resetting the codeset encoding name. The encoding name is sent along with the input typed buffer. A process receiving these message can use tpgetmbenc() to retrieve this encoding name.
tpsetmbenc() sets the codeset encoding name to be included with a Tuxedo system request . Once this function sets a non-NULL encoding name in the caller's buffer, all requests sent (via tpcall(), tpsend()) include this string until reset or unset. An initial codeset encoding name is applied to a MBSTRING buffer, during tpalloc(), using the TPMBENC environment variable. An MBSTRING buffer without an encoding name defined is invalid.
The bufp argument is a valid pointer to a typed buffer with an encoding name.
The enc_name argument is the encoding name to use to identify the codeset encoding.
The flags argument is 0 or RM_ENC. For RM_ENC the encoding name will be removed from the MBSTRING buffer and the enc_name argument will be ignored. Note that an MBSTRING buffer without an encoding name will fail the _tmconvmb() conversion.
Return Values
Upon success, tpsetmbenc() returns a 0 value otherwise it returns a non-zero on error and sets tperrno to indicate the error condition. This function may fail for the following reasons.
See Also
tpalloc(3c), tpconvmb(3c), tpgetmbenc(3c), tpservice(3c), tuxsetmbenc(3c)