CATOPEN

Section: Linux Programmer's Manual (3)
Updated: 2015-08-08
Index JM Home Page
 

名前

catopen, catclose - メッセージカタログのオープン/クローズ  

書式

#include <nl_types.h>

nl_catd catopen(const char *name, int flag);

int catclose(nl_catd catalog);  

説明

関数 catopen() はメッセージカタログをオープンし、カタログディスクリプターを返す。 このディスクリプターは catclose() または execve(2) が呼び出されるまで有効である。 カタログディスクリプターを実装するために ファイルディスクリプターを使用すると、 FD_CLOEXEC フラグが設定される。

引数 name はオープンするメッセージカタログの名前を指定する。 name が絶対パスで指定されている場合 (すなわち '/' を含んでいる場合)、 name はメッセージカタログへのパス名である。 それ以外の場合、環境変数 NLSPATH が name とともに使用され %N を置き換える (locale(7) 参照)。 プロセスが root 権限を持っているときに NLSPATH が使われるかどうかは指定されていない。 NLSPATH 環境変数が存在しないか、 NLSPATH で指定されたパスの中の どのパスにおいてもメッセージカタログをオープンできない場合、 実装で定義されているパスが使われる。 後者のデフォルトパスは、 flag 引数が NL_CAT_LOCALE の場合には LC_MESSAGES のロケール設定に依存し、 flag 引数が 0 の場合には LANG 環境変数に依存する。 ロケールの LC_MESSAGES を変更すると、 オープンされているカタログディスクリプターが無効になるかもしれない。

catopen() の flag 引数は、使用される言語のソースを示すために使われる。 NL_CAT_LOCALE に設定されると、 LC_MESSAGES の現在のロケール設定が使われる。 それ以外の場合は LANG 環境変数が使われる。

関数 catclose() は catalog で指定されたメッセージカタログをクローズする。 これは、以降の catalog で指定されるメッセージカタログへの全ての参照を無効にする。  

返り値

関数 catopen() が成功すると、 nl_catd 型のメッセージカタログディスクリプターを返す。 失敗した場合は (nl_catdv) -1 を返し、 errno を設定してエラーを示す。 ここで起こり得るエラーの値には、 open(2) の呼び出しの際に起こり得る全てのエラーの値が含まれる。

関数 catclose() は、成功した場合 0 を、失敗した場合 -1 を返す。  

環境変数

LC_MESSAGES
LC_MESSAGES ロケール設定のソースになることも可能なので、 flag が NL_CAT_LOCALE に設定されている場合は、使用する言語を決定するのに使われる。
LANG
flag が 0 の場合、使用する言語を決定する。
 

属性

この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース 属性 値
catopen() Thread safety MT-Safe env
catclose() Thread safety MT-Safe
 

準拠

POSIX.1-2001, POSIX.1-2008.  

注意

以上は POSIX.1 における説明である。 glibc では NL_CAT_LOCALE の値は 1 である。 デフォルトのパスは場合によって様々であるが、通常は /usr/share/locale 以下のファイルが調べられる。  

関連項目

catgets(3), setlocale(3)  

この文書について

この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。

関連キーワード

カタログ   メッセージ   オープン   環境   変数   ロケール   catd   言語   catopen   catclose   クローズ   実装   依存   無効   ソース   成功   決定   Thread   safety   types   フラグ   絶対パス   root   権限   デフォルトパス

Linux マニュアル 一覧

関連するコマンド・関数

catopen.3   catgets.3   env.1   setenv.3   unsetenv.3   printenv.1
 

Index

名前
書式
説明
返り値
環境変数
属性
準拠
注意
関連項目
この文書について

This document was created by man2html, using the manual pages.
Time: 04:39:11 GMT, October 11, 2026