Go to main content

man pages section 3: Basic Library Functions

Exit Print View

Updated: July 2017
 
 

catgets(3C)

Name

catgets - read a program message

Synopsis

#include <nl_types.h>

char *catgets(nl_catd catd, int set_num, int msg_num, const char *s);

Description

The catgets() function attempts to read message msg_num, in set set_num, from the message catalog identified by catd. The catd argument is a catalog descriptor returned from an earlier call to catopen(). The s argument points to a default message string which will be returned by catgets() if the identified message catalog is not currently available.

Return Values

If the identified message is retrieved successfully, catgets() returns a pointer to an internal buffer area containing the null terminated message string. If the call is unsuccessful for any reason, catgets() returns a pointer to s and errno may be set to indicate the error.

Errors

The catgets() function may fail if:

EBADF

The catd argument is not a valid message catalogue descriptor open for reading.

EBADMSG

The number of %n specifiers that appear in the message string specified by s does not match the number of %n specifiers that appear in the message identified by set_id and msg_id in the specified message catalog.

EINTR

The read operation was terminated due to the receipt of a signal, and no data was transferred.

EINVAL

The message catalog identified by catd is corrupted.

ENOMSG

The message identified by set_id and msg_id is not in the message catalog.

Usage

The catgets() function can be used safely in multithreaded applications as long as setlocale(3C) is not being called to change the locale.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
MT-Safe
Standard

See Also

gencat(1), catclose(3C), catopen(3C), gettext(3C), setlocale(3C), attributes(5), standards(5)

International Language Environments Guide for Oracle Solaris 11.3