Skip navigation.

ATMI C Function Reference

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents View as PDF   Get Adobe Reader

 


tpsetmbenc(3c)

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.

[TPEINVAL]

buf, enc_name argument is NULL or enc_name is not a valid name to use.

[TPESYSTEM]

A Tuxedo system error has occurred. (e.g. bufp does not correspond to a valid Tuxedo buffer, could not add or remove the encoding name from the buffer)

See Also

tpalloc(3c), tpconvmb(3c), tpgetmbenc(3c), tpservice(3c), tuxsetmbenc(3c)

 

Skip navigation bar  Back to Top Previous Next