From d2ef53db26313f7ff3780ba9e181109f37f04780 Mon Sep 17 00:00:00 2001 From: Akihiro MOTOKI Date: Mon, 14 Apr 2014 15:24:03 +0900 Subject: [PATCH] (split) LDP: Update draft and release (from the previous commit) --- draft/man2/access.2 | 49 +++++++++++-------------- draft/man2/alarm.2 | 4 +-- draft/man2/capget.2 | 11 +++--- draft/man2/chmod.2 | 51 ++++++++++++-------------- draft/man2/chown.2 | 53 ++++++++++++--------------- draft/man2/close.2 | 13 +++---- draft/man2/execve.2 | 3 +- draft/man2/fcntl.2 | 43 ++++++++++------------ draft/man2/getgroups.2 | 10 +++--- draft/man2/getrlimit.2 | 8 ++--- draft/man2/mkdir.2 | 28 +++++++-------- draft/man2/reboot.2 | 5 ++- draft/man2/seteuid.2 | 13 ++++--- draft/man2/setfsuid.2 | 20 ++++------- draft/man2/setpgid.2 | 22 +++++------- draft/man2/setreuid.2 | 5 ++- draft/man2/sigpending.2 | 4 +-- draft/man2/stat.2 | 3 +- draft/man2/swapon.2 | 11 +++--- draft/man2/utime.2 | 3 +- draft/man3/atof.3 | 5 ++- draft/man3/atoi.3 | 6 ++-- draft/man3/bsd_signal.3 | 4 +-- draft/man3/crypt.3 | 5 ++- draft/man3/fexecve.3 | 14 +++----- draft/man3/mbstowcs.3 | 4 +-- draft/man3/mkstemp.3 | 11 +++--- draft/man3/mktemp.3 | 2 +- draft/man3/raise.3 | 4 +-- draft/man3/setenv.3 | 11 +++--- draft/man3/sigpause.3 | 17 +++++---- draft/man3/sigqueue.3 | 6 ++-- draft/man3/sigsetops.3 | 5 ++- draft/man3/sigwait.3 | 4 +-- draft/man3/strerror.3 | 8 ++--- draft/man3/strsep.3 | 11 +++--- draft/man3/strsignal.3 | 6 ++-- draft/man3/strspn.3 | 2 +- draft/man3/strstr.3 | 8 ++--- draft/man3/strtod.3 | 6 ++-- draft/man3/strtoimax.3 | 6 ++-- draft/man3/strtol.3 | 6 ++-- draft/man3/strtoul.3 | 6 ++-- draft/man3/sysv_signal.3 | 6 ++-- draft/man7/capabilities.7 | 23 ++++++------ draft/man7/environ.7 | 8 ++--- release/man2/access.2 | 49 +++++++++++-------------- release/man2/alarm.2 | 4 +-- release/man2/capget.2 | 11 +++--- release/man2/chmod.2 | 51 ++++++++++++-------------- release/man2/chown.2 | 53 ++++++++++++--------------- release/man2/close.2 | 13 +++---- release/man2/execve.2 | 3 +- release/man2/fcntl.2 | 43 ++++++++++------------ release/man2/getgroups.2 | 10 +++--- release/man2/getrlimit.2 | 8 ++--- release/man2/mkdir.2 | 28 +++++++-------- release/man2/reboot.2 | 5 ++- release/man2/seteuid.2 | 13 ++++--- release/man2/setfsuid.2 | 20 ++++------- release/man2/setpgid.2 | 22 +++++------- release/man2/setreuid.2 | 5 ++- release/man2/sigpending.2 | 4 +-- release/man2/stat.2 | 3 +- release/man2/swapon.2 | 11 +++--- release/man2/utime.2 | 3 +- release/man3/atof.3 | 5 ++- release/man3/atoi.3 | 6 ++-- release/man3/bsd_signal.3 | 4 +-- release/man3/crypt.3 | 5 ++- release/man3/fexecve.3 | 14 +++----- release/man3/mbstowcs.3 | 4 +-- release/man3/mkstemp.3 | 11 +++--- release/man3/mktemp.3 | 2 +- release/man3/raise.3 | 4 +-- release/man3/setenv.3 | 11 +++--- release/man3/sigpause.3 | 17 +++++---- release/man3/sigqueue.3 | 6 ++-- release/man3/sigsetops.3 | 5 ++- release/man3/sigwait.3 | 4 +-- release/man3/strerror.3 | 8 ++--- release/man3/strsep.3 | 11 +++--- release/man3/strsignal.3 | 6 ++-- release/man3/strspn.3 | 2 +- release/man3/strstr.3 | 8 ++--- release/man3/strtod.3 | 6 ++-- release/man3/strtoimax.3 | 6 ++-- release/man3/strtol.3 | 6 ++-- release/man3/strtoul.3 | 6 ++-- release/man3/sysv_signal.3 | 6 ++-- release/man7/capabilities.7 | 23 ++++++------ release/man7/environ.7 | 8 ++--- translation_list | 88 ++++++++++++++++++++++----------------------- 93 files changed, 504 insertions(+), 690 deletions(-) diff --git a/draft/man2/access.2 b/draft/man2/access.2 index 91f7321d..46676e15 100644 --- a/draft/man2/access.2 +++ b/draft/man2/access.2 @@ -107,32 +107,27 @@ _ATFILE_SOURCE 呼び出し元プロセスが特権プロセス (つまり、プロセスの実 UID が 0) の場合、 通常のファイルに対する \fBX_OK\fP のチェックは、そのファイルの所有者、グループ、他人のいずれかの 実行許可が有効になっていれば成功する。 .SS "faccessat ()" -The \fBfaccessat\fP() system call operates in exactly the same way as -\fBaccess\fP(), except for the differences described here. +\fBfaccessat\fP() システムコールは \fBaccess\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBaccess\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBaccess\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBaccess\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBaccess\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 -\fIflags\fP is constructed by ORing together zero or more of the following -values: +\fIflags\fP は以下に示す値の 0 個以上の OR (論理和) をとって作成される。 .TP \fBAT_EACCESS\fP -Perform access checks using the effective user and group IDs. By default, -\fBfaccessat\fP() uses the real IDs (like \fBaccess\fP()). +アクセスチェックを実行ユーザー/グループ ID を使って行う。デフォルトでは、\fBfaccessat\fP() は (\fBaccess\fP() と同様に) 実 +ID を使用する。 .TP \fBAT_SYMLINK_NOFOLLOW\fP -If \fIpathname\fP is a symbolic link, do not dereference it: instead return -information about the link itself. +\fIpathname\fP がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リンク自身の情報を返す。 .PP -See \fBopenat\fP(2) for an explanation of the need for \fBfaccessat\fP(). +\fBfaccessat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 成功した場合 (要求した全てについて許可が得られたか、 \fImode\fP が \fBF_OK\fP でファイルが存在した場合)、ゼロが返される。 エラーの場合 (\fImode\fP の少なくとも一つのビットで要求した許可がなかった場合、 \fImode\fP が \fBF_OK\fP @@ -176,7 +171,7 @@ I/O エラーが発生した。 \fBETXTBSY\fP 実行中のファイルに対して書き込みを要求した。 .PP -The following additional errors can occur for \fBfaccessat\fP(): +\fBfaccessat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 @@ -185,8 +180,7 @@ The following additional errors can occur for \fBfaccessat\fP(): \fIflags\fP に無効なフラグが指定された。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .SH バージョン \fBfaccessat\fP() はバージョン 2.6.16 で Linux に追加された。 ライブラリによるサポートは glibc バージョン 2.4 で追加された。 @@ -228,11 +222,10 @@ POSIX.1\-2001 では、 呼び出し元プロセスが適切な特権を持っ のマッピングはサーバーで 行なわれ、権利のチェックをするクライアントには見えないからである。 (NFS バージョン 3 以降ではサーバー側でチェックが実行される。) 同様の問題は FUSE マウントでも起こり得る。 .SS "faccessat ()" -The raw \fBfaccessat\fP() system call takes only the first three arguments. -The \fBAT_EACCESS\fP and \fBAT_SYMLINK_NOFOLLOW\fP flags are actually implemented -within the glibc wrapper function for \fBfaccessat\fP(). If either of these -flags is specified, then the wrapper function employs \fBfstatat\fP(2) to -determine access permissions. +生の \fBfaccessat\fP() システムコールは、最初の 3 つの引き数だけを取る。フラグ \fBAT_EACCESS\fP と +\fBAT_SYMLINK_NOFOLLOW\fP は実際には \fBfaccessat\fP() の glibc +のラッパー関数内で実装されている。これらのフラグのいずれかが指定された場合、ラッパー関数は \fBfstatat\fP(2) +を使ってアクセス許可の判定を行う。 .SH バグ .\" This behavior appears to have been an implementation accident. バージョン 2.4 (とそれ以前) のカーネルには、スーパーユーザでの \fBX_OK\fP のチェックの扱いに奇妙な点がある。 ディレクトリ以外のファイルで @@ -240,9 +233,9 @@ determine access permissions. \fBX_OK\fP だけが指定されたときだけであり \fImode\fP に \fBR_OK\fP や \fBW_OK\fP が一緒に指定された場合には \fBaccess\fP() は 0 を返す。 (バージョン 2.6.3 以前の) 初期の 2.6 系のカーネルも 2.4 系のカーネルと同様の動作をする。 -In kernels before 2.6.20, these calls ignored the effect of the \fBMS_NOEXEC\fP -flag if it was used to \fBmount\fP(2) the underlying filesystem. Since kernel -2.6.20, the \fBMS_NOEXEC\fP is honored +2.6.20 より前のカーネルでは、 これらのシステムコールはファイルが存在するファイルシステムを \fBmount\fP(2) する際に指定された +\fBMS_NOEXEC\fP フラグの効果を無視していた。 カーネル 2.6.20 以降では、 \fBMS_NOEXEC\fP +フラグは考慮されるようになっている。 .SH 関連項目 \fBchmod\fP(2), \fBchown\fP(2), \fBopen\fP(2), \fBsetgid\fP(2), \fBsetuid\fP(2), \fBstat\fP(2), \fBeuidaccess\fP(3), \fBcredentials\fP(7), \fBpath_resolution\fP(7), diff --git a/draft/man2/alarm.2 b/draft/man2/alarm.2 index 61bb854e..e5b46fc8 100644 --- a/draft/man2/alarm.2 +++ b/draft/man2/alarm.2 @@ -61,8 +61,8 @@ SVr4, POSIX.1\-2001, 4.3BSD. .SH 注意 \fBalarm\fP() と \fBsetitimer\fP(2) は同じタイマーを共有している; 片方を呼び出すことはもう一方の 使用に影響を与える。 -Alarms created by \fBalarm()\fP are preserved across \fBexecve\fP(2) and are not -inherited by children created via \fBfork\fP(2). +\fBalarm\fP() で作成されたアラームは \fBexecve\fP(2) の前後で保持され、 \fBfork\fP(2) +で作成された子プロセスには継承されない。 .PP \fBsleep\fP(3) は \fBSIGALRM\fP を利用して実装されているかもしれない。 \fBalarm\fP() と \fBsleep\fP(3) を混ぜて使用してはならない。 diff --git a/draft/man2/capget.2 b/draft/man2/capget.2 index c417faea..47ccdd1a 100644 --- a/draft/man2/capget.2 +++ b/draft/man2/capget.2 @@ -76,12 +76,11 @@ typedef struct __user_cap_data_struct { .fi .in -4n .sp -The \fIeffective\fP, \fIpermitted\fP, and \fIinheritable\fP fields are bit masks of -the capabilities defined in \fBcapabilities\fP(7). Note the \fBCAP_*\fP values -are bit indexes and need to be bit\-shifted before ORing into the bit -fields. To define the structures for passing to the system call you have to -use the \fIstruct __user_cap_header_struct\fP and \fIstruct -__user_cap_data_struct\fP names because the typedefs are only pointers. +フィールド \fIeffective\fP, \fIpermitted\fP, \fIinheritable\fP は、 \fBcapabilities\fP(7) +で定義されるケーパビリティのビットマスクである。 \fICAP_*\fP はビット番号を表すインデックス値であり、 ビットフィールドに OR を行う前に +\fICAP_*\fP の値の分だけビットシフトを行う必要がある。 typedef の方はポインタなので、 このシステムコールに渡す構造体を定義するには、 +\fIstruct __user_cap_header_struct\fP と \fIstruct __user_cap_data_struct\fP +という名前を使用しなければならない。 カーネル 2.6.25 より前では、バージョン \fB_LINUX_CAPABILITY_VERSION_1\fP の 32 ビットケーパビリティが推奨である。 カーネル 2.6.25 以降では、バージョン \fB_LINUX_CAPABILITY_VERSION_2\fP の 64 diff --git a/draft/man2/chmod.2 b/draft/man2/chmod.2 index 93d50927..f81f524f 100644 --- a/draft/man2/chmod.2 +++ b/draft/man2/chmod.2 @@ -45,7 +45,7 @@ .\" .TH CHMOD 2 2014\-02\-21 Linux "Linux Programmer's Manual" .SH 名前 -chmod, fchmod, fchmodat \- change permissions of a file +chmod, fchmod, fchmodat \- ファイルのモードを変更する .SH 書式 .nf \fB#include \fP @@ -159,34 +159,30 @@ NFS ファイルシステム上では、パーミッションを制限すると クライアント側でファイル属性のキャッシュが有効になっている場合に、 パーミッションの制限を緩くすると、 他のクライアントに情報が伝わるのが遅れるかもしれない。 .SS fchmodat() -The \fBfchmodat\fP() system call operates in exactly the same way as -\fBchmod\fP(), except for the differences described here. +\fBfchmodat\fP() システムコールは \fBchmod\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBchmod\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBchmod\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBchmod\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBchmod\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 -\fIflags\fP can either be 0, or include the following flag: +\fIflags\fP には 0 か、以下のフラグを指定することができる。 .TP \fBAT_SYMLINK_NOFOLLOW\fP -If \fIpathname\fP is a symbolic link, do not dereference it: instead operate on -the link itself. This flag is not currently implemented. +\fIpathname\fP +がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リンク自身に対して操作を行う。このフラグは現在のところ実装されていない。 .PP -See \fBopenat\fP(2) for an explanation of the need for \fBfchmodat\fP(). +\fBfchmodat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。 .SH エラー -Depending on the filesystem, errors other than those listed below can be -returned. +ファイルシステムによっては、下記の一覧にない他のエラーが返されることもある。 -The more general errors for \fBchmod\fP() are listed below: +\fBchmod\fP() のごく一般的なエラーを挙げる: .TP \fBEACCES\fP パス名の構成要素に検索許可がない (\fBpath_resolution\fP(7) も見よ)。 @@ -232,8 +228,7 @@ I/O エラーが発生した。 \fBEROFS\fP 上記を参照。 .PP -The same errors that occur for \fBchmod\fP() can also occur for -\fBfchmodat\fP(). The following additional errors can occur for \fBfchmodat\fP(): +\fBchmod\fP() で発生するのと同じエラーが \fBfchmodat\fP() でも起こる。 \fBfchmodat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 @@ -242,23 +237,21 @@ The same errors that occur for \fBchmod\fP() can also occur for \fIflags\fP に無効なフラグが指定された。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .TP \fBENOTSUP\fP -\fIflags\fP specified \fBAT_SYMLINK_NOFOLLOW\fP, which is not supported. +\fIflags\fP に対応していないフラグ \fBAT_SYMLINK_NOFOLLOW\fP が指定された。 .SH バージョン -\fBfchmodat\fP() was added to Linux in kernel 2.6.16; library support was -added to glibc in version 2.4. +\fBfchmodat\fP() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 以降の glibc +で利用できる。 .SH 準拠 \fBchmod\fP(), \fBfchmod\fP(): 4.4BSD, SVr4, POSIX.1\-2001i, POSIX.1\-2008. \fBfchmodat\fP(): POSIX.1\-2008. .SH 注意 -The GNU C library \fBfchmodat\fP() wrapper function implements the -POSIX\-specified interface described in this page. This interface differs -from the underlying Linux system call, which does \fInot\fP have a \fIflags\fP -argument. +GNU C ライブラリの \fBfchmodat\fP() ラッパー関数は、このページで説明している POSIX +で規定されたインターフェースを実装している。このインターフェースは、内部で呼ばれる Linux のシステムコールとは異なる。システムコールは +\fIflags\fP 引き数を\fI持たない\fP。 .SH 関連項目 \fBchown\fP(2), \fBexecve\fP(2), \fBopen\fP(2), \fBstat\fP(2), \fBpath_resolution\fP(7), \fBsymlink\fP(7) diff --git a/draft/man2/chown.2 b/draft/man2/chown.2 index 237d1f65..2a6ec312 100644 --- a/draft/man2/chown.2 +++ b/draft/man2/chown.2 @@ -124,46 +124,39 @@ POSIX はこの動作やルートが \fBchown\fP() を行なった場合につ \fBS_ISGID\fP ビットは強制ロック (mandatory locking) を意味している。 そしてそれは \fBchown\fP() ではクリアできない。 .SS fchownat() -The \fBfchownat\fP() system call operates in exactly the same way as -\fBchown\fP(), except for the differences described here. +\fBfchownat\fP() システムコールは \fBchown\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBchown\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBchown\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBchown\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBchown\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 -The \fIflags\fP argument is a bit mask created by ORing together 0 or more of -the following values; +\fIflags\fP 引き数は、以下に示す値の 0 個以上の OR (論理和) をとって作成される ビットマスクである。 .TP \fBAT_EMPTY_PATH\fP (Linux 2.6.39 以降) .\" commit 65cfc6722361570bfe255698d9cd4dccaf47570d .\" Before glibc 2.16, defining _ATFILE_SOURCE sufficed -If \fIpathname\fP is an empty string, operate on the file referred to by -\fIdirfd\fP (which may have been obtained using the \fBopen\fP(2) \fBO_PATH\fP -flag). In this case, \fIdirfd\fP can refer to any type of file, not just a -directory. This flag is Linux\-specific; define \fB_GNU_SOURCE\fP to obtain its -definition. +\fIpathname\fP が空文字列の場合、 \fIdirfd\fP が参照するファイルに対して操作を行う (\fIdirfd\fP は \fBopen\fP(2) +\fBO_PATH\fP フラグを使って取得することができる)。この場合、 \fIdirfd\fP +は、ディレクトリだけでなく、任意のタイプのファイルを参照することができる。このフラグは Linux 固有であり、その定義を得るにあ +\fB_GNU_SOURCE\fP を定義すること。 .TP \fBAT_SYMLINK_NOFOLLOW\fP -If \fIpathname\fP is a symbolic link, do not dereference it: instead operate on -the link itself, like \fBlchown\fP(). (By default, \fBfchownat\fP() dereferences -symbolic links, like \fBchown\fP().) +\fIpathname\fP がシンボリックリンクの場合、リンクの展開を行わない。代わりに、\fBlchown\fP() +同様、リンク自身に対して操作を行う。(デフォルトでは \fBfchownat\fP() は \fBchown\fP() と同様にシンボリックリンクの展開を行う。) .PP -See \fBopenat\fP(2) for an explanation of the need for \fBfchownat\fP(). +\fBfchownat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。 .SH エラー -Depending on the filesystem, errors other than those listed below can be -returned. +ファイルシステムによっては、下記の一覧にない他のエラーが返されることもある。 -The more general errors for \fBchown\fP() are listed below. +\fBchown\fP() でごく一般的なエラーを以下に挙げる: .TP \fBEACCES\fP パス名の構成要素に検索許可がない (\fBpath_resolution\fP(7) も見よ)。 @@ -209,8 +202,7 @@ i ノード (inode) を変更する際に低レベル I/O エラーが発生し \fBEROFS\fP 上記を参照。 .PP -The same errors that occur for \fBchown\fP() can also occur for -\fBfchownat\fP(). The following additional errors can occur for \fBfchownat\fP(): +\fBchown\fP() で発生するのと同じエラーが \fBfchownat\fP() でも起こる。 \fBfchownat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 @@ -219,11 +211,10 @@ The same errors that occur for \fBchown\fP() can also occur for \fIflags\fP に無効なフラグが指定された。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .SH バージョン -\fBfchownat\fP() was added to Linux in kernel 2.6.16; library support was -added to glibc in version 2.4. +\fBfchownat\fP() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 以降の glibc +で利用できる。 .SH 準拠 \fBchown\fP(), \fBfchown\fP(), \fBlchown\fP(): 4.4BSD, SVr4, POSIX.1\-2001, POSIX.1\-2008. @@ -277,7 +268,7 @@ Linux 2.1.81 以降では \fBchown\fP() はシンボリックリンクを追跡 以下のプログラムは、 二つ目のコマンドライン引き数で指定された名前のファイルの所有者を、 一つ目のコマンドライン引き数で指定された値に変更する。 新しい所有者は、数字のユーザ ID かユーザ名のいずれかで指定できる (ユーザ名で指定した場合には、 \fBgetpwnam\fP(3) を使ってシステムのパスワードファイルの検索が行われ、 ユーザ ID への変換が行われる)。 -.SS "Program source" +.SS プログラムのソース .nf #include #include diff --git a/draft/man2/close.2 b/draft/man2/close.2 index 1622b950..75055c86 100644 --- a/draft/man2/close.2 +++ b/draft/man2/close.2 @@ -85,14 +85,11 @@ I/O エラーが発生した。 .\" SVr4 documents an additional ENOLINK error condition. SVr4, 4.3BSD, POSIX.1\-2001. .SH 注意 -Not checking the return value of \fBclose\fP() is a common but nevertheless -serious programming error. It is quite possible that errors on a previous -\fBwrite\fP(2) operation are first reported at the final \fBclose\fP(). Not -checking the return value when closing the file may lead to silent loss of -data. This can especially be observed with NFS and with disk quota. Note -that the return value should only be used for diagnostics. In particular -\fBclose\fP() should not be retried after an \fBEINTR\fP since this may cause a -reused descriptor from another thread to be closed. +\fBclose\fP() の返り値のチェックはよく省略されるが、 これは深刻なプログラミングエラーである。 前の \fBwrite\fP(2) +処理に関するエラーが最後の \fBclose\fP() のときになって初めて通知される場合がありうる。 ファイルクローズの際に返り値をチェックしないと、 +気付かないうちにデータを失ってしまうかもしれない。 これは特に NFS +やディスククォータを使用した場合に見られる。返り値は状態確認用にのみ利用すべき点に注意すること。特に、\fBEINTR\fP 後に \fBclose\fP() +を再度行うべきではない。なぜなら、これにより、別のスレッドが再利用したディスクリプタをクローズしてしまう可能性があるからだ。 .PP クローズに成功しても、データがディスクに保存されたかどうかは 保証されない (カーネルが書きこみを遅延させることがあるためである)。 ストリームがクローズされるときにバッファをフラッシュするかどうかは、 ファイルシステムによって異なる。 diff --git a/draft/man2/execve.2 b/draft/man2/execve.2 index 3035fcaf..0836836f 100644 --- a/draft/man2/execve.2 +++ b/draft/man2/execve.2 @@ -259,8 +259,7 @@ POSIX.1\-2001 は、動作が無視かデフォルトに設定されている全 ファイルシステムが \fInoexec\fP でマウントされている。 .TP \fBEFAULT\fP -\fIfilename\fP or one of the pointers in the vectors \fIargv\fP or \fIenvp\fP points -outside your accessible address space. +\fIfilename\fP または配列 \fIargv\fP か \fIenvp\fP のポインタの一つがアクセス可能なアドレス空間の外を指している。 .TP \fBEINVAL\fP ELF 実行形式で複数の PT_INTERP セグメントが存在する。 (すなわち複数のインタプリタを指定した。) diff --git a/draft/man2/fcntl.2 b/draft/man2/fcntl.2 index ed25ae1b..f87bfd2a 100644 --- a/draft/man2/fcntl.2 +++ b/draft/man2/fcntl.2 @@ -138,12 +138,11 @@ fcntl \- ファイルディスクリプタの操作を行う \fIarg\fP は無視される。 .TP \fBF_SETFL\fP (\fIint\fP) -Set the file status flags to the value specified by \fIarg\fP. File access -mode (\fBO_RDONLY\fP, \fBO_WRONLY\fP, \fBO_RDWR\fP) and file creation flags (i.e., -\fBO_CREAT\fP, \fBO_EXCL\fP, \fBO_NOCTTY\fP, \fBO_TRUNC\fP) in \fIarg\fP are ignored. On -Linux this command can change only the \fBO_APPEND\fP, \fBO_ASYNC\fP, \fBO_DIRECT\fP, -\fBO_NOATIME\fP, and \fBO_NONBLOCK\fP flags. It is not possible to change the -\fBO_DSYNC\fP and \fBO_SYNC\fP flags; see BUGS, below. +ファイル状態フラグに \fIarg\fP で指定された値を設定する。 \fIarg\fP のうち、ファイルのアクセスモード (\fBO_RDONLY\fP, +\fBO_WRONLY\fP, \fBO_RDWR\fP) とファイル作成フラグ (すなわち \fBO_CREAT\fP, \fBO_EXCL\fP, +\fBO_NOCTTY\fP, \fBO_TRUNC\fP) に関するビットは無視される。 Linux では、このコマンドで変更できるのは +\fBO_APPEND\fP, \fBO_ASYNC\fP, \fBO_DIRECT\fP, \fBO_NOATIME\fP, \fBO_NONBLOCK\fP +フラグだけである。フラグ \fBO_DSYNC\fP, \fBO_SYNC\fP を変更することはできない。下記の「バグ」を参照。 .SS アドバイザリロック \fBF_SETLK\fP, \fBF_SETLKW\fP, \fBF_GETLK\fP は、レコードロックの獲得/解放/テストのために使用する (レコードロックはファイルセグメントロックや ファイル領域ロックとも呼ばれる)。 三番目の引き数 \fIlock\fP @@ -203,15 +202,12 @@ POSIX.1\-2001 では、負の値の \fIl_len\fP をサポートする実装を \fBEINTR\fP が設定される; \fBsignal\fP(7) 参照)。 .TP \fBF_GETLK\fP (\fIstruct flock *\fP) -On input to this call, \fIlock\fP describes a lock we would like to place on -the file. If the lock could be placed, \fBfcntl\fP() does not actually place -it, but returns \fBF_UNLCK\fP in the \fIl_type\fP field of \fIlock\fP and leaves the -other fields of the structure unchanged. If one or more incompatible locks -would prevent this lock being placed, then \fBfcntl\fP() returns details about -one of these locks in the \fIl_type\fP, \fIl_whence\fP, \fIl_start\fP, and \fIl_len\fP -fields of \fIlock\fP and sets \fIl_pid\fP to be the PID of the process holding -that lock. Note that the information returned by \fBF_GETLK\fP may already be -out of date by the time the caller inspects it. +このコールの呼び出し時には、 \fIlock\fP にはそのファイルに適用しようとするロックに関する情報が入っている。 ロックを適用できる場合には、 +\fBfcntl\fP() は実際にはロックを行わず、構造体 \fIlock\fP の \fIl_type\fP フィールドに \fBF_UNLCK\fP +を設定し、他のフィールドは変更せずに、復帰する。 違う種別のロックが (一つもしくは複数) 適用されていて ロックを適用できないような場合には、 +\fBfcntl\fP() は、原因となったロックの一つについての詳細情報を構造体 \fIlock\fP のフィールド \fIl_type\fP, +\fIl_whence\fP, \fIl_start\fP, \fIl_len\fP に格納し、また \fIl_pid\fP にロックを保持しているプロセスの PID +を設定して、復帰する。 \fBF_GETLK\fP が返す情報は呼び出し元がその情報を使用するときにはすでに古くなっている可能性がある点に注意すること。 .P 読み出しロックを適用するには、 \fIfd\fP は読み出し用にオープンされていなければならない。 書き込みロックを適用するには、 \fIfd\fP は書き込み用にオープンされていなければならない。 読み書き両方のロックを適用するには、読み書き両用で ファイルをオープンしなければならない。 @@ -384,13 +380,11 @@ ID が \fIpid\fP で指定された値のプロセスグループにそのシグ これらの機構を使用することで、ほとんどの場合で \fBselect\fP(2) や \fBpoll\fP(2) を使用せずに完全な非同期 I/O を実装することができる。 .PP -The use of \fBO_ASYNC\fP is specific to BSD and Linux. The only use of -\fBF_GETOWN\fP and \fBF_SETOWN\fP specified in POSIX.1 is in conjunction with the -use of the \fBSIGURG\fP signal on sockets. (POSIX does not specify the -\fBSIGIO\fP signal.) \fBF_GETOWN_EX\fP, \fBF_SETOWN_EX\fP, \fBF_GETSIG\fP, and -\fBF_SETSIG\fP are Linux\-specific. POSIX has asynchronous I/O and the -\fIaio_sigevent\fP structure to achieve similar things; these are also -available in Linux as part of the GNU C Library (Glibc). +\fBO_ASYNC\fP の使用方法は BSD と Linux に特有である。 POSIX.1 で規定されている \fBF_GETOWN\fP と +\fBF_SETOWN\fP の使用方法は、ソケットに対する \fBSIGURG\fP シグナルとの組み合わせだけである (POSIX は \fBSIGIO\fP +シグナルは規定していない)。 \fBF_GETOWN_EX\fP, \fBF_SETOWN_EX\fP, \fBF_GETSIG\fP, \fBF_SETSIG\fP は +Linux 固有である。POSIX には、同様のことを行うために、非同期 I/O と \fIaio_sigevent\fP 構造体がある。Linux +では、GNU C ライブラリ (Glibc) の一部として これらも利用可能である。 .SS "リース (leases)" (Linix 2.4 以降で利用可能) \fBF_SETLEASE\fP は、 \fIfd\fP が参照するオープンファイル記述に対して新しいリースを設定するのに使用される。 \fBF_GETLEASE\fP は、 \fIfd\fP @@ -651,9 +645,8 @@ SVr4, 4.3BSD, POSIX.1\-2001. POSIX.1\-2001 で規定されている操作は、 .\" FIXME . According to POSIX.1-2001, O_SYNC should also be modifiable .\" via fcntl(2), but currently Linux does not permit this .\" See http://bugzilla.kernel.org/show_bug.cgi?id=5994 -It is not possible to use \fBF_SETFL\fP to change the state of the \fBO_DSYNC\fP -and \fBO_SYNC\fP flags. Attempts to change the state of these flags are -silently ignored. +\fBF_SETFL\fP を使って、 フラグ \fBO_DSYNC\fP と \fBO_SYNC\fP +の状態を変更することはできない。これらのフラグの状態を変更しようとした場合には、黙って無視される。 .SS F_GETOWN .\" glibc source: sysdeps/unix/sysv/linux/i386/sysdep.h .\" mtk, Dec 04: some limited testing on alpha and ia64 seems to diff --git a/draft/man2/getgroups.2 b/draft/man2/getgroups.2 index f68fc308..b1c6cd0a 100644 --- a/draft/man2/getgroups.2 +++ b/draft/man2/getgroups.2 @@ -104,13 +104,11 @@ glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参 SVr4, 4.3BSD. \fBgetgroups\fP() 関数は POSIX.1\-2001 に準拠している。 \fBsetgroups\fP() は特権を必要とするため、POSIX.1\-2001 に従っていない。 .SH 注意 -A process can have up to \fBNGROUPS_MAX\fP supplementary group IDs in addition -to the effective group ID. The constant \fBNGROUPS_MAX\fP is defined in -\fI\fP. The set of supplementary group IDs is inherited from -the parent process, and preserved across an \fBexecve\fP(2). +プロセスは、実効グループ ID に加え、最大 \fBNGROUPS_MAX\fP までの補助グループ ID を持つことができる。 定数 +\fBNGROUPS_MAX\fP は \fI\fP で定義されている。 補助グループ ID の集合は親プロセスから継承され、 +\fBexecve\fP(2) の前後で保持される。 -The maximum number of supplementary group IDs can be found at run time using -\fBsysconf\fP(3): +補助グループ ID の最大数は、実行時に \fBsysconf\fP(3) を使って以下のようにして調べることができる: .nf long ngroups_max; diff --git a/draft/man2/getrlimit.2 b/draft/man2/getrlimit.2 index 364f0aa5..b369d1c6 100644 --- a/draft/man2/getrlimit.2 +++ b/draft/man2/getrlimit.2 @@ -180,7 +180,7 @@ ID にロックされる 共有メモリセグメント (\fBshmget\fP(2) を参 この制限は特権プロセスによってロックされるメモリの合計を制御していた。 Linux 2.6.9 以降では、特権プロセスがロックするメモリの合計に制限はなく、 代わりにこの制限は非特権プロセスがロックするメモリの合計に 適用されるようになった。 .TP -\fBRLIMIT_MSGQUEUE\fP (since Linux 2.6.8) +\fBRLIMIT_MSGQUEUE\fP (Linux 2.6.8 以降) 呼び出し元プロセスの実ユーザー ID に対して、 POSIX メッセージキューのために確保できるバイト数の制限を指定する。 この制限は \fBmq_open\fP(3) に対して適用される。 ユーザが作成した各々のメッセージキューのバイト数は 以下の式により計算され、(そのキューが削除されるまでの間) この制限の計算対象に含められる。 @@ -216,11 +216,11 @@ ID にロックされる 共有メモリセグメント (\fBshmget\fP(2) を参 プロセスの resident set (RAM 上に存在する仮想ページの数) の 上限を (ページ数で) 指定する。 この制限は 2.4.30 より前でしか影響がなく、 \fBmadvise\fP(2) に \fBMADV_WILLNEED\fP を指定した関数コールにしか影響しない。 .TP -\fBRLIMIT_RTPRIO\fP (since Linux 2.6.12, but see BUGS) +\fBRLIMIT_RTPRIO\fP (Linux 2.6.12 以降, バグの節も参照) \fBsched_setscheduler\fP(2) や \fBsched_setparam\fP(2) を使って設定できる、そのプロセスのリアルタイム優先度の上限を指定する。 .TP -\fBRLIMIT_RTTIME\fP (since Linux 2.6.25) +\fBRLIMIT_RTTIME\fP (Linux 2.6.25 以降) リアルタイムスケジューリング方針でスケジューリングされるプロセスが ブロッキング型のシステムコールを呼び出さずに消費することのできる CPU 時間の合計についての上限を (マイクロ秒単位で) 指定する。 この上限の目的のため、プロセスがブロッキング型のシステムコールを 呼び出す度に、消費された CPU 時間のカウントは 0 にリセットされる。 プロセスが CPU を使い続けようとしたが他のプロセスに置き換えられた (preempted) @@ -233,7 +233,7 @@ CPU 時間のカウントは 0 にリセットされる。 プロセスが CPU この上限を意図的に使用するのは、暴走したリアルタイムプロセスを 停止して、システムが動かなくなるのを避ける場合である。 .TP -\fBRLIMIT_SIGPENDING\fP (since Linux 2.6.8) +\fBRLIMIT_SIGPENDING\fP (Linux 2.6.8 以降) .\" This replaces the /proc/sys/kernel/rtsig-max system-wide limit .\" that was present in kernels <= 2.6.7. MTK Dec 04 呼び出し元プロセスの実ユーザー ID に対して キューに入れられるシグナルの diff --git a/draft/man2/mkdir.2 b/draft/man2/mkdir.2 index 13c7b8a3..0165d40a 100644 --- a/draft/man2/mkdir.2 +++ b/draft/man2/mkdir.2 @@ -81,21 +81,18 @@ group ID ビットがセットされていたり、ファイルシステムが B もし親ディレクトリに set group ID ビットがセットされていれば新しく作成される ディレクトリにも set group ID ビットがセットされる。 .SS mkdirat() -The \fBmkdirat\fP() system call operates in exactly the same way as -\fBmkdir\fP(), except for the differences described here. +\fBmkdirat\fP() システムコールは \fBmkdir\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBmkdir\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBmkdir\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBmkdir\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBmkdir\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 .PP -See \fBopenat\fP(2) for an explanation of the need for \fBmkdirat\fP(). +\fBmkdirat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 \fBmkdir\fP() と \fBmkdirat\fP() は成功した場合 0 を、失敗した場合 \-1 を返す (また、 \fIerrno\fP がエラーの内容にしたがって適切に設定される)。 @@ -145,17 +142,16 @@ See \fBopenat\fP(2) for an explanation of the need for \fBmkdirat\fP(). \fBEROFS\fP \fIpathname\fP が読み出し専用ファイルシステム上のファイルを指している。 .PP -The following additional errors can occur for \fBmkdirat\fP(): +\fBmkdirat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .SH バージョン -\fBmkdirat\fP() was added to Linux in kernel 2.6.16; library support was added -to glibc in version 2.4. +\fBmkdirat\fP() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 で glibc +に追加された。 .SH 準拠 .\" SVr4 documents additional EIO, EMULTIHOP \fBmkdir\fP(): SVr4, BSD, POSIX.1\-2001, POSIX.1\-2008. diff --git a/draft/man2/reboot.2 b/draft/man2/reboot.2 index 005689e5..422598bd 100644 --- a/draft/man2/reboot.2 +++ b/draft/man2/reboot.2 @@ -109,9 +109,8 @@ reboot \- 再起動する。または Ctrl\-Alt\-Delを有効・無効にする \fBsync\fP(2) を行なわないと、データが失われる。 .TP \fBLINUX_REBOOT_CMD_SW_SUSPEND\fP -(\fBRB_SW_SUSPEND\fP, 0xd000fce1; since Linux 2.5.18). The system is suspended -(hibernated) to disk. This option is available only if the kernel was -configured with \fBCONFIG_HIBERNATION\fP. +(\fBRB_SW_SUSPEND\fP, 0xd000fce1; Linux 2.5.18 以降). システムがディスクにサスペンド (ハイバネーション) +される。このオプションはカーネルで \fBCONFIG_HIBERNATION\fP が有効になっている場合にのみ利用できる。 .LP スーパーユーザーだけが \fBreboot\fP() を呼び出すことができる。 .LP diff --git a/draft/man2/seteuid.2 b/draft/man2/seteuid.2 index f93c71ef..02d6f53b 100644 --- a/draft/man2/seteuid.2 +++ b/draft/man2/seteuid.2 @@ -88,13 +88,12 @@ _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L || _XOPEN_SOURCE\ >=\ 600 実効ユーザー (グループ) ID を保存 set\-user\-ID (保存 set\-group\-ID) に 設定できるのは、Linux 1.1.37 (1.1.38) 以降である。 全てのシステムにおいて \fB_POSIX_SAVED_IDS\fP をチェックすべきである。 .LP -Under libc4, libc5 and glibc 2.0 \fBseteuid(\fP\fIeuid\fP\fB)\fP is equivalent to -\fBsetreuid(\-1,\fP\fI euid\fP\fB)\fP and hence may change the saved set\-user\-ID. -Under glibc 2.1 and later it is equivalent to \fBsetresuid(\-1,\fP\fI euid\fP\fB, -\-1)\fP and hence does not change the saved set\-user\-ID. Analogous remarks -hold for \fBsetegid\fP(), with the difference that the change in implementation -from \fBsetregid(\-1,\fP\fI egid\fP\fB)\fP to \fBsetresgid(\-1,\fP\fI egid\fP\fB, \-1)\fP -occurred in glibc 2.2 or 2.3 (depending on the hardware architecture). +libc4, libc5, glibc 2.0 では、 \fBseteuid(\fP\fIeuid\fP\fB)\fP は \fBsetreuid(\-1,\fP\fI +euid\fP\fB)\fP と等価であり、保存 set\-user\-ID を変更するかもしれない。 glibc 2.1 では、 +\fBsetresuid(\-1,\fP\fI euid\fP\fB, \-1)\fP と等価であり、保存 set\-user\-ID 変更しない。 同様のことが +\fBsetegid\fP() にも言えるが、 glibc 2.2 か 2.3 で、 実装が \fBsetregid(\-1,\fP\fI egid\fP\fB)\fP から +\fBsetresgid(\-1,\fP\fI egid\fP\fB, \-1)\fP へ変更された点だけが違う (どの glibc +バージョンで変更が行われたかは、ハードウェアアーキテクチャによって異なる)。 POSIX.1 では、 \fBseteuid\fP() (\fBsetegid\fP()) で、 \fIeuid\fP (\fIegid\fP) として現在の実効ユーザ (グループ) ID と同じ値を指定可能である 必要はないとされており、いくつかの実装では \fIeuid\fP (\fIegid\fP) として現在の実効ユーザ diff --git a/draft/man2/setfsuid.2 b/draft/man2/setfsuid.2 index 4a1976dd..a0452d97 100644 --- a/draft/man2/setfsuid.2 +++ b/draft/man2/setfsuid.2 @@ -75,19 +75,13 @@ Linux カーネルが使用するユーザ ID \(em の値を変更する。通 glibc が引き数がユーザID として不正だと判断した場合は、 システムコールを行わず \fIerrno\fP に \fBEINVAL\fP を設定して \-1 が返される。 .LP -At the time when this system call was introduced, one process could send a -signal to another process with the same effective user ID. This meant that -if a privileged process changed its effective user ID for the purpose of -file permission checking, then it could become vulnerable to receiving -signals sent by another (unprivileged) process with the same user ID. The -filesystem user ID attribute was thus added to allow a process to change its -user ID for the purposes of file permission checking without at the same -time becoming vulnerable to receiving unwanted signals. Since Linux 2.0, -signal permission handling is different (see \fBkill\fP(2)), with the result -that a process change can change its effective user ID without being -vulnerable to receiving signals from unwanted processes. Thus, -\fBsetfsuid\fP() is nowadays unneeded and should be avoided in new -applications (likewise for \fBsetfsgid\fP(2)). +このシステムコールが導入された当時、 あるプロセスは同じ実効ユーザー ID を持つ別のプロセスにシグナルを送信できた。 これは、 +特権プロセスがファイルのアクセス許可をチェックするために自身の実効ユーザー ID を変更すると、 同じユーザー ID を持つ別の (非特権) +プロセスが送信したシグナルを受け取るようになってしまうことを意味する。そのため、 プロセスが、 受け取りたくないシグナルを受信する状態にならずに、 +ファイルのアクセス許可をチェックするために自身のユーザー ID を変更できるように、 ファイルシステムユーザー ID 属性が追加された。 Linux +2.0 以降では、 シグナルの送信許可の扱いは異なり (\fBkill\fP(2) 参照)、 プロセスは、 +望まないプロセスからシグナルを受信してしまう状態にならずに、 自身の実効ユーザー ID を変更することができる。 したがって、 +\fBsetfsuid\fP() は今日では不要であり、 新規のアプリケーションでは使用すべきではない (\fBsetfsgid\fP(2) も同様)。 元々の Linux の \fBsetfsuid\fP() システムコールは 16 ビットのグループ ID だけに対応していた。 diff --git a/draft/man2/setpgid.2 b/draft/man2/setpgid.2 index d3ecef1e..fc19dd6e 100644 --- a/draft/man2/setpgid.2 +++ b/draft/man2/setpgid.2 @@ -96,10 +96,10 @@ _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED .br - || /* Since glibc 2.19: */ _BSD_SOURCE + || /* glibc 2.19 以降: */ _BSD_SOURCE .fi .sp -\fBsetpgrp\fP()\ (BSD), \fBgetpgrp\fP()\ (BSD) [before glibc 2.19]: +\fBsetpgrp\fP()\ (BSD), \fBgetpgrp\fP()\ (BSD) [glibc 2.19 より前]: .nf _BSD_SOURCE && !\ (_POSIX_SOURCE || _POSIX_C_SOURCE || _XOPEN_SOURCE || @@ -127,27 +127,23 @@ POSIX.1 バージョンの \fBgetpgrp\fP() は引き数を一つもとらず、 System V バージョンの \fBsetpgrp\fP() は引き数を一つもとらず、 \fIsetpgid(0,\ 0)\fP と等価である。 -The BSD\-specific \fBsetpgrp\fP() call, which takes arguments \fIpid\fP and -\fIpgid\fP, is is a wrapper function that calls +BSD 仕様の \fBsetpgrp\fP() は \fIpid\fP と \fIpgid\fP を引き数にとり、 以下を呼び出すラッパー関数である。 setpgid(pid, pgid) .\" The true BSD setpgrp() system call differs in allowing the PGID .\" to be set to arbitrary values, rather than being restricted to .\" PGIDs in the same session. -Since glibc 2.19, the BSD\-specific \fBsetpgrp\fP() function is no longer -exposed by \fI\fP; calls should be replaced with the -\fBsetpgid\fP() call shown above. +glibc 2.19 以降、 BSD 固有の \fBsetpgrp\fP() 関数はもはや \fI\fP では公開されない。 +この関数の呼び出しは上記の \fBsetpgid\fP() の呼び出しで置き換えるべきである。 -The BSD\-specific \fBgetpgrp\fP() call, which takes a single \fIpid\fP argument, -is a wrapper function that calls +BSD 仕様の \fBgetpgrp\fP() は \fIpid\fP だけを引き数にとり、 以下を呼び出すラッパー関数である。 getpgid(pid) -Since glibc 2.19, the BSD\-specific \fBgetpgrp\fP() function is no longer -exposed by \fI\fP; calls should be replaced with calls to the -POSIX.1 \fBgetpgrp\fP() which takes no arguments (if the intent is to obtain -the caller's PGID), or with the \fBgetpgid\fP() call shown above. +glibc 2.19 以降、 BSD 固有の \fBgetpgrp\fP() 関数はもはや \fI\fP では公開されない。 +この関数の呼び出しは、引き数を取らない POSIX.1 の \fBgetpgrp\fP() の呼び出し (呼び出し元の PGID +を取得する目的の場合)、もしくは上記の \fBgetpgid\fP() の呼び出しで置き換えるべきである。 .SH 返り値 \fBsetpgid\fP() と \fBsetpgrp\fP() は成功した場合、ゼロを返す。エラーの場合は \-1 を返し、 \fIerrno\fP が適切に設定される。 diff --git a/draft/man2/setreuid.2 b/draft/man2/setreuid.2 index 087cf6cf..166ace64 100644 --- a/draft/man2/setreuid.2 +++ b/draft/man2/setreuid.2 @@ -90,9 +90,8 @@ _BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTEND 非特権ユーザーは、実ユーザー ID を実ユーザー ID または 実効ユーザー ID にしか設定できない。 -If the real user ID is set (i.e., \fIruid\fP is not \-1) or the effective user -ID is set to a value not equal to the previous real user ID, the saved -set\-user\-ID will be set to the new effective user ID. +実ユーザーID が設定されたり (\fIruid\fP が \-1 ではない)、実効ユーザーID が前の実ユーザーID と 異った値に設定された場合、保存 +set\-user\-ID には新しい実効ユーザーID の値が設定される。 これと全く同様に、 \fBsetregid\fP() は呼び出し元のプロセスの実グループ ID と実効グループ ID を設定し、 上記の説明で「ユーザー」を「グループ」に読み替えたことが成り立つ。 diff --git a/draft/man2/sigpending.2 b/draft/man2/sigpending.2 index 31d95bee..51066a8e 100644 --- a/draft/man2/sigpending.2 +++ b/draft/man2/sigpending.2 @@ -67,8 +67,8 @@ POSIX.1\-2001. .SH 注意 シグナル集合の操作に関する詳細は \fBsigsetops\fP(3) を参照のこと。 -If a signal is both blocked and has a disposition of "ignored", it is \fInot\fP -added to the mask of pending signals when generated. +シグナルが禁止 (ブロック) されており、かつ配送方法が "ignored" (無視) +になっている場合、そのシグナルが発生した場合に処理待ちシグナルのマスクにそのシグナルは追加\fIされない\fP。 あるスレッドに対する処理待ちのシグナルの集合は、 そのスレッド自体への処理待ちのシグナル集合と、プロセス全体への処理待ちの シグナル集合をあわせたものである。 \fBsignal\fP(7) 参照。 diff --git a/draft/man2/stat.2 b/draft/man2/stat.2 index 0cd76298..b796d493 100644 --- a/draft/man2/stat.2 +++ b/draft/man2/stat.2 @@ -263,8 +263,7 @@ BSD 方式で使用される ことを示す。つまり、そのディレクト ディレクトリにスティッキービット (S_ISVTX) が設定された場合は、 そのディレクトリのファイルの名前を変更したり、削除したりできるのは、 そのファイルの所有者か、そのディレクトリの所有者か、特権プロセス だけとなる。 .SS fstatat() -The \fBfstatat\fP() system call operates in exactly the same way as \fBstat\fP(), -except for the differences described here. +\fBfstatat\fP() システムコールは \fBstat\fP() と全く同様に動作するが、以下で説明する点が異なる。 If the pathname given in \fIpathname\fP is relative, then it is interpreted relative to the directory referred to by the file descriptor \fIdirfd\fP diff --git a/draft/man2/swapon.2 b/draft/man2/swapon.2 index 2bd61b74..b87ba692 100644 --- a/draft/man2/swapon.2 +++ b/draft/man2/swapon.2 @@ -103,18 +103,17 @@ Linux 1.3.6 において、カーネルは通常はこれらの規則に従っ (\fBswapon\fP() において) 指定された \fIpath\fP が既にスワップ領域として使用されている。 .TP \fBEINVAL\fP -The file \fIpath\fP exists, but refers neither to a regular file nor to a block -device; +ファイル \fIpath\fP は存在するが、通常のファイルもブロックデバイスも参照していない。 .TP \fBEINVAL\fP -(\fBswapon\fP()) The indicated path does not contain a valid swap signature or -resides on an in\-memory filesystem such as tmpfs. +(\fBswapon\fP()) 指定されたパスが有効なスワップの署名 (signature) を含んでいないか、tmpfs +のようなインメモリファイルシステム上にある。 .TP \fBEINVAL\fP (Linux 3.4 以降) -(\fBswapon\fP()) An invalid flag value was specified in \fIflags\fP. +(\fBswapon\fP()) \fIflags\fP に無効なフラグ値が指定された。 .TP \fBEINVAL\fP -(\fBswapoff\fP()) \fIpath\fP is not currently a swap area. +(\fBswapoff\fP()) \fIpath\fP が現在スワップ領域ではない。 .TP \fBENFILE\fP オープンされたファイルの総数がシステム全体の上限に達していた。 diff --git a/draft/man2/utime.2 b/draft/man2/utime.2 index e2b0d913..b46aa536 100644 --- a/draft/man2/utime.2 +++ b/draft/man2/utime.2 @@ -60,8 +60,7 @@ utime, utimes \- ファイルの最終アクセス時刻と修正時刻を変更 \fBint utimes(const char *\fP\fIfilename\fP\fB, const struct timeval \fP\fItimes\fP\fB[2]);\fP .fi .SH 説明 -\fBNote:\fP modern applications may prefer to use the interfaces described in -\fButimensat\fP(2). +\fB備考:\fP 最近のアプリケーションの場合、 \fButimensat\fP(2) で説明されているインターフェースを使いたいと思うかもしれない。 \fButime\fP() システムコールは \fIfilename\fP で示される inode のアクセス時刻と修正時刻を \fItimes\fP 中の \fIactime\fP と \fImodtime\fP にそれぞれ変更する。 diff --git a/draft/man3/atof.3 b/draft/man3/atof.3 index 4b5d3344..f9b11487 100644 --- a/draft/man3/atof.3 +++ b/draft/man3/atof.3 @@ -61,9 +61,8 @@ strtod(nptr, NULL); 変換された値。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBatof\fP() function is thread\-safe with exceptions. It can be safely -used in multithreaded applications, as long as \fBsetlocale\fP(3) is not -called to change the locale during its execution. +\fBatof\fP() 関数は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 SVr4, POSIX.1\-2001, 4.3BSD, C89, C99. .SH 関連項目 diff --git a/draft/man3/atoi.3 b/draft/man3/atoi.3 index ea6b0860..3973749c 100644 --- a/draft/man3/atoi.3 +++ b/draft/man3/atoi.3 @@ -87,10 +87,8 @@ strtol(nptr, NULL, 10); 変換された値。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBatoi\fP(), \fBatol\fP(), and \fBatoll\fP() functions are thread\-safe with -exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBatoi\fP(), \fBatol\fP(), \fBatoll\fP() は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 SVr4, POSIX.1\-2001, 4.3BSD, C99. C89 と POSIX.1\-1996 には \fBatoi\fP() と \fBatol\fP() だけが含まれている。 \fBatoq\fP() は GNU による拡張である。 diff --git a/draft/man3/bsd_signal.3 b/draft/man3/bsd_signal.3 index 367eb531..3192eeae 100644 --- a/draft/man3/bsd_signal.3 +++ b/draft/man3/bsd_signal.3 @@ -55,8 +55,8 @@ bsd_signal \- BSD 方式のシグナル処理 \fBbsd_signal\fP() 関数はシグナルハンドラの直前の値を返す。 エラーの場合、 \fBSIG_ERR\fP を返す。 .SH エラー \fBsignal\fP(2) と同じ。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBbsd_signal\fP() 関数はスレッドセーフである。 .SH 準拠 4.2BSD, POSIX.1\-2001. POSIX.1\-2008 では \fBbsd_signal\fP() の仕様が削除されている。 代わりに、 diff --git a/draft/man3/crypt.3 b/draft/man3/crypt.3 index 63d8aad5..da07f743 100644 --- a/draft/man3/crypt.3 +++ b/draft/man3/crypt.3 @@ -99,7 +99,7 @@ DES アルゴリズムにはいくつかの癖があり、それによってパ .SH エラー .TP \fBEINVAL\fP -\fIsalt\fP has the wrong format. +\fIsalt\fP が間違ったフォーマットである。 .TP \fB .TP @@ -141,8 +141,7 @@ DES アルゴリズムにはいくつかの癖があり、それによってパ \fBcrypt\fP() 関数が実装されていない。多分アメリカの輸出規制のために。 .TP \fBEPERM\fP -\fI/proc/sys/crypto/fips_enabled\fP has a nonzero value, and an attempt was -made to use a weak encryption type, such as DES. +\fI/proc/sys/crypto/fips_enabled\fP が 0 でない値で、 DES などの弱い暗号タイプを利用しようとした。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" \fBcrypt\fP() 関数はスレッドセーフではない。 diff --git a/draft/man3/fexecve.3 b/draft/man3/fexecve.3 index 3cb32876..e86cf0ae 100644 --- a/draft/man3/fexecve.3 +++ b/draft/man3/fexecve.3 @@ -85,15 +85,11 @@ POSIX.1\-2008 で規定されている。 Linux では、 \fBfexecve\fP() は \fBproc\fP(5) ファイルシステムを使って実装されている。 そのため、この関数を呼び出す時点では \fI/proc\fP がマウントされて利用可能となっている必要がある。 -The idea behind \fBfexecve\fP() is to allow the caller to verify (checksum) -the contents of an executable before executing it. Simply opening the file, -checksumming the contents, and then doing an \fBexecve\fP(2) would not -suffice, since, between the two steps, the filename, or a directory prefix -of the pathname, could have been exchanged (by, for example, modifying the -target of a symbolic link). \fBfexecve\fP() does not mitigate the problem -that the \fIcontents\fP of a file could be changed between the checksumming and -the call to \fBfexecve\fP(); for that, the solution is to ensure that the -permissions on the file prevent it from being modified by malicious users. +\fBfexecve\fP() の裏にある考えは、呼び出し元が、ファイルを実行する前に実行ファイルの内容を検査 (チェックサムを確認) +できるようにすることである。単に、ファイルをオープンして内容のチェックサムを検査し、それから \fBexecve\fP(2) +を行うのは十分ではない。なぜなら、2 つのステップの間で、ファイル名や、パス名のディレクトリの前の方が入れ換えられる可能性があるからだ +(例えば、シンボリックリンクのリンク先を変更するなど)。\fBfexecve\fP() は、チェックサムの検査と \fBfexecve\fP() +の呼び出しの間で、ファイルの\fI内容\fPを変更できる可能性があるという問題への対策にはならない。この問題に対する対応策は、確実に、ファイルのアクセス許可を設定し、悪意のあるユーザーがファイルを変更できないようにすることである。 .SH 関連項目 \fBexecve\fP(2) .SH この文書について diff --git a/draft/man3/mbstowcs.3 b/draft/man3/mbstowcs.3 index 02854a38..febb37a7 100644 --- a/draft/man3/mbstowcs.3 +++ b/draft/man3/mbstowcs.3 @@ -64,9 +64,7 @@ C99. .PP \fBmbsrtowcs\fP(3) 関数は同じ機能のより良いインターフェースを提供する。 .SH 例 -The program below illustrates the use of \fBmbstowcs\fP(), as well as some of -the wider character classification functions. An example run is the -following: +下記のプログラムは \fBmbstowcs\fP() といくつかのワイド文字分類関数の使用方法を示したものである。実行例は以下のようになる。 .in +4n .nf diff --git a/draft/man3/mkstemp.3 b/draft/man3/mkstemp.3 index f9803a25..2842ab92 100644 --- a/draft/man3/mkstemp.3 +++ b/draft/man3/mkstemp.3 @@ -101,13 +101,10 @@ _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOP フラグ付きでオープンされる。 .\" Reportedly, FreeBSD -The \fBmkostemp\fP() function is like \fBmkstemp\fP(), with the difference that -the following bits\(emwith the same meaning as for \fBopen\fP(2)\(emmay be -specified in \fIflags\fP: \fBO_APPEND\fP, \fBO_CLOEXEC\fP, and \fBO_SYNC\fP. Note that -when creating the file, \fBmkostemp\fP() includes the values \fBO_RDWR\fP, -\fBO_CREAT\fP, and \fBO_EXCL\fP in the \fIflags\fP argument given to \fBopen\fP(2); -including these values in the \fIflags\fP argument given to \fBmkostemp\fP() is -unnecessary, and produces errors on some systems. +\fBmkostemp\fP() 関数は \fBmkstemp\fP() と同様だが、 \fIflags\fP に \fBO_APPEND\fP, \fBO_CLOEXEC\fP, +\fBO_SYNC\fP のビットを指定できる点が異なる (意味は \fBopen\fP(2) と同じである)。ファイルを作成する際、 \fBmkostemp\fP() +は \fBopen\fP(2) に渡す \fIflags\fP 引き数に \fBO_RDWR\fP, \fBO_CREAT\fP, \fBO_EXCL\fP を含める。そのため、 +\fBmkostemp\fP() に渡す \fIflags\fP 引き数にこれらの値を含める必要はなく、システムによってはエラーが発生する点に注意すること。 \fBmkstemps\fP() 関数は \fBmkstemp\fP() と同様だが、 \fItemplate\fP 内の文字列に長さ が \fIsuffixlen\fP 文字の接尾辞 (suffix) が含まれる点が異なる。 diff --git a/draft/man3/mktemp.3 b/draft/man3/mktemp.3 index cd24a22c..4ee7fe5c 100644 --- a/draft/man3/mktemp.3 +++ b/draft/man3/mktemp.3 @@ -73,7 +73,7 @@ _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOP .PD .ad b .SH 説明 -\fINever use this function\fP; see NOTES. +\fI決してこの関数は使用しないこと\fP。「注意」を参照。 関数 \fBmktemp\fP() は引数 \fItemplate\fP から他と重ならない テンポラリファイル名を作成する。引数 \fItemplate\fP で指示する文字配列 の後6文字は XXXXXX である必要がある。この部分がファイル名を他と 重ならないにするような文字で置き換えられる。 diff --git a/draft/man3/raise.3 b/draft/man3/raise.3 index 228b289c..8c2e9d96 100644 --- a/draft/man3/raise.3 +++ b/draft/man3/raise.3 @@ -67,8 +67,8 @@ pthread_kill(pthread_self(), sig); シグナルに起因してシグナル・ハンドラが呼び出される場合には、 \fBraise\fP() が返るのは必ずシグナル・ハンドラが返った後になる。 .SH 返り値 成功した場合は 0 を、失敗した場合は 0 以外の値を返す。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBraise\fP() 関数はスレッドセーフである。 .SH 準拠 C89, C99, POSIX.1\-2001. diff --git a/draft/man3/setenv.3 b/draft/man3/setenv.3 index a036fef0..0878c197 100644 --- a/draft/man3/setenv.3 +++ b/draft/man3/setenv.3 @@ -71,13 +71,10 @@ _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L || _XOPEN_SOURCE\ >=\ 600 .RE .ad b .SH 説明 -The \fBsetenv\fP() function adds the variable \fIname\fP to the environment with -the value \fIvalue\fP, if \fIname\fP does not already exist. If \fIname\fP does -exist in the environment, then its value is changed to \fIvalue\fP if -\fIoverwrite\fP is nonzero; if \fIoverwrite\fP is zero, then the value of \fIname\fP -is not changed (and \fBsetenv\fP() returns a success status). This function -makes copies of the strings pointed to by \fIname\fP and \fIvalue\fP (by contrast -with \fBputenv\fP(3)). +\fBsetenv\fP() 関数は、\fIname\fP が存在しない場合 環境変数 \fIname\fP に値 \fIvalue\fP を設定し、環境に追加する。 +\fIname\fP が環境に存在する場合、\fIoverwrite\fP が 0 以外ならば その値を \fIvalue\fP に変更し、\fIoverwrite\fP が +0 ならば \fIname\fP の値を変更しない (\fBsetenv\fP() は成功のステータスを返す)。 この関数は、 (\fBputenv\fP(3) +と違い) \fIname\fP と \fIvalue\fP により参照される文字列のコピーを行う。 .PP \fBunsetenv\fP() 関数は、変数 \fIname\fP を環境から削除する。 \fIname\fP が環境にない場合、この関数は成功し、環境は変更されない。 diff --git a/draft/man3/sigpause.3 b/draft/man3/sigpause.3 index e4957766..98800502 100644 --- a/draft/man3/sigpause.3 +++ b/draft/man3/sigpause.3 @@ -54,8 +54,8 @@ sigpause \- ブロックされたシグナルをアトミックに解放して .SH 返り値 \fBsigpause\fP() が返った場合、この関数はシグナルによって割り込まれている。 返り値は \-1 で、 \fIerrno\fP は \fBEINTR\fP に設定される。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBsigpause\fP() 関数はスレッドセーフである。 .SH 準拠 System V 版の \fBsigpause\fP() は POSIX.1\-2001 で標準化されている。 @@ -75,13 +75,12 @@ libc4 と libc5 には BSD 版しかない。 .\" For the BSD version, one usually uses a zero .\" .I sigmask .\" to indicate that no signals are to be blocked. -Glibc uses the BSD version if the \fB_BSD_SOURCE\fP feature test macro is -defined and none of \fB_POSIX_SOURCE\fP, \fB_POSIX_C_SOURCE\fP, \fB_XOPEN_SOURCE\fP, -\fB_GNU_SOURCE\fP, or \fB_SVID_SOURCE\fP is defined. Otherwise, the System V -version is used (and \fB_XOPEN_SOURCE\fP must be defined to obtain the -declaration). Since glibc 2.19, only the System V version is exposed by -\fI\fP; applications that formerly used the BSD \fBsigpause\fP() -should be amended to use \fBsigsuspend\fP(2). +機能検査マクロ \fB_BSD_SOURCE\fP が定義され、 \fB_POSIX_SOURCE\fP, \fB_POSIX_C_SOURCE\fP, +\fB_XOPEN_SOURCE\fP, \fB_GNU_SOURCE\fP, \fB_SVID_SOURCE\fP のいずれも定義されていない場合、 glibc は +BSD 版を使う。 それ以外の場合には、System V 版を使用する (宣言を得るためには \fB_XOPEN_SOURCE\fP +が定義されていなければならない)。 glibc 2.19 以降では、 \fI\fP では System V +版だけが公開される。 BSD 版の \fBsigpause\fP() を使用していたアプリケーションは \fBsigsuspend\fP(2) +を使用するように修正すべきである。 .SH 関連項目 \fBkill\fP(2), \fBsigaction\fP(2), \fBsigprocmask\fP(2), \fBsigsuspend\fP(2), \fBsigblock\fP(3), \fBsigvec\fP(3), \fBfeature_test_macros\fP(7) diff --git a/draft/man3/sigqueue.3 b/draft/man3/sigqueue.3 index 8c884c60..0bec8d4f 100644 --- a/draft/man3/sigqueue.3 +++ b/draft/man3/sigqueue.3 @@ -90,9 +90,9 @@ union sigval { \fIpid\fP にマッチする PID のプロセスがない。 .SH バージョン このシステムコールは Linux 2.2 で初めて登場した。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" -The \fBsigqueue\fP() function is thread\-safe. +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" +\fBsigqueue\fP() 関数はスレッドセーフである。 .SH 準拠 POSIX.1\-2001. .SH 注意 diff --git a/draft/man3/sigsetops.3 b/draft/man3/sigsetops.3 index 1ca43a3c..f6b768de 100644 --- a/draft/man3/sigsetops.3 +++ b/draft/man3/sigsetops.3 @@ -110,9 +110,8 @@ POSIX.1\-2001. \fBsigisemptyset\fP() は \fIset\fP にシグナルが一つも含まれていなければ 1 を返し、 それ以外は 0 を返す。 -\fBsigorset\fP() places the union of the sets \fIleft\fP and \fIright\fP in -\fIdest\fP. \fBsigandset\fP() places the intersection of the sets \fIleft\fP and -\fIright\fP in \fIdest\fP. Both functions return 0 on success, and \-1 on failure. +\fBsigorset\fP() は集合 \fIleft\fP と \fIright\fP の和集合を \fIdest\fP に設定する。 \fBsigandset\fP() は集合 +\fIleft\fP と \fIright\fP の積集合を \fIdest\fP に設定する。 どちらの関数も成功すると 0 を返し、失敗時には \-1 を返す。 .PP これらの関数は非標準であり、(他にも同様の関数を提供しているシステムも いくつかはあるが) 移植性を考慮したアプリケーションでは使用を避けるべき である。 diff --git a/draft/man3/sigwait.3 b/draft/man3/sigwait.3 index e29ab9be..d14b4828 100644 --- a/draft/man3/sigwait.3 +++ b/draft/man3/sigwait.3 @@ -67,8 +67,8 @@ glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参 \fBEINVAL\fP .\" Does not occur for glibc. \fIset\fP に無効なシグナル番号が入っている。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBsigwait\fP() 関数はスレッドセーフである。 .SH 準拠 POSIX.1\-2001. diff --git a/draft/man3/strerror.3 b/draft/man3/strerror.3 index a1e5fe76..608d5e85 100644 --- a/draft/man3/strerror.3 +++ b/draft/man3/strerror.3 @@ -110,10 +110,10 @@ GNU 仕様の \fBstrerror_r\fP() は、 エラーメッセージを格納した \fIbuf\fP に文字列が格納される場合は、 最大で \fIbuflen\fP バイトが格納される (\fIbuflen\fP が小さ過ぎたときには文字列は切り詰められ、 \fIerrnum\fP は不定である)。 文字列には必ず終端ヌル文字 (\(aq\e0\(aq) が含まれる。 .SS strerror_l() -\fBstrerror_l\fP() is like \fBstrerror\fP(), but maps \fIerrnum\fP to a -locale\-dependent error message in the locale specified by \fIlocale\fP. The -behavior of \fBstrerror_l\fP() is undefined if \fIlocale\fP is the special locale -object \fBLC_GLOBAL_LOCALE\fP or is not a valid locale object handle. +\fBstrerror_l\fP() は \fBstrerror\fP() と同様だが、 \fIerrnum\fP を \fIlocale\fP +で指定されたロケールのロケール依存のエラーメッセージにマッピングする。 \fIlocale\fP が特別なロケールオブジェクト +\fBLC_GLOBAL_LOCALE\fP の場合、もしくは \fIlocale\fP が有効なロケールオブジェクトハンドルでない場合は、 +\fBstrerror_l\fP() の動作は未定義である。 .SH 返り値 関数 \fBstrerror\fP(), \fBstrerror_l\fP() と GNU 固有の関数 \fBstrerror_r\fP() はエラー内容を説明する文字列を返す。 エラー番号が未知の場合は "Unknown error nnn" という メッセージを返す。 diff --git a/draft/man3/strsep.3 b/draft/man3/strsep.3 index 521ff1fe..b837f5d4 100644 --- a/draft/man3/strsep.3 +++ b/draft/man3/strsep.3 @@ -59,13 +59,10 @@ glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参 .sp \fBstrsep\fP(): _BSD_SOURCE .SH 説明 -If \fI*stringp\fP is NULL, the \fBstrsep\fP() function returns NULL and does -nothing else. Otherwise, this function finds the first token in the string -\fI*stringp\fP, that is delimited by one of the bytes in the string \fIdelim\fP. -This token is terminated by overwriting the delimiter with a null byte -(\(aq\e0\(aq), and \fI*stringp\fP is updated to point past the token. In case -no delimiter was found, the token is taken to be the entire string -\fI*stringp\fP, and \fI*stringp\fP is made NULL. +\fI*stringp\fP が NULL の場合、 \fBstrsep\fP() 関数は何もせずに NULL を返す。 さもなければ、文字列 +\fIstringp\fP を \fIdelim\fP に含まれるいずれかのバイトで区切ったトークンのうち最初のものを返す。 トークンは、区切り文字を NULL +バイト (\(aq\e0\(aq) で上書きすることで 終端される。 \fI*stringp\fP は切り出されたトークンの次の位置を示すように更新される。 +区切り文字が見つからない場合、\fI*stringp\fP 文字列全体がトークンとして 扱われ、\fI*stringp\fP は NULL となる。 .SH 返り値 \fBstrsep\fP() 関数は、トークンへのポインタを返す。 つまり、元の \fI*stringp\fP の値を返す。 .SH 属性 diff --git a/draft/man3/strsignal.3 b/draft/man3/strsignal.3 index 6bc6c8aa..2378306d 100644 --- a/draft/man3/strsignal.3 +++ b/draft/man3/strsignal.3 @@ -76,10 +76,8 @@ _GNU_SOURCE 配列 \fIsys_siglist\fP はシグナルを説明する文字列を保持しており、 配列へのアクセスにはシグナル番号を添え字として用いる事ができる。 出来るだけこの配列の代わりに \fBstrsignal\fP() 関数を 使うべきである。 .SH 返り値 -The \fBstrsignal\fP() function returns the appropriate description string, or -an unknown signal message if the signal number is invalid. On some systems -(but not on Linux), NULL may instead be returned for an invalid signal -number. +\fBstrsignal\fP() 関数は、シグナルの適切な説明を返す。 もしシグナル番号が不正な場合は、未知のシグナル (unknown signal) +を示す メッセージを返す。 (Linux はそうではないが)不正なシグナル番号に対して、 NULL を返すシステムもある。 .SH 準拠 POSIX.1\-2008. Solaris と BSD 系にも存在する。 .SH 関連項目 diff --git a/draft/man3/strspn.3 b/draft/man3/strspn.3 index c2fc0cea..bc16616f 100644 --- a/draft/man3/strspn.3 +++ b/draft/man3/strspn.3 @@ -41,7 +41,7 @@ .\" .TH STRSPN 3 2014\-02\-28 "" "Linux Programmer's Manual" .SH 名前 -strspn, strcspn \- get length of a prefix substring +strspn, strcspn \- プレフィックス部分文字列の長さを返す .SH 書式 .nf \fB#include \fP diff --git a/draft/man3/strstr.3 b/draft/man3/strstr.3 index 8b2fa90d..9936b9c3 100644 --- a/draft/man3/strstr.3 +++ b/draft/man3/strstr.3 @@ -64,15 +64,13 @@ NULL バイト (\(aq\e0\(aq) は比較されない。 \fBstrcasestr\fP() 関数は \fBstrstr\fP() 関数と同様だが、 両方の引数に対して大文字小文字を無視する。 .SH 返り値 -These functions return a pointer to the beginning of the located substring, -or NULL if the substring is not found. +これらの関数は、見つかった部分文字列の開始を指すポインタを返し、 もし部分文字列が見つからない場合は NULL を返す。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" \fBstrstr\fP() 関数はスレッドセーフである。 .LP -The \fBstrcasestr\fP() function is thread\-safe with exceptions. It can be -safely used in multithreaded applications, as long as \fBsetlocale\fP(3) is -not called to change the locale during its execution. +\fBstrcasestr\fP() 関数は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 \fBstrstr\fP() 関数は C89 と C99 に準拠している。 \fBstrcasestr\fP() 関数は非標準拡張である。 .SH バグ diff --git a/draft/man3/strtod.3 b/draft/man3/strtod.3 index 7e8d69b2..b78f55e9 100644 --- a/draft/man3/strtod.3 +++ b/draft/man3/strtod.3 @@ -124,10 +124,8 @@ _XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L; オーバーフローまたはアンダーフローが起こった。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtod\fP(), \fBstrtof\fP(), and \fBstrtold\fP() functions are thread\-safe -with exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtod\fP(), \fBstrtof\fP(), \fBstrtold\fP() は、例外付きのスレッドセーフである。実行中に +\fBsetlocale\fP(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 C89 では \fBstrtod\fP() が、C99 では残りの 2 つの関数が記述されている。 .SH 注意 diff --git a/draft/man3/strtoimax.3 b/draft/man3/strtoimax.3 index b31d6d1f..b9cfaf77 100644 --- a/draft/man3/strtoimax.3 +++ b/draft/man3/strtoimax.3 @@ -52,10 +52,8 @@ strtoimax, strtoumax \- 文字列を整数に変換する \fBERANGE\fP に設定される。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtoimax\fP() and \fBstrtoumax\fP() functions are thread\-safe with -exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtoimax\fP() と \fBstrtoumax\fP() は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 C99, POSIX.1\-2001. .SH 関連項目 diff --git a/draft/man3/strtol.3 b/draft/man3/strtol.3 index cc6f5c01..3983298b 100644 --- a/draft/man3/strtol.3 +++ b/draft/man3/strtol.3 @@ -104,10 +104,8 @@ XOPEN_SOURCE\ >=\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE 実装によっては、変換が行われなかった場合 (数字がなく、0 を返した場合)、 \fIerrno\fP に \fBEINVAL\fP が設定される場合がある。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtol\fP(), \fBstrtoll\fP(), and \fBstrtoq\fP() functions are thread\-safe -with exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtol\fP(), \fBstrtoll\fP(), \fBstrtoq\fP() は、例外付きのスレッドセーフである。実行中に +\fBsetlocale\fP(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 \fBstrtol\fP() は SVr4, 4.3BSD, C89, C99 と POSIX.1\-2001 に準拠している。 \fBstrtoll\fP() は C99 と POSIX.1\-2001 に準拠している。 diff --git a/draft/man3/strtoul.3 b/draft/man3/strtoul.3 index f4f84df9..78a6e1f1 100644 --- a/draft/man3/strtoul.3 +++ b/draft/man3/strtoul.3 @@ -105,10 +105,8 @@ XOPEN_SOURCE\ >=\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE 実装によっては、変換が行われなかった場合 (数字がなく、0 を返した場合)、 \fIerrno\fP に \fBEINVAL\fP が設定される場合がある。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtoul\fP(), \fBstrtoull\fP(), and \fBstrtouq\fP() functions are thread\-safe -with exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtoul\fP(), \fBstrtoull\fP(), \fBstrtouq\fP() は、例外付きのスレッドセーフである。実行中に +\fBsetlocale\fP(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 \fBstrtoul\fP() は SVr4, C89, C99 と POSIX\-2001 に準拠している。 \fBstrtoull\fP() は C99 と POSIX.1\-2001 に準拠している。 diff --git a/draft/man3/sysv_signal.3 b/draft/man3/sysv_signal.3 index 93404a36..eb3d30d3 100644 --- a/draft/man3/sysv_signal.3 +++ b/draft/man3/sysv_signal.3 @@ -54,9 +54,9 @@ sysv_signal \- System V 方式のシグナル処理 \fBsysv_signal\fP() 関数はシグナルハンドラの直前の値を返す。 エラーの場合、 \fBSIG_ERR\fP を返す。 .SH エラー \fBsignal\fP(2) と同じ。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" -The \fBsysv_signal\fP() function is thread\-safe. +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" +\fBsysv_signal\fP() 関数はスレッドセーフである。 .SH 準拠 この関数は非標準である。 .SH 注意 diff --git a/draft/man7/capabilities.7 b/draft/man7/capabilities.7 index ba32c3cb..33ccc6fb 100644 --- a/draft/man7/capabilities.7 +++ b/draft/man7/capabilities.7 @@ -610,13 +610,12 @@ set\-user\-ID が すべて 0 以外の値になった場合、許可と実効 .IP 3. 実効 UID が 0 以外から 0 に変更された場合、 許可ケーパビリティセットの内容を実効ケーパビリティセットにコピーする。 .IP 4. -If the filesystem user ID is changed from 0 to nonzero (see \fBsetfsuid\fP(2)) -then the following capabilities are cleared from the effective set: -\fBCAP_CHOWN\fP, \fBCAP_DAC_OVERRIDE\fP, \fBCAP_DAC_READ_SEARCH\fP, \fBCAP_FOWNER\fP, -\fBCAP_FSETID\fP, \fBCAP_LINUX_IMMUTABLE\fP (since Linux 2.6.30), -\fBCAP_MAC_OVERRIDE\fP, and \fBCAP_MKNOD\fP (since Linux 2.6.30). If the -filesystem UID is changed from nonzero to 0, then any of these capabilities -that are enabled in the permitted set are enabled in the effective set. +ファイルシステム UID が 0 から 0 以外に変更された場合 (\fBsetfsuid\fP(2) +参照)、実効ケーパビリティセットの以下のケーパビリティがクリアされる: \fBCAP_CHOWN\fP, \fBCAP_DAC_OVERRIDE\fP, +\fBCAP_DAC_READ_SEARCH\fP, \fBCAP_FOWNER\fP, \fBCAP_FSETID\fP, \fBCAP_LINUX_IMMUTABLE\fP +(Linux 2.6.30 以降), \fBCAP_MAC_OVERRIDE\fP, \fBCAP_MKNOD\fP (Linux 2.6.30 以降)。 +ファイルシステム UID が 0 以外から 0 に変更された場合、 上記のケーパビリティのうち許可ケーパビリティセットで有効になっているものが +実効ケーパビリティセットで有効にされる。 .PP .\" 各種 UID のうち少なくとも一つが 0 であるスレッドが、 その UID の全てが 0 以外になったときに許可ケーパビリティセットが @@ -694,11 +693,11 @@ prctl(PR_SET_SECUREBITS, CONFIG_SECURITY_CAPABILITIES により有効/無効を切り替えることができる。 .\" 7b9a7ec565505699f503b4fcf61500dceb36e744 -The \fI/proc/PID/task/TID/status\fP file can be used to view the capability -sets of a thread. The \fI/proc/PID/status\fP file shows the capability sets of -a process's main thread. Before Linux 3.8, nonexistent capabilities were -shown as being enabled (1) in these sets. Since Linux 3.8, all nonexistent -capabilities (above \fBCAP_LAST_CAP\fP) are shown as disabled (0). +\fI/proc/PID/task/TID/status\fP ファイルを使うと、スレッドのケーパビリティセットを見ることができる。 +\fI/proc/PID/status\fP ファイルには、プロセスのメインスレッドのケーパビリティセットが表示される。 Linux 3.8 より前では、 +これらのケーパビリティセットの表示で、 存在しないケーパビリティはすべて有効 (1) として表示される。 Linux 3.8 以降では、 +存在しないケーパビリティはすべて無効 (0) として表示される。 (\fBCAP_LAST_CAP\fP +より大きい値を持つケーパビリティが存在しないケーパビリティである)。 \fIlibcap\fP パッケージは、ケーパビリティを設定・取得するための ルーチン群を提供している。これらのインタフェースは、 \fBcapset\fP(2) と \fBcapget\fP(2) が提供するインターフェースと比べて、より使いやすく、変更される可能性が少ない。 このパッケージでは、 diff --git a/draft/man7/environ.7 b/draft/man7/environ.7 index cc843e61..134a0e60 100644 --- a/draft/man7/environ.7 +++ b/draft/man7/environ.7 @@ -74,11 +74,9 @@ environ \- ユーザ環境 ユーザのログインディレクトリ。 \fBlogin\fP(1) がパスワードファイル \fBpasswd\fP(5) から取得して設定する。 .TP \fBLANG\fP -The name of a locale to use for locale categories when not overridden by -\fBLC_ALL\fP or more specific environment variables such as \fBLC_COLLATE\fP, -\fBLC_CTYPE\fP, \fBLC_MESSAGES\fP, \fBLC_MONETARY\fP, \fBLC_NUMERIC\fP, and \fBLC_TIME\fP -(see \fBlocale\fP(7) for further details of the \fBLC_*\fP environment -variables). +ロケールの各カテゴリで使用されるロケールの名前。\fBLC_ALL\fP や、 より狭い範囲を対象とする環境変数 (\fBLC_COLLATE\fP, +\fBLC_CTYPE\fP, \fBLC_MESSAGES\fP, \fBLC_MONETARY\fP, \fBLC_NUMERIC\fP, \fBLC_TIME\fP など) +によって上書きされることもある (\fBLC_*\fP 環境変数のさらなる詳細は \fBlocale\fP(7) 参照)。 .TP \fBPATH\fP \fBsh\fP(1) や他のプログラムが、フルパスで与えられなかった実行ファイルを検索するとき、 ファイル名に前置されるディレクトリの配列。 diff --git a/release/man2/access.2 b/release/man2/access.2 index 91f7321d..46676e15 100644 --- a/release/man2/access.2 +++ b/release/man2/access.2 @@ -107,32 +107,27 @@ _ATFILE_SOURCE 呼び出し元プロセスが特権プロセス (つまり、プロセスの実 UID が 0) の場合、 通常のファイルに対する \fBX_OK\fP のチェックは、そのファイルの所有者、グループ、他人のいずれかの 実行許可が有効になっていれば成功する。 .SS "faccessat ()" -The \fBfaccessat\fP() system call operates in exactly the same way as -\fBaccess\fP(), except for the differences described here. +\fBfaccessat\fP() システムコールは \fBaccess\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBaccess\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBaccess\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBaccess\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBaccess\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 -\fIflags\fP is constructed by ORing together zero or more of the following -values: +\fIflags\fP は以下に示す値の 0 個以上の OR (論理和) をとって作成される。 .TP \fBAT_EACCESS\fP -Perform access checks using the effective user and group IDs. By default, -\fBfaccessat\fP() uses the real IDs (like \fBaccess\fP()). +アクセスチェックを実行ユーザー/グループ ID を使って行う。デフォルトでは、\fBfaccessat\fP() は (\fBaccess\fP() と同様に) 実 +ID を使用する。 .TP \fBAT_SYMLINK_NOFOLLOW\fP -If \fIpathname\fP is a symbolic link, do not dereference it: instead return -information about the link itself. +\fIpathname\fP がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リンク自身の情報を返す。 .PP -See \fBopenat\fP(2) for an explanation of the need for \fBfaccessat\fP(). +\fBfaccessat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 成功した場合 (要求した全てについて許可が得られたか、 \fImode\fP が \fBF_OK\fP でファイルが存在した場合)、ゼロが返される。 エラーの場合 (\fImode\fP の少なくとも一つのビットで要求した許可がなかった場合、 \fImode\fP が \fBF_OK\fP @@ -176,7 +171,7 @@ I/O エラーが発生した。 \fBETXTBSY\fP 実行中のファイルに対して書き込みを要求した。 .PP -The following additional errors can occur for \fBfaccessat\fP(): +\fBfaccessat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 @@ -185,8 +180,7 @@ The following additional errors can occur for \fBfaccessat\fP(): \fIflags\fP に無効なフラグが指定された。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .SH バージョン \fBfaccessat\fP() はバージョン 2.6.16 で Linux に追加された。 ライブラリによるサポートは glibc バージョン 2.4 で追加された。 @@ -228,11 +222,10 @@ POSIX.1\-2001 では、 呼び出し元プロセスが適切な特権を持っ のマッピングはサーバーで 行なわれ、権利のチェックをするクライアントには見えないからである。 (NFS バージョン 3 以降ではサーバー側でチェックが実行される。) 同様の問題は FUSE マウントでも起こり得る。 .SS "faccessat ()" -The raw \fBfaccessat\fP() system call takes only the first three arguments. -The \fBAT_EACCESS\fP and \fBAT_SYMLINK_NOFOLLOW\fP flags are actually implemented -within the glibc wrapper function for \fBfaccessat\fP(). If either of these -flags is specified, then the wrapper function employs \fBfstatat\fP(2) to -determine access permissions. +生の \fBfaccessat\fP() システムコールは、最初の 3 つの引き数だけを取る。フラグ \fBAT_EACCESS\fP と +\fBAT_SYMLINK_NOFOLLOW\fP は実際には \fBfaccessat\fP() の glibc +のラッパー関数内で実装されている。これらのフラグのいずれかが指定された場合、ラッパー関数は \fBfstatat\fP(2) +を使ってアクセス許可の判定を行う。 .SH バグ .\" This behavior appears to have been an implementation accident. バージョン 2.4 (とそれ以前) のカーネルには、スーパーユーザでの \fBX_OK\fP のチェックの扱いに奇妙な点がある。 ディレクトリ以外のファイルで @@ -240,9 +233,9 @@ determine access permissions. \fBX_OK\fP だけが指定されたときだけであり \fImode\fP に \fBR_OK\fP や \fBW_OK\fP が一緒に指定された場合には \fBaccess\fP() は 0 を返す。 (バージョン 2.6.3 以前の) 初期の 2.6 系のカーネルも 2.4 系のカーネルと同様の動作をする。 -In kernels before 2.6.20, these calls ignored the effect of the \fBMS_NOEXEC\fP -flag if it was used to \fBmount\fP(2) the underlying filesystem. Since kernel -2.6.20, the \fBMS_NOEXEC\fP is honored +2.6.20 より前のカーネルでは、 これらのシステムコールはファイルが存在するファイルシステムを \fBmount\fP(2) する際に指定された +\fBMS_NOEXEC\fP フラグの効果を無視していた。 カーネル 2.6.20 以降では、 \fBMS_NOEXEC\fP +フラグは考慮されるようになっている。 .SH 関連項目 \fBchmod\fP(2), \fBchown\fP(2), \fBopen\fP(2), \fBsetgid\fP(2), \fBsetuid\fP(2), \fBstat\fP(2), \fBeuidaccess\fP(3), \fBcredentials\fP(7), \fBpath_resolution\fP(7), diff --git a/release/man2/alarm.2 b/release/man2/alarm.2 index 61bb854e..e5b46fc8 100644 --- a/release/man2/alarm.2 +++ b/release/man2/alarm.2 @@ -61,8 +61,8 @@ SVr4, POSIX.1\-2001, 4.3BSD. .SH 注意 \fBalarm\fP() と \fBsetitimer\fP(2) は同じタイマーを共有している; 片方を呼び出すことはもう一方の 使用に影響を与える。 -Alarms created by \fBalarm()\fP are preserved across \fBexecve\fP(2) and are not -inherited by children created via \fBfork\fP(2). +\fBalarm\fP() で作成されたアラームは \fBexecve\fP(2) の前後で保持され、 \fBfork\fP(2) +で作成された子プロセスには継承されない。 .PP \fBsleep\fP(3) は \fBSIGALRM\fP を利用して実装されているかもしれない。 \fBalarm\fP() と \fBsleep\fP(3) を混ぜて使用してはならない。 diff --git a/release/man2/capget.2 b/release/man2/capget.2 index c417faea..47ccdd1a 100644 --- a/release/man2/capget.2 +++ b/release/man2/capget.2 @@ -76,12 +76,11 @@ typedef struct __user_cap_data_struct { .fi .in -4n .sp -The \fIeffective\fP, \fIpermitted\fP, and \fIinheritable\fP fields are bit masks of -the capabilities defined in \fBcapabilities\fP(7). Note the \fBCAP_*\fP values -are bit indexes and need to be bit\-shifted before ORing into the bit -fields. To define the structures for passing to the system call you have to -use the \fIstruct __user_cap_header_struct\fP and \fIstruct -__user_cap_data_struct\fP names because the typedefs are only pointers. +フィールド \fIeffective\fP, \fIpermitted\fP, \fIinheritable\fP は、 \fBcapabilities\fP(7) +で定義されるケーパビリティのビットマスクである。 \fICAP_*\fP はビット番号を表すインデックス値であり、 ビットフィールドに OR を行う前に +\fICAP_*\fP の値の分だけビットシフトを行う必要がある。 typedef の方はポインタなので、 このシステムコールに渡す構造体を定義するには、 +\fIstruct __user_cap_header_struct\fP と \fIstruct __user_cap_data_struct\fP +という名前を使用しなければならない。 カーネル 2.6.25 より前では、バージョン \fB_LINUX_CAPABILITY_VERSION_1\fP の 32 ビットケーパビリティが推奨である。 カーネル 2.6.25 以降では、バージョン \fB_LINUX_CAPABILITY_VERSION_2\fP の 64 diff --git a/release/man2/chmod.2 b/release/man2/chmod.2 index 93d50927..f81f524f 100644 --- a/release/man2/chmod.2 +++ b/release/man2/chmod.2 @@ -45,7 +45,7 @@ .\" .TH CHMOD 2 2014\-02\-21 Linux "Linux Programmer's Manual" .SH 名前 -chmod, fchmod, fchmodat \- change permissions of a file +chmod, fchmod, fchmodat \- ファイルのモードを変更する .SH 書式 .nf \fB#include \fP @@ -159,34 +159,30 @@ NFS ファイルシステム上では、パーミッションを制限すると クライアント側でファイル属性のキャッシュが有効になっている場合に、 パーミッションの制限を緩くすると、 他のクライアントに情報が伝わるのが遅れるかもしれない。 .SS fchmodat() -The \fBfchmodat\fP() system call operates in exactly the same way as -\fBchmod\fP(), except for the differences described here. +\fBfchmodat\fP() システムコールは \fBchmod\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBchmod\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBchmod\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBchmod\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBchmod\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 -\fIflags\fP can either be 0, or include the following flag: +\fIflags\fP には 0 か、以下のフラグを指定することができる。 .TP \fBAT_SYMLINK_NOFOLLOW\fP -If \fIpathname\fP is a symbolic link, do not dereference it: instead operate on -the link itself. This flag is not currently implemented. +\fIpathname\fP +がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リンク自身に対して操作を行う。このフラグは現在のところ実装されていない。 .PP -See \fBopenat\fP(2) for an explanation of the need for \fBfchmodat\fP(). +\fBfchmodat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。 .SH エラー -Depending on the filesystem, errors other than those listed below can be -returned. +ファイルシステムによっては、下記の一覧にない他のエラーが返されることもある。 -The more general errors for \fBchmod\fP() are listed below: +\fBchmod\fP() のごく一般的なエラーを挙げる: .TP \fBEACCES\fP パス名の構成要素に検索許可がない (\fBpath_resolution\fP(7) も見よ)。 @@ -232,8 +228,7 @@ I/O エラーが発生した。 \fBEROFS\fP 上記を参照。 .PP -The same errors that occur for \fBchmod\fP() can also occur for -\fBfchmodat\fP(). The following additional errors can occur for \fBfchmodat\fP(): +\fBchmod\fP() で発生するのと同じエラーが \fBfchmodat\fP() でも起こる。 \fBfchmodat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 @@ -242,23 +237,21 @@ The same errors that occur for \fBchmod\fP() can also occur for \fIflags\fP に無効なフラグが指定された。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .TP \fBENOTSUP\fP -\fIflags\fP specified \fBAT_SYMLINK_NOFOLLOW\fP, which is not supported. +\fIflags\fP に対応していないフラグ \fBAT_SYMLINK_NOFOLLOW\fP が指定された。 .SH バージョン -\fBfchmodat\fP() was added to Linux in kernel 2.6.16; library support was -added to glibc in version 2.4. +\fBfchmodat\fP() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 以降の glibc +で利用できる。 .SH 準拠 \fBchmod\fP(), \fBfchmod\fP(): 4.4BSD, SVr4, POSIX.1\-2001i, POSIX.1\-2008. \fBfchmodat\fP(): POSIX.1\-2008. .SH 注意 -The GNU C library \fBfchmodat\fP() wrapper function implements the -POSIX\-specified interface described in this page. This interface differs -from the underlying Linux system call, which does \fInot\fP have a \fIflags\fP -argument. +GNU C ライブラリの \fBfchmodat\fP() ラッパー関数は、このページで説明している POSIX +で規定されたインターフェースを実装している。このインターフェースは、内部で呼ばれる Linux のシステムコールとは異なる。システムコールは +\fIflags\fP 引き数を\fI持たない\fP。 .SH 関連項目 \fBchown\fP(2), \fBexecve\fP(2), \fBopen\fP(2), \fBstat\fP(2), \fBpath_resolution\fP(7), \fBsymlink\fP(7) diff --git a/release/man2/chown.2 b/release/man2/chown.2 index 237d1f65..2a6ec312 100644 --- a/release/man2/chown.2 +++ b/release/man2/chown.2 @@ -124,46 +124,39 @@ POSIX はこの動作やルートが \fBchown\fP() を行なった場合につ \fBS_ISGID\fP ビットは強制ロック (mandatory locking) を意味している。 そしてそれは \fBchown\fP() ではクリアできない。 .SS fchownat() -The \fBfchownat\fP() system call operates in exactly the same way as -\fBchown\fP(), except for the differences described here. +\fBfchownat\fP() システムコールは \fBchown\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBchown\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBchown\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBchown\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBchown\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 -The \fIflags\fP argument is a bit mask created by ORing together 0 or more of -the following values; +\fIflags\fP 引き数は、以下に示す値の 0 個以上の OR (論理和) をとって作成される ビットマスクである。 .TP \fBAT_EMPTY_PATH\fP (Linux 2.6.39 以降) .\" commit 65cfc6722361570bfe255698d9cd4dccaf47570d .\" Before glibc 2.16, defining _ATFILE_SOURCE sufficed -If \fIpathname\fP is an empty string, operate on the file referred to by -\fIdirfd\fP (which may have been obtained using the \fBopen\fP(2) \fBO_PATH\fP -flag). In this case, \fIdirfd\fP can refer to any type of file, not just a -directory. This flag is Linux\-specific; define \fB_GNU_SOURCE\fP to obtain its -definition. +\fIpathname\fP が空文字列の場合、 \fIdirfd\fP が参照するファイルに対して操作を行う (\fIdirfd\fP は \fBopen\fP(2) +\fBO_PATH\fP フラグを使って取得することができる)。この場合、 \fIdirfd\fP +は、ディレクトリだけでなく、任意のタイプのファイルを参照することができる。このフラグは Linux 固有であり、その定義を得るにあ +\fB_GNU_SOURCE\fP を定義すること。 .TP \fBAT_SYMLINK_NOFOLLOW\fP -If \fIpathname\fP is a symbolic link, do not dereference it: instead operate on -the link itself, like \fBlchown\fP(). (By default, \fBfchownat\fP() dereferences -symbolic links, like \fBchown\fP().) +\fIpathname\fP がシンボリックリンクの場合、リンクの展開を行わない。代わりに、\fBlchown\fP() +同様、リンク自身に対して操作を行う。(デフォルトでは \fBfchownat\fP() は \fBchown\fP() と同様にシンボリックリンクの展開を行う。) .PP -See \fBopenat\fP(2) for an explanation of the need for \fBfchownat\fP(). +\fBfchownat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。 .SH エラー -Depending on the filesystem, errors other than those listed below can be -returned. +ファイルシステムによっては、下記の一覧にない他のエラーが返されることもある。 -The more general errors for \fBchown\fP() are listed below. +\fBchown\fP() でごく一般的なエラーを以下に挙げる: .TP \fBEACCES\fP パス名の構成要素に検索許可がない (\fBpath_resolution\fP(7) も見よ)。 @@ -209,8 +202,7 @@ i ノード (inode) を変更する際に低レベル I/O エラーが発生し \fBEROFS\fP 上記を参照。 .PP -The same errors that occur for \fBchown\fP() can also occur for -\fBfchownat\fP(). The following additional errors can occur for \fBfchownat\fP(): +\fBchown\fP() で発生するのと同じエラーが \fBfchownat\fP() でも起こる。 \fBfchownat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 @@ -219,11 +211,10 @@ The same errors that occur for \fBchown\fP() can also occur for \fIflags\fP に無効なフラグが指定された。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .SH バージョン -\fBfchownat\fP() was added to Linux in kernel 2.6.16; library support was -added to glibc in version 2.4. +\fBfchownat\fP() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 以降の glibc +で利用できる。 .SH 準拠 \fBchown\fP(), \fBfchown\fP(), \fBlchown\fP(): 4.4BSD, SVr4, POSIX.1\-2001, POSIX.1\-2008. @@ -277,7 +268,7 @@ Linux 2.1.81 以降では \fBchown\fP() はシンボリックリンクを追跡 以下のプログラムは、 二つ目のコマンドライン引き数で指定された名前のファイルの所有者を、 一つ目のコマンドライン引き数で指定された値に変更する。 新しい所有者は、数字のユーザ ID かユーザ名のいずれかで指定できる (ユーザ名で指定した場合には、 \fBgetpwnam\fP(3) を使ってシステムのパスワードファイルの検索が行われ、 ユーザ ID への変換が行われる)。 -.SS "Program source" +.SS プログラムのソース .nf #include #include diff --git a/release/man2/close.2 b/release/man2/close.2 index 1622b950..75055c86 100644 --- a/release/man2/close.2 +++ b/release/man2/close.2 @@ -85,14 +85,11 @@ I/O エラーが発生した。 .\" SVr4 documents an additional ENOLINK error condition. SVr4, 4.3BSD, POSIX.1\-2001. .SH 注意 -Not checking the return value of \fBclose\fP() is a common but nevertheless -serious programming error. It is quite possible that errors on a previous -\fBwrite\fP(2) operation are first reported at the final \fBclose\fP(). Not -checking the return value when closing the file may lead to silent loss of -data. This can especially be observed with NFS and with disk quota. Note -that the return value should only be used for diagnostics. In particular -\fBclose\fP() should not be retried after an \fBEINTR\fP since this may cause a -reused descriptor from another thread to be closed. +\fBclose\fP() の返り値のチェックはよく省略されるが、 これは深刻なプログラミングエラーである。 前の \fBwrite\fP(2) +処理に関するエラーが最後の \fBclose\fP() のときになって初めて通知される場合がありうる。 ファイルクローズの際に返り値をチェックしないと、 +気付かないうちにデータを失ってしまうかもしれない。 これは特に NFS +やディスククォータを使用した場合に見られる。返り値は状態確認用にのみ利用すべき点に注意すること。特に、\fBEINTR\fP 後に \fBclose\fP() +を再度行うべきではない。なぜなら、これにより、別のスレッドが再利用したディスクリプタをクローズしてしまう可能性があるからだ。 .PP クローズに成功しても、データがディスクに保存されたかどうかは 保証されない (カーネルが書きこみを遅延させることがあるためである)。 ストリームがクローズされるときにバッファをフラッシュするかどうかは、 ファイルシステムによって異なる。 diff --git a/release/man2/execve.2 b/release/man2/execve.2 index 3035fcaf..0836836f 100644 --- a/release/man2/execve.2 +++ b/release/man2/execve.2 @@ -259,8 +259,7 @@ POSIX.1\-2001 は、動作が無視かデフォルトに設定されている全 ファイルシステムが \fInoexec\fP でマウントされている。 .TP \fBEFAULT\fP -\fIfilename\fP or one of the pointers in the vectors \fIargv\fP or \fIenvp\fP points -outside your accessible address space. +\fIfilename\fP または配列 \fIargv\fP か \fIenvp\fP のポインタの一つがアクセス可能なアドレス空間の外を指している。 .TP \fBEINVAL\fP ELF 実行形式で複数の PT_INTERP セグメントが存在する。 (すなわち複数のインタプリタを指定した。) diff --git a/release/man2/fcntl.2 b/release/man2/fcntl.2 index ed25ae1b..f87bfd2a 100644 --- a/release/man2/fcntl.2 +++ b/release/man2/fcntl.2 @@ -138,12 +138,11 @@ fcntl \- ファイルディスクリプタの操作を行う \fIarg\fP は無視される。 .TP \fBF_SETFL\fP (\fIint\fP) -Set the file status flags to the value specified by \fIarg\fP. File access -mode (\fBO_RDONLY\fP, \fBO_WRONLY\fP, \fBO_RDWR\fP) and file creation flags (i.e., -\fBO_CREAT\fP, \fBO_EXCL\fP, \fBO_NOCTTY\fP, \fBO_TRUNC\fP) in \fIarg\fP are ignored. On -Linux this command can change only the \fBO_APPEND\fP, \fBO_ASYNC\fP, \fBO_DIRECT\fP, -\fBO_NOATIME\fP, and \fBO_NONBLOCK\fP flags. It is not possible to change the -\fBO_DSYNC\fP and \fBO_SYNC\fP flags; see BUGS, below. +ファイル状態フラグに \fIarg\fP で指定された値を設定する。 \fIarg\fP のうち、ファイルのアクセスモード (\fBO_RDONLY\fP, +\fBO_WRONLY\fP, \fBO_RDWR\fP) とファイル作成フラグ (すなわち \fBO_CREAT\fP, \fBO_EXCL\fP, +\fBO_NOCTTY\fP, \fBO_TRUNC\fP) に関するビットは無視される。 Linux では、このコマンドで変更できるのは +\fBO_APPEND\fP, \fBO_ASYNC\fP, \fBO_DIRECT\fP, \fBO_NOATIME\fP, \fBO_NONBLOCK\fP +フラグだけである。フラグ \fBO_DSYNC\fP, \fBO_SYNC\fP を変更することはできない。下記の「バグ」を参照。 .SS アドバイザリロック \fBF_SETLK\fP, \fBF_SETLKW\fP, \fBF_GETLK\fP は、レコードロックの獲得/解放/テストのために使用する (レコードロックはファイルセグメントロックや ファイル領域ロックとも呼ばれる)。 三番目の引き数 \fIlock\fP @@ -203,15 +202,12 @@ POSIX.1\-2001 では、負の値の \fIl_len\fP をサポートする実装を \fBEINTR\fP が設定される; \fBsignal\fP(7) 参照)。 .TP \fBF_GETLK\fP (\fIstruct flock *\fP) -On input to this call, \fIlock\fP describes a lock we would like to place on -the file. If the lock could be placed, \fBfcntl\fP() does not actually place -it, but returns \fBF_UNLCK\fP in the \fIl_type\fP field of \fIlock\fP and leaves the -other fields of the structure unchanged. If one or more incompatible locks -would prevent this lock being placed, then \fBfcntl\fP() returns details about -one of these locks in the \fIl_type\fP, \fIl_whence\fP, \fIl_start\fP, and \fIl_len\fP -fields of \fIlock\fP and sets \fIl_pid\fP to be the PID of the process holding -that lock. Note that the information returned by \fBF_GETLK\fP may already be -out of date by the time the caller inspects it. +このコールの呼び出し時には、 \fIlock\fP にはそのファイルに適用しようとするロックに関する情報が入っている。 ロックを適用できる場合には、 +\fBfcntl\fP() は実際にはロックを行わず、構造体 \fIlock\fP の \fIl_type\fP フィールドに \fBF_UNLCK\fP +を設定し、他のフィールドは変更せずに、復帰する。 違う種別のロックが (一つもしくは複数) 適用されていて ロックを適用できないような場合には、 +\fBfcntl\fP() は、原因となったロックの一つについての詳細情報を構造体 \fIlock\fP のフィールド \fIl_type\fP, +\fIl_whence\fP, \fIl_start\fP, \fIl_len\fP に格納し、また \fIl_pid\fP にロックを保持しているプロセスの PID +を設定して、復帰する。 \fBF_GETLK\fP が返す情報は呼び出し元がその情報を使用するときにはすでに古くなっている可能性がある点に注意すること。 .P 読み出しロックを適用するには、 \fIfd\fP は読み出し用にオープンされていなければならない。 書き込みロックを適用するには、 \fIfd\fP は書き込み用にオープンされていなければならない。 読み書き両方のロックを適用するには、読み書き両用で ファイルをオープンしなければならない。 @@ -384,13 +380,11 @@ ID が \fIpid\fP で指定された値のプロセスグループにそのシグ これらの機構を使用することで、ほとんどの場合で \fBselect\fP(2) や \fBpoll\fP(2) を使用せずに完全な非同期 I/O を実装することができる。 .PP -The use of \fBO_ASYNC\fP is specific to BSD and Linux. The only use of -\fBF_GETOWN\fP and \fBF_SETOWN\fP specified in POSIX.1 is in conjunction with the -use of the \fBSIGURG\fP signal on sockets. (POSIX does not specify the -\fBSIGIO\fP signal.) \fBF_GETOWN_EX\fP, \fBF_SETOWN_EX\fP, \fBF_GETSIG\fP, and -\fBF_SETSIG\fP are Linux\-specific. POSIX has asynchronous I/O and the -\fIaio_sigevent\fP structure to achieve similar things; these are also -available in Linux as part of the GNU C Library (Glibc). +\fBO_ASYNC\fP の使用方法は BSD と Linux に特有である。 POSIX.1 で規定されている \fBF_GETOWN\fP と +\fBF_SETOWN\fP の使用方法は、ソケットに対する \fBSIGURG\fP シグナルとの組み合わせだけである (POSIX は \fBSIGIO\fP +シグナルは規定していない)。 \fBF_GETOWN_EX\fP, \fBF_SETOWN_EX\fP, \fBF_GETSIG\fP, \fBF_SETSIG\fP は +Linux 固有である。POSIX には、同様のことを行うために、非同期 I/O と \fIaio_sigevent\fP 構造体がある。Linux +では、GNU C ライブラリ (Glibc) の一部として これらも利用可能である。 .SS "リース (leases)" (Linix 2.4 以降で利用可能) \fBF_SETLEASE\fP は、 \fIfd\fP が参照するオープンファイル記述に対して新しいリースを設定するのに使用される。 \fBF_GETLEASE\fP は、 \fIfd\fP @@ -651,9 +645,8 @@ SVr4, 4.3BSD, POSIX.1\-2001. POSIX.1\-2001 で規定されている操作は、 .\" FIXME . According to POSIX.1-2001, O_SYNC should also be modifiable .\" via fcntl(2), but currently Linux does not permit this .\" See http://bugzilla.kernel.org/show_bug.cgi?id=5994 -It is not possible to use \fBF_SETFL\fP to change the state of the \fBO_DSYNC\fP -and \fBO_SYNC\fP flags. Attempts to change the state of these flags are -silently ignored. +\fBF_SETFL\fP を使って、 フラグ \fBO_DSYNC\fP と \fBO_SYNC\fP +の状態を変更することはできない。これらのフラグの状態を変更しようとした場合には、黙って無視される。 .SS F_GETOWN .\" glibc source: sysdeps/unix/sysv/linux/i386/sysdep.h .\" mtk, Dec 04: some limited testing on alpha and ia64 seems to diff --git a/release/man2/getgroups.2 b/release/man2/getgroups.2 index f68fc308..b1c6cd0a 100644 --- a/release/man2/getgroups.2 +++ b/release/man2/getgroups.2 @@ -104,13 +104,11 @@ glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参 SVr4, 4.3BSD. \fBgetgroups\fP() 関数は POSIX.1\-2001 に準拠している。 \fBsetgroups\fP() は特権を必要とするため、POSIX.1\-2001 に従っていない。 .SH 注意 -A process can have up to \fBNGROUPS_MAX\fP supplementary group IDs in addition -to the effective group ID. The constant \fBNGROUPS_MAX\fP is defined in -\fI\fP. The set of supplementary group IDs is inherited from -the parent process, and preserved across an \fBexecve\fP(2). +プロセスは、実効グループ ID に加え、最大 \fBNGROUPS_MAX\fP までの補助グループ ID を持つことができる。 定数 +\fBNGROUPS_MAX\fP は \fI\fP で定義されている。 補助グループ ID の集合は親プロセスから継承され、 +\fBexecve\fP(2) の前後で保持される。 -The maximum number of supplementary group IDs can be found at run time using -\fBsysconf\fP(3): +補助グループ ID の最大数は、実行時に \fBsysconf\fP(3) を使って以下のようにして調べることができる: .nf long ngroups_max; diff --git a/release/man2/getrlimit.2 b/release/man2/getrlimit.2 index 364f0aa5..b369d1c6 100644 --- a/release/man2/getrlimit.2 +++ b/release/man2/getrlimit.2 @@ -180,7 +180,7 @@ ID にロックされる 共有メモリセグメント (\fBshmget\fP(2) を参 この制限は特権プロセスによってロックされるメモリの合計を制御していた。 Linux 2.6.9 以降では、特権プロセスがロックするメモリの合計に制限はなく、 代わりにこの制限は非特権プロセスがロックするメモリの合計に 適用されるようになった。 .TP -\fBRLIMIT_MSGQUEUE\fP (since Linux 2.6.8) +\fBRLIMIT_MSGQUEUE\fP (Linux 2.6.8 以降) 呼び出し元プロセスの実ユーザー ID に対して、 POSIX メッセージキューのために確保できるバイト数の制限を指定する。 この制限は \fBmq_open\fP(3) に対して適用される。 ユーザが作成した各々のメッセージキューのバイト数は 以下の式により計算され、(そのキューが削除されるまでの間) この制限の計算対象に含められる。 @@ -216,11 +216,11 @@ ID にロックされる 共有メモリセグメント (\fBshmget\fP(2) を参 プロセスの resident set (RAM 上に存在する仮想ページの数) の 上限を (ページ数で) 指定する。 この制限は 2.4.30 より前でしか影響がなく、 \fBmadvise\fP(2) に \fBMADV_WILLNEED\fP を指定した関数コールにしか影響しない。 .TP -\fBRLIMIT_RTPRIO\fP (since Linux 2.6.12, but see BUGS) +\fBRLIMIT_RTPRIO\fP (Linux 2.6.12 以降, バグの節も参照) \fBsched_setscheduler\fP(2) や \fBsched_setparam\fP(2) を使って設定できる、そのプロセスのリアルタイム優先度の上限を指定する。 .TP -\fBRLIMIT_RTTIME\fP (since Linux 2.6.25) +\fBRLIMIT_RTTIME\fP (Linux 2.6.25 以降) リアルタイムスケジューリング方針でスケジューリングされるプロセスが ブロッキング型のシステムコールを呼び出さずに消費することのできる CPU 時間の合計についての上限を (マイクロ秒単位で) 指定する。 この上限の目的のため、プロセスがブロッキング型のシステムコールを 呼び出す度に、消費された CPU 時間のカウントは 0 にリセットされる。 プロセスが CPU を使い続けようとしたが他のプロセスに置き換えられた (preempted) @@ -233,7 +233,7 @@ CPU 時間のカウントは 0 にリセットされる。 プロセスが CPU この上限を意図的に使用するのは、暴走したリアルタイムプロセスを 停止して、システムが動かなくなるのを避ける場合である。 .TP -\fBRLIMIT_SIGPENDING\fP (since Linux 2.6.8) +\fBRLIMIT_SIGPENDING\fP (Linux 2.6.8 以降) .\" This replaces the /proc/sys/kernel/rtsig-max system-wide limit .\" that was present in kernels <= 2.6.7. MTK Dec 04 呼び出し元プロセスの実ユーザー ID に対して キューに入れられるシグナルの diff --git a/release/man2/mkdir.2 b/release/man2/mkdir.2 index 13c7b8a3..0165d40a 100644 --- a/release/man2/mkdir.2 +++ b/release/man2/mkdir.2 @@ -81,21 +81,18 @@ group ID ビットがセットされていたり、ファイルシステムが B もし親ディレクトリに set group ID ビットがセットされていれば新しく作成される ディレクトリにも set group ID ビットがセットされる。 .SS mkdirat() -The \fBmkdirat\fP() system call operates in exactly the same way as -\fBmkdir\fP(), except for the differences described here. +\fBmkdirat\fP() システムコールは \fBmkdir\fP() と全く同様に動作するが、以下で説明する点が異なる。 -If the pathname given in \fIpathname\fP is relative, then it is interpreted -relative to the directory referred to by the file descriptor \fIdirfd\fP -(rather than relative to the current working directory of the calling -process, as is done by \fBmkdir\fP() for a relative pathname). +\fIpathname\fP で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター \fIdirfd\fP +が参照するディレクトリに対する相対パスと解釈される (\fBmkdir\fP() +に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。 -If \fIpathname\fP is relative and \fIdirfd\fP is the special value \fBAT_FDCWD\fP, -then \fIpathname\fP is interpreted relative to the current working directory of -the calling process (like \fBmkdir\fP()). +\fIpathname\fP で指定されたパス名が相対パスで、 \fIdirfd\fP が特別な値 \fBAT_FDCWD\fP の場合、 (\fBmkdir\fP() +と同様に) \fIpathname\fP は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。 -If \fIpathname\fP is absolute, then \fIdirfd\fP is ignored. +\fIpathname\fP で指定されたパス名が絶対パスの場合、 \fIdirfd\fP は無視される。 .PP -See \fBopenat\fP(2) for an explanation of the need for \fBmkdirat\fP(). +\fBmkdirat\fP() の必要性についての説明については \fBopenat\fP(2) を参照。 .SH 返り値 \fBmkdir\fP() と \fBmkdirat\fP() は成功した場合 0 を、失敗した場合 \-1 を返す (また、 \fIerrno\fP がエラーの内容にしたがって適切に設定される)。 @@ -145,17 +142,16 @@ See \fBopenat\fP(2) for an explanation of the need for \fBmkdirat\fP(). \fBEROFS\fP \fIpathname\fP が読み出し専用ファイルシステム上のファイルを指している。 .PP -The following additional errors can occur for \fBmkdirat\fP(): +\fBmkdirat\fP() では以下のエラーも発生する。 .TP \fBEBADF\fP \fIdirfd\fP が適切なファイルディスクリプタでない。 .TP \fBENOTDIR\fP -\fIpathname\fP is relative and \fIdirfd\fP is a file descriptor referring to a -file other than a directory. +\fIpathname\fP が相対パスで、 \fIdirfd\fP がディレクトリ以外のファイルを参照しているファイルディスクリプタである。 .SH バージョン -\fBmkdirat\fP() was added to Linux in kernel 2.6.16; library support was added -to glibc in version 2.4. +\fBmkdirat\fP() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 で glibc +に追加された。 .SH 準拠 .\" SVr4 documents additional EIO, EMULTIHOP \fBmkdir\fP(): SVr4, BSD, POSIX.1\-2001, POSIX.1\-2008. diff --git a/release/man2/reboot.2 b/release/man2/reboot.2 index 005689e5..422598bd 100644 --- a/release/man2/reboot.2 +++ b/release/man2/reboot.2 @@ -109,9 +109,8 @@ reboot \- 再起動する。または Ctrl\-Alt\-Delを有効・無効にする \fBsync\fP(2) を行なわないと、データが失われる。 .TP \fBLINUX_REBOOT_CMD_SW_SUSPEND\fP -(\fBRB_SW_SUSPEND\fP, 0xd000fce1; since Linux 2.5.18). The system is suspended -(hibernated) to disk. This option is available only if the kernel was -configured with \fBCONFIG_HIBERNATION\fP. +(\fBRB_SW_SUSPEND\fP, 0xd000fce1; Linux 2.5.18 以降). システムがディスクにサスペンド (ハイバネーション) +される。このオプションはカーネルで \fBCONFIG_HIBERNATION\fP が有効になっている場合にのみ利用できる。 .LP スーパーユーザーだけが \fBreboot\fP() を呼び出すことができる。 .LP diff --git a/release/man2/seteuid.2 b/release/man2/seteuid.2 index f93c71ef..02d6f53b 100644 --- a/release/man2/seteuid.2 +++ b/release/man2/seteuid.2 @@ -88,13 +88,12 @@ _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L || _XOPEN_SOURCE\ >=\ 600 実効ユーザー (グループ) ID を保存 set\-user\-ID (保存 set\-group\-ID) に 設定できるのは、Linux 1.1.37 (1.1.38) 以降である。 全てのシステムにおいて \fB_POSIX_SAVED_IDS\fP をチェックすべきである。 .LP -Under libc4, libc5 and glibc 2.0 \fBseteuid(\fP\fIeuid\fP\fB)\fP is equivalent to -\fBsetreuid(\-1,\fP\fI euid\fP\fB)\fP and hence may change the saved set\-user\-ID. -Under glibc 2.1 and later it is equivalent to \fBsetresuid(\-1,\fP\fI euid\fP\fB, -\-1)\fP and hence does not change the saved set\-user\-ID. Analogous remarks -hold for \fBsetegid\fP(), with the difference that the change in implementation -from \fBsetregid(\-1,\fP\fI egid\fP\fB)\fP to \fBsetresgid(\-1,\fP\fI egid\fP\fB, \-1)\fP -occurred in glibc 2.2 or 2.3 (depending on the hardware architecture). +libc4, libc5, glibc 2.0 では、 \fBseteuid(\fP\fIeuid\fP\fB)\fP は \fBsetreuid(\-1,\fP\fI +euid\fP\fB)\fP と等価であり、保存 set\-user\-ID を変更するかもしれない。 glibc 2.1 では、 +\fBsetresuid(\-1,\fP\fI euid\fP\fB, \-1)\fP と等価であり、保存 set\-user\-ID 変更しない。 同様のことが +\fBsetegid\fP() にも言えるが、 glibc 2.2 か 2.3 で、 実装が \fBsetregid(\-1,\fP\fI egid\fP\fB)\fP から +\fBsetresgid(\-1,\fP\fI egid\fP\fB, \-1)\fP へ変更された点だけが違う (どの glibc +バージョンで変更が行われたかは、ハードウェアアーキテクチャによって異なる)。 POSIX.1 では、 \fBseteuid\fP() (\fBsetegid\fP()) で、 \fIeuid\fP (\fIegid\fP) として現在の実効ユーザ (グループ) ID と同じ値を指定可能である 必要はないとされており、いくつかの実装では \fIeuid\fP (\fIegid\fP) として現在の実効ユーザ diff --git a/release/man2/setfsuid.2 b/release/man2/setfsuid.2 index 4a1976dd..a0452d97 100644 --- a/release/man2/setfsuid.2 +++ b/release/man2/setfsuid.2 @@ -75,19 +75,13 @@ Linux カーネルが使用するユーザ ID \(em の値を変更する。通 glibc が引き数がユーザID として不正だと判断した場合は、 システムコールを行わず \fIerrno\fP に \fBEINVAL\fP を設定して \-1 が返される。 .LP -At the time when this system call was introduced, one process could send a -signal to another process with the same effective user ID. This meant that -if a privileged process changed its effective user ID for the purpose of -file permission checking, then it could become vulnerable to receiving -signals sent by another (unprivileged) process with the same user ID. The -filesystem user ID attribute was thus added to allow a process to change its -user ID for the purposes of file permission checking without at the same -time becoming vulnerable to receiving unwanted signals. Since Linux 2.0, -signal permission handling is different (see \fBkill\fP(2)), with the result -that a process change can change its effective user ID without being -vulnerable to receiving signals from unwanted processes. Thus, -\fBsetfsuid\fP() is nowadays unneeded and should be avoided in new -applications (likewise for \fBsetfsgid\fP(2)). +このシステムコールが導入された当時、 あるプロセスは同じ実効ユーザー ID を持つ別のプロセスにシグナルを送信できた。 これは、 +特権プロセスがファイルのアクセス許可をチェックするために自身の実効ユーザー ID を変更すると、 同じユーザー ID を持つ別の (非特権) +プロセスが送信したシグナルを受け取るようになってしまうことを意味する。そのため、 プロセスが、 受け取りたくないシグナルを受信する状態にならずに、 +ファイルのアクセス許可をチェックするために自身のユーザー ID を変更できるように、 ファイルシステムユーザー ID 属性が追加された。 Linux +2.0 以降では、 シグナルの送信許可の扱いは異なり (\fBkill\fP(2) 参照)、 プロセスは、 +望まないプロセスからシグナルを受信してしまう状態にならずに、 自身の実効ユーザー ID を変更することができる。 したがって、 +\fBsetfsuid\fP() は今日では不要であり、 新規のアプリケーションでは使用すべきではない (\fBsetfsgid\fP(2) も同様)。 元々の Linux の \fBsetfsuid\fP() システムコールは 16 ビットのグループ ID だけに対応していた。 diff --git a/release/man2/setpgid.2 b/release/man2/setpgid.2 index d3ecef1e..fc19dd6e 100644 --- a/release/man2/setpgid.2 +++ b/release/man2/setpgid.2 @@ -96,10 +96,10 @@ _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED .br - || /* Since glibc 2.19: */ _BSD_SOURCE + || /* glibc 2.19 以降: */ _BSD_SOURCE .fi .sp -\fBsetpgrp\fP()\ (BSD), \fBgetpgrp\fP()\ (BSD) [before glibc 2.19]: +\fBsetpgrp\fP()\ (BSD), \fBgetpgrp\fP()\ (BSD) [glibc 2.19 より前]: .nf _BSD_SOURCE && !\ (_POSIX_SOURCE || _POSIX_C_SOURCE || _XOPEN_SOURCE || @@ -127,27 +127,23 @@ POSIX.1 バージョンの \fBgetpgrp\fP() は引き数を一つもとらず、 System V バージョンの \fBsetpgrp\fP() は引き数を一つもとらず、 \fIsetpgid(0,\ 0)\fP と等価である。 -The BSD\-specific \fBsetpgrp\fP() call, which takes arguments \fIpid\fP and -\fIpgid\fP, is is a wrapper function that calls +BSD 仕様の \fBsetpgrp\fP() は \fIpid\fP と \fIpgid\fP を引き数にとり、 以下を呼び出すラッパー関数である。 setpgid(pid, pgid) .\" The true BSD setpgrp() system call differs in allowing the PGID .\" to be set to arbitrary values, rather than being restricted to .\" PGIDs in the same session. -Since glibc 2.19, the BSD\-specific \fBsetpgrp\fP() function is no longer -exposed by \fI\fP; calls should be replaced with the -\fBsetpgid\fP() call shown above. +glibc 2.19 以降、 BSD 固有の \fBsetpgrp\fP() 関数はもはや \fI\fP では公開されない。 +この関数の呼び出しは上記の \fBsetpgid\fP() の呼び出しで置き換えるべきである。 -The BSD\-specific \fBgetpgrp\fP() call, which takes a single \fIpid\fP argument, -is a wrapper function that calls +BSD 仕様の \fBgetpgrp\fP() は \fIpid\fP だけを引き数にとり、 以下を呼び出すラッパー関数である。 getpgid(pid) -Since glibc 2.19, the BSD\-specific \fBgetpgrp\fP() function is no longer -exposed by \fI\fP; calls should be replaced with calls to the -POSIX.1 \fBgetpgrp\fP() which takes no arguments (if the intent is to obtain -the caller's PGID), or with the \fBgetpgid\fP() call shown above. +glibc 2.19 以降、 BSD 固有の \fBgetpgrp\fP() 関数はもはや \fI\fP では公開されない。 +この関数の呼び出しは、引き数を取らない POSIX.1 の \fBgetpgrp\fP() の呼び出し (呼び出し元の PGID +を取得する目的の場合)、もしくは上記の \fBgetpgid\fP() の呼び出しで置き換えるべきである。 .SH 返り値 \fBsetpgid\fP() と \fBsetpgrp\fP() は成功した場合、ゼロを返す。エラーの場合は \-1 を返し、 \fIerrno\fP が適切に設定される。 diff --git a/release/man2/setreuid.2 b/release/man2/setreuid.2 index 087cf6cf..166ace64 100644 --- a/release/man2/setreuid.2 +++ b/release/man2/setreuid.2 @@ -90,9 +90,8 @@ _BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTEND 非特権ユーザーは、実ユーザー ID を実ユーザー ID または 実効ユーザー ID にしか設定できない。 -If the real user ID is set (i.e., \fIruid\fP is not \-1) or the effective user -ID is set to a value not equal to the previous real user ID, the saved -set\-user\-ID will be set to the new effective user ID. +実ユーザーID が設定されたり (\fIruid\fP が \-1 ではない)、実効ユーザーID が前の実ユーザーID と 異った値に設定された場合、保存 +set\-user\-ID には新しい実効ユーザーID の値が設定される。 これと全く同様に、 \fBsetregid\fP() は呼び出し元のプロセスの実グループ ID と実効グループ ID を設定し、 上記の説明で「ユーザー」を「グループ」に読み替えたことが成り立つ。 diff --git a/release/man2/sigpending.2 b/release/man2/sigpending.2 index 31d95bee..51066a8e 100644 --- a/release/man2/sigpending.2 +++ b/release/man2/sigpending.2 @@ -67,8 +67,8 @@ POSIX.1\-2001. .SH 注意 シグナル集合の操作に関する詳細は \fBsigsetops\fP(3) を参照のこと。 -If a signal is both blocked and has a disposition of "ignored", it is \fInot\fP -added to the mask of pending signals when generated. +シグナルが禁止 (ブロック) されており、かつ配送方法が "ignored" (無視) +になっている場合、そのシグナルが発生した場合に処理待ちシグナルのマスクにそのシグナルは追加\fIされない\fP。 あるスレッドに対する処理待ちのシグナルの集合は、 そのスレッド自体への処理待ちのシグナル集合と、プロセス全体への処理待ちの シグナル集合をあわせたものである。 \fBsignal\fP(7) 参照。 diff --git a/release/man2/stat.2 b/release/man2/stat.2 index 0cd76298..b796d493 100644 --- a/release/man2/stat.2 +++ b/release/man2/stat.2 @@ -263,8 +263,7 @@ BSD 方式で使用される ことを示す。つまり、そのディレクト ディレクトリにスティッキービット (S_ISVTX) が設定された場合は、 そのディレクトリのファイルの名前を変更したり、削除したりできるのは、 そのファイルの所有者か、そのディレクトリの所有者か、特権プロセス だけとなる。 .SS fstatat() -The \fBfstatat\fP() system call operates in exactly the same way as \fBstat\fP(), -except for the differences described here. +\fBfstatat\fP() システムコールは \fBstat\fP() と全く同様に動作するが、以下で説明する点が異なる。 If the pathname given in \fIpathname\fP is relative, then it is interpreted relative to the directory referred to by the file descriptor \fIdirfd\fP diff --git a/release/man2/swapon.2 b/release/man2/swapon.2 index 2bd61b74..b87ba692 100644 --- a/release/man2/swapon.2 +++ b/release/man2/swapon.2 @@ -103,18 +103,17 @@ Linux 1.3.6 において、カーネルは通常はこれらの規則に従っ (\fBswapon\fP() において) 指定された \fIpath\fP が既にスワップ領域として使用されている。 .TP \fBEINVAL\fP -The file \fIpath\fP exists, but refers neither to a regular file nor to a block -device; +ファイル \fIpath\fP は存在するが、通常のファイルもブロックデバイスも参照していない。 .TP \fBEINVAL\fP -(\fBswapon\fP()) The indicated path does not contain a valid swap signature or -resides on an in\-memory filesystem such as tmpfs. +(\fBswapon\fP()) 指定されたパスが有効なスワップの署名 (signature) を含んでいないか、tmpfs +のようなインメモリファイルシステム上にある。 .TP \fBEINVAL\fP (Linux 3.4 以降) -(\fBswapon\fP()) An invalid flag value was specified in \fIflags\fP. +(\fBswapon\fP()) \fIflags\fP に無効なフラグ値が指定された。 .TP \fBEINVAL\fP -(\fBswapoff\fP()) \fIpath\fP is not currently a swap area. +(\fBswapoff\fP()) \fIpath\fP が現在スワップ領域ではない。 .TP \fBENFILE\fP オープンされたファイルの総数がシステム全体の上限に達していた。 diff --git a/release/man2/utime.2 b/release/man2/utime.2 index e2b0d913..b46aa536 100644 --- a/release/man2/utime.2 +++ b/release/man2/utime.2 @@ -60,8 +60,7 @@ utime, utimes \- ファイルの最終アクセス時刻と修正時刻を変更 \fBint utimes(const char *\fP\fIfilename\fP\fB, const struct timeval \fP\fItimes\fP\fB[2]);\fP .fi .SH 説明 -\fBNote:\fP modern applications may prefer to use the interfaces described in -\fButimensat\fP(2). +\fB備考:\fP 最近のアプリケーションの場合、 \fButimensat\fP(2) で説明されているインターフェースを使いたいと思うかもしれない。 \fButime\fP() システムコールは \fIfilename\fP で示される inode のアクセス時刻と修正時刻を \fItimes\fP 中の \fIactime\fP と \fImodtime\fP にそれぞれ変更する。 diff --git a/release/man3/atof.3 b/release/man3/atof.3 index 4b5d3344..f9b11487 100644 --- a/release/man3/atof.3 +++ b/release/man3/atof.3 @@ -61,9 +61,8 @@ strtod(nptr, NULL); 変換された値。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBatof\fP() function is thread\-safe with exceptions. It can be safely -used in multithreaded applications, as long as \fBsetlocale\fP(3) is not -called to change the locale during its execution. +\fBatof\fP() 関数は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 SVr4, POSIX.1\-2001, 4.3BSD, C89, C99. .SH 関連項目 diff --git a/release/man3/atoi.3 b/release/man3/atoi.3 index ea6b0860..3973749c 100644 --- a/release/man3/atoi.3 +++ b/release/man3/atoi.3 @@ -87,10 +87,8 @@ strtol(nptr, NULL, 10); 変換された値。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBatoi\fP(), \fBatol\fP(), and \fBatoll\fP() functions are thread\-safe with -exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBatoi\fP(), \fBatol\fP(), \fBatoll\fP() は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 SVr4, POSIX.1\-2001, 4.3BSD, C99. C89 と POSIX.1\-1996 には \fBatoi\fP() と \fBatol\fP() だけが含まれている。 \fBatoq\fP() は GNU による拡張である。 diff --git a/release/man3/bsd_signal.3 b/release/man3/bsd_signal.3 index 367eb531..3192eeae 100644 --- a/release/man3/bsd_signal.3 +++ b/release/man3/bsd_signal.3 @@ -55,8 +55,8 @@ bsd_signal \- BSD 方式のシグナル処理 \fBbsd_signal\fP() 関数はシグナルハンドラの直前の値を返す。 エラーの場合、 \fBSIG_ERR\fP を返す。 .SH エラー \fBsignal\fP(2) と同じ。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBbsd_signal\fP() 関数はスレッドセーフである。 .SH 準拠 4.2BSD, POSIX.1\-2001. POSIX.1\-2008 では \fBbsd_signal\fP() の仕様が削除されている。 代わりに、 diff --git a/release/man3/crypt.3 b/release/man3/crypt.3 index 63d8aad5..da07f743 100644 --- a/release/man3/crypt.3 +++ b/release/man3/crypt.3 @@ -99,7 +99,7 @@ DES アルゴリズムにはいくつかの癖があり、それによってパ .SH エラー .TP \fBEINVAL\fP -\fIsalt\fP has the wrong format. +\fIsalt\fP が間違ったフォーマットである。 .TP \fB .TP @@ -141,8 +141,7 @@ DES アルゴリズムにはいくつかの癖があり、それによってパ \fBcrypt\fP() 関数が実装されていない。多分アメリカの輸出規制のために。 .TP \fBEPERM\fP -\fI/proc/sys/crypto/fips_enabled\fP has a nonzero value, and an attempt was -made to use a weak encryption type, such as DES. +\fI/proc/sys/crypto/fips_enabled\fP が 0 でない値で、 DES などの弱い暗号タイプを利用しようとした。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" \fBcrypt\fP() 関数はスレッドセーフではない。 diff --git a/release/man3/fexecve.3 b/release/man3/fexecve.3 index 3cb32876..e86cf0ae 100644 --- a/release/man3/fexecve.3 +++ b/release/man3/fexecve.3 @@ -85,15 +85,11 @@ POSIX.1\-2008 で規定されている。 Linux では、 \fBfexecve\fP() は \fBproc\fP(5) ファイルシステムを使って実装されている。 そのため、この関数を呼び出す時点では \fI/proc\fP がマウントされて利用可能となっている必要がある。 -The idea behind \fBfexecve\fP() is to allow the caller to verify (checksum) -the contents of an executable before executing it. Simply opening the file, -checksumming the contents, and then doing an \fBexecve\fP(2) would not -suffice, since, between the two steps, the filename, or a directory prefix -of the pathname, could have been exchanged (by, for example, modifying the -target of a symbolic link). \fBfexecve\fP() does not mitigate the problem -that the \fIcontents\fP of a file could be changed between the checksumming and -the call to \fBfexecve\fP(); for that, the solution is to ensure that the -permissions on the file prevent it from being modified by malicious users. +\fBfexecve\fP() の裏にある考えは、呼び出し元が、ファイルを実行する前に実行ファイルの内容を検査 (チェックサムを確認) +できるようにすることである。単に、ファイルをオープンして内容のチェックサムを検査し、それから \fBexecve\fP(2) +を行うのは十分ではない。なぜなら、2 つのステップの間で、ファイル名や、パス名のディレクトリの前の方が入れ換えられる可能性があるからだ +(例えば、シンボリックリンクのリンク先を変更するなど)。\fBfexecve\fP() は、チェックサムの検査と \fBfexecve\fP() +の呼び出しの間で、ファイルの\fI内容\fPを変更できる可能性があるという問題への対策にはならない。この問題に対する対応策は、確実に、ファイルのアクセス許可を設定し、悪意のあるユーザーがファイルを変更できないようにすることである。 .SH 関連項目 \fBexecve\fP(2) .SH この文書について diff --git a/release/man3/mbstowcs.3 b/release/man3/mbstowcs.3 index 02854a38..febb37a7 100644 --- a/release/man3/mbstowcs.3 +++ b/release/man3/mbstowcs.3 @@ -64,9 +64,7 @@ C99. .PP \fBmbsrtowcs\fP(3) 関数は同じ機能のより良いインターフェースを提供する。 .SH 例 -The program below illustrates the use of \fBmbstowcs\fP(), as well as some of -the wider character classification functions. An example run is the -following: +下記のプログラムは \fBmbstowcs\fP() といくつかのワイド文字分類関数の使用方法を示したものである。実行例は以下のようになる。 .in +4n .nf diff --git a/release/man3/mkstemp.3 b/release/man3/mkstemp.3 index f9803a25..2842ab92 100644 --- a/release/man3/mkstemp.3 +++ b/release/man3/mkstemp.3 @@ -101,13 +101,10 @@ _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOP フラグ付きでオープンされる。 .\" Reportedly, FreeBSD -The \fBmkostemp\fP() function is like \fBmkstemp\fP(), with the difference that -the following bits\(emwith the same meaning as for \fBopen\fP(2)\(emmay be -specified in \fIflags\fP: \fBO_APPEND\fP, \fBO_CLOEXEC\fP, and \fBO_SYNC\fP. Note that -when creating the file, \fBmkostemp\fP() includes the values \fBO_RDWR\fP, -\fBO_CREAT\fP, and \fBO_EXCL\fP in the \fIflags\fP argument given to \fBopen\fP(2); -including these values in the \fIflags\fP argument given to \fBmkostemp\fP() is -unnecessary, and produces errors on some systems. +\fBmkostemp\fP() 関数は \fBmkstemp\fP() と同様だが、 \fIflags\fP に \fBO_APPEND\fP, \fBO_CLOEXEC\fP, +\fBO_SYNC\fP のビットを指定できる点が異なる (意味は \fBopen\fP(2) と同じである)。ファイルを作成する際、 \fBmkostemp\fP() +は \fBopen\fP(2) に渡す \fIflags\fP 引き数に \fBO_RDWR\fP, \fBO_CREAT\fP, \fBO_EXCL\fP を含める。そのため、 +\fBmkostemp\fP() に渡す \fIflags\fP 引き数にこれらの値を含める必要はなく、システムによってはエラーが発生する点に注意すること。 \fBmkstemps\fP() 関数は \fBmkstemp\fP() と同様だが、 \fItemplate\fP 内の文字列に長さ が \fIsuffixlen\fP 文字の接尾辞 (suffix) が含まれる点が異なる。 diff --git a/release/man3/mktemp.3 b/release/man3/mktemp.3 index cd24a22c..4ee7fe5c 100644 --- a/release/man3/mktemp.3 +++ b/release/man3/mktemp.3 @@ -73,7 +73,7 @@ _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOP .PD .ad b .SH 説明 -\fINever use this function\fP; see NOTES. +\fI決してこの関数は使用しないこと\fP。「注意」を参照。 関数 \fBmktemp\fP() は引数 \fItemplate\fP から他と重ならない テンポラリファイル名を作成する。引数 \fItemplate\fP で指示する文字配列 の後6文字は XXXXXX である必要がある。この部分がファイル名を他と 重ならないにするような文字で置き換えられる。 diff --git a/release/man3/raise.3 b/release/man3/raise.3 index 228b289c..8c2e9d96 100644 --- a/release/man3/raise.3 +++ b/release/man3/raise.3 @@ -67,8 +67,8 @@ pthread_kill(pthread_self(), sig); シグナルに起因してシグナル・ハンドラが呼び出される場合には、 \fBraise\fP() が返るのは必ずシグナル・ハンドラが返った後になる。 .SH 返り値 成功した場合は 0 を、失敗した場合は 0 以外の値を返す。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBraise\fP() 関数はスレッドセーフである。 .SH 準拠 C89, C99, POSIX.1\-2001. diff --git a/release/man3/setenv.3 b/release/man3/setenv.3 index a036fef0..0878c197 100644 --- a/release/man3/setenv.3 +++ b/release/man3/setenv.3 @@ -71,13 +71,10 @@ _BSD_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L || _XOPEN_SOURCE\ >=\ 600 .RE .ad b .SH 説明 -The \fBsetenv\fP() function adds the variable \fIname\fP to the environment with -the value \fIvalue\fP, if \fIname\fP does not already exist. If \fIname\fP does -exist in the environment, then its value is changed to \fIvalue\fP if -\fIoverwrite\fP is nonzero; if \fIoverwrite\fP is zero, then the value of \fIname\fP -is not changed (and \fBsetenv\fP() returns a success status). This function -makes copies of the strings pointed to by \fIname\fP and \fIvalue\fP (by contrast -with \fBputenv\fP(3)). +\fBsetenv\fP() 関数は、\fIname\fP が存在しない場合 環境変数 \fIname\fP に値 \fIvalue\fP を設定し、環境に追加する。 +\fIname\fP が環境に存在する場合、\fIoverwrite\fP が 0 以外ならば その値を \fIvalue\fP に変更し、\fIoverwrite\fP が +0 ならば \fIname\fP の値を変更しない (\fBsetenv\fP() は成功のステータスを返す)。 この関数は、 (\fBputenv\fP(3) +と違い) \fIname\fP と \fIvalue\fP により参照される文字列のコピーを行う。 .PP \fBunsetenv\fP() 関数は、変数 \fIname\fP を環境から削除する。 \fIname\fP が環境にない場合、この関数は成功し、環境は変更されない。 diff --git a/release/man3/sigpause.3 b/release/man3/sigpause.3 index e4957766..98800502 100644 --- a/release/man3/sigpause.3 +++ b/release/man3/sigpause.3 @@ -54,8 +54,8 @@ sigpause \- ブロックされたシグナルをアトミックに解放して .SH 返り値 \fBsigpause\fP() が返った場合、この関数はシグナルによって割り込まれている。 返り値は \-1 で、 \fIerrno\fP は \fBEINTR\fP に設定される。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBsigpause\fP() 関数はスレッドセーフである。 .SH 準拠 System V 版の \fBsigpause\fP() は POSIX.1\-2001 で標準化されている。 @@ -75,13 +75,12 @@ libc4 と libc5 には BSD 版しかない。 .\" For the BSD version, one usually uses a zero .\" .I sigmask .\" to indicate that no signals are to be blocked. -Glibc uses the BSD version if the \fB_BSD_SOURCE\fP feature test macro is -defined and none of \fB_POSIX_SOURCE\fP, \fB_POSIX_C_SOURCE\fP, \fB_XOPEN_SOURCE\fP, -\fB_GNU_SOURCE\fP, or \fB_SVID_SOURCE\fP is defined. Otherwise, the System V -version is used (and \fB_XOPEN_SOURCE\fP must be defined to obtain the -declaration). Since glibc 2.19, only the System V version is exposed by -\fI\fP; applications that formerly used the BSD \fBsigpause\fP() -should be amended to use \fBsigsuspend\fP(2). +機能検査マクロ \fB_BSD_SOURCE\fP が定義され、 \fB_POSIX_SOURCE\fP, \fB_POSIX_C_SOURCE\fP, +\fB_XOPEN_SOURCE\fP, \fB_GNU_SOURCE\fP, \fB_SVID_SOURCE\fP のいずれも定義されていない場合、 glibc は +BSD 版を使う。 それ以外の場合には、System V 版を使用する (宣言を得るためには \fB_XOPEN_SOURCE\fP +が定義されていなければならない)。 glibc 2.19 以降では、 \fI\fP では System V +版だけが公開される。 BSD 版の \fBsigpause\fP() を使用していたアプリケーションは \fBsigsuspend\fP(2) +を使用するように修正すべきである。 .SH 関連項目 \fBkill\fP(2), \fBsigaction\fP(2), \fBsigprocmask\fP(2), \fBsigsuspend\fP(2), \fBsigblock\fP(3), \fBsigvec\fP(3), \fBfeature_test_macros\fP(7) diff --git a/release/man3/sigqueue.3 b/release/man3/sigqueue.3 index 8c884c60..0bec8d4f 100644 --- a/release/man3/sigqueue.3 +++ b/release/man3/sigqueue.3 @@ -90,9 +90,9 @@ union sigval { \fIpid\fP にマッチする PID のプロセスがない。 .SH バージョン このシステムコールは Linux 2.2 で初めて登場した。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" -The \fBsigqueue\fP() function is thread\-safe. +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" +\fBsigqueue\fP() 関数はスレッドセーフである。 .SH 準拠 POSIX.1\-2001. .SH 注意 diff --git a/release/man3/sigsetops.3 b/release/man3/sigsetops.3 index 1ca43a3c..f6b768de 100644 --- a/release/man3/sigsetops.3 +++ b/release/man3/sigsetops.3 @@ -110,9 +110,8 @@ POSIX.1\-2001. \fBsigisemptyset\fP() は \fIset\fP にシグナルが一つも含まれていなければ 1 を返し、 それ以外は 0 を返す。 -\fBsigorset\fP() places the union of the sets \fIleft\fP and \fIright\fP in -\fIdest\fP. \fBsigandset\fP() places the intersection of the sets \fIleft\fP and -\fIright\fP in \fIdest\fP. Both functions return 0 on success, and \-1 on failure. +\fBsigorset\fP() は集合 \fIleft\fP と \fIright\fP の和集合を \fIdest\fP に設定する。 \fBsigandset\fP() は集合 +\fIleft\fP と \fIright\fP の積集合を \fIdest\fP に設定する。 どちらの関数も成功すると 0 を返し、失敗時には \-1 を返す。 .PP これらの関数は非標準であり、(他にも同様の関数を提供しているシステムも いくつかはあるが) 移植性を考慮したアプリケーションでは使用を避けるべき である。 diff --git a/release/man3/sigwait.3 b/release/man3/sigwait.3 index e29ab9be..d14b4828 100644 --- a/release/man3/sigwait.3 +++ b/release/man3/sigwait.3 @@ -67,8 +67,8 @@ glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参 \fBEINVAL\fP .\" Does not occur for glibc. \fIset\fP に無効なシグナル番号が入っている。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" \fBsigwait\fP() 関数はスレッドセーフである。 .SH 準拠 POSIX.1\-2001. diff --git a/release/man3/strerror.3 b/release/man3/strerror.3 index a1e5fe76..608d5e85 100644 --- a/release/man3/strerror.3 +++ b/release/man3/strerror.3 @@ -110,10 +110,10 @@ GNU 仕様の \fBstrerror_r\fP() は、 エラーメッセージを格納した \fIbuf\fP に文字列が格納される場合は、 最大で \fIbuflen\fP バイトが格納される (\fIbuflen\fP が小さ過ぎたときには文字列は切り詰められ、 \fIerrnum\fP は不定である)。 文字列には必ず終端ヌル文字 (\(aq\e0\(aq) が含まれる。 .SS strerror_l() -\fBstrerror_l\fP() is like \fBstrerror\fP(), but maps \fIerrnum\fP to a -locale\-dependent error message in the locale specified by \fIlocale\fP. The -behavior of \fBstrerror_l\fP() is undefined if \fIlocale\fP is the special locale -object \fBLC_GLOBAL_LOCALE\fP or is not a valid locale object handle. +\fBstrerror_l\fP() は \fBstrerror\fP() と同様だが、 \fIerrnum\fP を \fIlocale\fP +で指定されたロケールのロケール依存のエラーメッセージにマッピングする。 \fIlocale\fP が特別なロケールオブジェクト +\fBLC_GLOBAL_LOCALE\fP の場合、もしくは \fIlocale\fP が有効なロケールオブジェクトハンドルでない場合は、 +\fBstrerror_l\fP() の動作は未定義である。 .SH 返り値 関数 \fBstrerror\fP(), \fBstrerror_l\fP() と GNU 固有の関数 \fBstrerror_r\fP() はエラー内容を説明する文字列を返す。 エラー番号が未知の場合は "Unknown error nnn" という メッセージを返す。 diff --git a/release/man3/strsep.3 b/release/man3/strsep.3 index 521ff1fe..b837f5d4 100644 --- a/release/man3/strsep.3 +++ b/release/man3/strsep.3 @@ -59,13 +59,10 @@ glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参 .sp \fBstrsep\fP(): _BSD_SOURCE .SH 説明 -If \fI*stringp\fP is NULL, the \fBstrsep\fP() function returns NULL and does -nothing else. Otherwise, this function finds the first token in the string -\fI*stringp\fP, that is delimited by one of the bytes in the string \fIdelim\fP. -This token is terminated by overwriting the delimiter with a null byte -(\(aq\e0\(aq), and \fI*stringp\fP is updated to point past the token. In case -no delimiter was found, the token is taken to be the entire string -\fI*stringp\fP, and \fI*stringp\fP is made NULL. +\fI*stringp\fP が NULL の場合、 \fBstrsep\fP() 関数は何もせずに NULL を返す。 さもなければ、文字列 +\fIstringp\fP を \fIdelim\fP に含まれるいずれかのバイトで区切ったトークンのうち最初のものを返す。 トークンは、区切り文字を NULL +バイト (\(aq\e0\(aq) で上書きすることで 終端される。 \fI*stringp\fP は切り出されたトークンの次の位置を示すように更新される。 +区切り文字が見つからない場合、\fI*stringp\fP 文字列全体がトークンとして 扱われ、\fI*stringp\fP は NULL となる。 .SH 返り値 \fBstrsep\fP() 関数は、トークンへのポインタを返す。 つまり、元の \fI*stringp\fP の値を返す。 .SH 属性 diff --git a/release/man3/strsignal.3 b/release/man3/strsignal.3 index 6bc6c8aa..2378306d 100644 --- a/release/man3/strsignal.3 +++ b/release/man3/strsignal.3 @@ -76,10 +76,8 @@ _GNU_SOURCE 配列 \fIsys_siglist\fP はシグナルを説明する文字列を保持しており、 配列へのアクセスにはシグナル番号を添え字として用いる事ができる。 出来るだけこの配列の代わりに \fBstrsignal\fP() 関数を 使うべきである。 .SH 返り値 -The \fBstrsignal\fP() function returns the appropriate description string, or -an unknown signal message if the signal number is invalid. On some systems -(but not on Linux), NULL may instead be returned for an invalid signal -number. +\fBstrsignal\fP() 関数は、シグナルの適切な説明を返す。 もしシグナル番号が不正な場合は、未知のシグナル (unknown signal) +を示す メッセージを返す。 (Linux はそうではないが)不正なシグナル番号に対して、 NULL を返すシステムもある。 .SH 準拠 POSIX.1\-2008. Solaris と BSD 系にも存在する。 .SH 関連項目 diff --git a/release/man3/strspn.3 b/release/man3/strspn.3 index c2fc0cea..bc16616f 100644 --- a/release/man3/strspn.3 +++ b/release/man3/strspn.3 @@ -41,7 +41,7 @@ .\" .TH STRSPN 3 2014\-02\-28 "" "Linux Programmer's Manual" .SH 名前 -strspn, strcspn \- get length of a prefix substring +strspn, strcspn \- プレフィックス部分文字列の長さを返す .SH 書式 .nf \fB#include \fP diff --git a/release/man3/strstr.3 b/release/man3/strstr.3 index 8b2fa90d..9936b9c3 100644 --- a/release/man3/strstr.3 +++ b/release/man3/strstr.3 @@ -64,15 +64,13 @@ NULL バイト (\(aq\e0\(aq) は比較されない。 \fBstrcasestr\fP() 関数は \fBstrstr\fP() 関数と同様だが、 両方の引数に対して大文字小文字を無視する。 .SH 返り値 -These functions return a pointer to the beginning of the located substring, -or NULL if the substring is not found. +これらの関数は、見つかった部分文字列の開始を指すポインタを返し、 もし部分文字列が見つからない場合は NULL を返す。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" \fBstrstr\fP() 関数はスレッドセーフである。 .LP -The \fBstrcasestr\fP() function is thread\-safe with exceptions. It can be -safely used in multithreaded applications, as long as \fBsetlocale\fP(3) is -not called to change the locale during its execution. +\fBstrcasestr\fP() 関数は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 \fBstrstr\fP() 関数は C89 と C99 に準拠している。 \fBstrcasestr\fP() 関数は非標準拡張である。 .SH バグ diff --git a/release/man3/strtod.3 b/release/man3/strtod.3 index 7e8d69b2..b78f55e9 100644 --- a/release/man3/strtod.3 +++ b/release/man3/strtod.3 @@ -124,10 +124,8 @@ _XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L; オーバーフローまたはアンダーフローが起こった。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtod\fP(), \fBstrtof\fP(), and \fBstrtold\fP() functions are thread\-safe -with exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtod\fP(), \fBstrtof\fP(), \fBstrtold\fP() は、例外付きのスレッドセーフである。実行中に +\fBsetlocale\fP(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 C89 では \fBstrtod\fP() が、C99 では残りの 2 つの関数が記述されている。 .SH 注意 diff --git a/release/man3/strtoimax.3 b/release/man3/strtoimax.3 index b31d6d1f..b9cfaf77 100644 --- a/release/man3/strtoimax.3 +++ b/release/man3/strtoimax.3 @@ -52,10 +52,8 @@ strtoimax, strtoumax \- 文字列を整数に変換する \fBERANGE\fP に設定される。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtoimax\fP() and \fBstrtoumax\fP() functions are thread\-safe with -exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtoimax\fP() と \fBstrtoumax\fP() は、例外付きのスレッドセーフである。実行中に \fBsetlocale\fP(3) +を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 C99, POSIX.1\-2001. .SH 関連項目 diff --git a/release/man3/strtol.3 b/release/man3/strtol.3 index cc6f5c01..3983298b 100644 --- a/release/man3/strtol.3 +++ b/release/man3/strtol.3 @@ -104,10 +104,8 @@ XOPEN_SOURCE\ >=\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE 実装によっては、変換が行われなかった場合 (数字がなく、0 を返した場合)、 \fIerrno\fP に \fBEINVAL\fP が設定される場合がある。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtol\fP(), \fBstrtoll\fP(), and \fBstrtoq\fP() functions are thread\-safe -with exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtol\fP(), \fBstrtoll\fP(), \fBstrtoq\fP() は、例外付きのスレッドセーフである。実行中に +\fBsetlocale\fP(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 \fBstrtol\fP() は SVr4, 4.3BSD, C89, C99 と POSIX.1\-2001 に準拠している。 \fBstrtoll\fP() は C99 と POSIX.1\-2001 に準拠している。 diff --git a/release/man3/strtoul.3 b/release/man3/strtoul.3 index f4f84df9..78a6e1f1 100644 --- a/release/man3/strtoul.3 +++ b/release/man3/strtoul.3 @@ -105,10 +105,8 @@ XOPEN_SOURCE\ >=\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE 実装によっては、変換が行われなかった場合 (数字がなく、0 を返した場合)、 \fIerrno\fP に \fBEINVAL\fP が設定される場合がある。 .SH 属性 .SS "マルチスレッディング (pthreads(7) 参照)" -The \fBstrtoul\fP(), \fBstrtoull\fP(), and \fBstrtouq\fP() functions are thread\-safe -with exceptions. These functions can be safely used in multithreaded -applications, as long as \fBsetlocale\fP(3) is not called to change the locale -during their execution. +関数 \fBstrtoul\fP(), \fBstrtoull\fP(), \fBstrtouq\fP() は、例外付きのスレッドセーフである。実行中に +\fBsetlocale\fP(3) を呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。 .SH 準拠 \fBstrtoul\fP() は SVr4, C89, C99 と POSIX\-2001 に準拠している。 \fBstrtoull\fP() は C99 と POSIX.1\-2001 に準拠している。 diff --git a/release/man3/sysv_signal.3 b/release/man3/sysv_signal.3 index 93404a36..eb3d30d3 100644 --- a/release/man3/sysv_signal.3 +++ b/release/man3/sysv_signal.3 @@ -54,9 +54,9 @@ sysv_signal \- System V 方式のシグナル処理 \fBsysv_signal\fP() 関数はシグナルハンドラの直前の値を返す。 エラーの場合、 \fBSIG_ERR\fP を返す。 .SH エラー \fBsignal\fP(2) と同じ。 -.SH ATTRIBUTES -.SS "Multithreading (see pthreads(7))" -The \fBsysv_signal\fP() function is thread\-safe. +.SH 属性 +.SS "マルチスレッディング (pthreads(7) 参照)" +\fBsysv_signal\fP() 関数はスレッドセーフである。 .SH 準拠 この関数は非標準である。 .SH 注意 diff --git a/release/man7/capabilities.7 b/release/man7/capabilities.7 index ba32c3cb..33ccc6fb 100644 --- a/release/man7/capabilities.7 +++ b/release/man7/capabilities.7 @@ -610,13 +610,12 @@ set\-user\-ID が すべて 0 以外の値になった場合、許可と実効 .IP 3. 実効 UID が 0 以外から 0 に変更された場合、 許可ケーパビリティセットの内容を実効ケーパビリティセットにコピーする。 .IP 4. -If the filesystem user ID is changed from 0 to nonzero (see \fBsetfsuid\fP(2)) -then the following capabilities are cleared from the effective set: -\fBCAP_CHOWN\fP, \fBCAP_DAC_OVERRIDE\fP, \fBCAP_DAC_READ_SEARCH\fP, \fBCAP_FOWNER\fP, -\fBCAP_FSETID\fP, \fBCAP_LINUX_IMMUTABLE\fP (since Linux 2.6.30), -\fBCAP_MAC_OVERRIDE\fP, and \fBCAP_MKNOD\fP (since Linux 2.6.30). If the -filesystem UID is changed from nonzero to 0, then any of these capabilities -that are enabled in the permitted set are enabled in the effective set. +ファイルシステム UID が 0 から 0 以外に変更された場合 (\fBsetfsuid\fP(2) +参照)、実効ケーパビリティセットの以下のケーパビリティがクリアされる: \fBCAP_CHOWN\fP, \fBCAP_DAC_OVERRIDE\fP, +\fBCAP_DAC_READ_SEARCH\fP, \fBCAP_FOWNER\fP, \fBCAP_FSETID\fP, \fBCAP_LINUX_IMMUTABLE\fP +(Linux 2.6.30 以降), \fBCAP_MAC_OVERRIDE\fP, \fBCAP_MKNOD\fP (Linux 2.6.30 以降)。 +ファイルシステム UID が 0 以外から 0 に変更された場合、 上記のケーパビリティのうち許可ケーパビリティセットで有効になっているものが +実効ケーパビリティセットで有効にされる。 .PP .\" 各種 UID のうち少なくとも一つが 0 であるスレッドが、 その UID の全てが 0 以外になったときに許可ケーパビリティセットが @@ -694,11 +693,11 @@ prctl(PR_SET_SECUREBITS, CONFIG_SECURITY_CAPABILITIES により有効/無効を切り替えることができる。 .\" 7b9a7ec565505699f503b4fcf61500dceb36e744 -The \fI/proc/PID/task/TID/status\fP file can be used to view the capability -sets of a thread. The \fI/proc/PID/status\fP file shows the capability sets of -a process's main thread. Before Linux 3.8, nonexistent capabilities were -shown as being enabled (1) in these sets. Since Linux 3.8, all nonexistent -capabilities (above \fBCAP_LAST_CAP\fP) are shown as disabled (0). +\fI/proc/PID/task/TID/status\fP ファイルを使うと、スレッドのケーパビリティセットを見ることができる。 +\fI/proc/PID/status\fP ファイルには、プロセスのメインスレッドのケーパビリティセットが表示される。 Linux 3.8 より前では、 +これらのケーパビリティセットの表示で、 存在しないケーパビリティはすべて有効 (1) として表示される。 Linux 3.8 以降では、 +存在しないケーパビリティはすべて無効 (0) として表示される。 (\fBCAP_LAST_CAP\fP +より大きい値を持つケーパビリティが存在しないケーパビリティである)。 \fIlibcap\fP パッケージは、ケーパビリティを設定・取得するための ルーチン群を提供している。これらのインタフェースは、 \fBcapset\fP(2) と \fBcapget\fP(2) が提供するインターフェースと比べて、より使いやすく、変更される可能性が少ない。 このパッケージでは、 diff --git a/release/man7/environ.7 b/release/man7/environ.7 index cc843e61..134a0e60 100644 --- a/release/man7/environ.7 +++ b/release/man7/environ.7 @@ -74,11 +74,9 @@ environ \- ユーザ環境 ユーザのログインディレクトリ。 \fBlogin\fP(1) がパスワードファイル \fBpasswd\fP(5) から取得して設定する。 .TP \fBLANG\fP -The name of a locale to use for locale categories when not overridden by -\fBLC_ALL\fP or more specific environment variables such as \fBLC_COLLATE\fP, -\fBLC_CTYPE\fP, \fBLC_MESSAGES\fP, \fBLC_MONETARY\fP, \fBLC_NUMERIC\fP, and \fBLC_TIME\fP -(see \fBlocale\fP(7) for further details of the \fBLC_*\fP environment -variables). +ロケールの各カテゴリで使用されるロケールの名前。\fBLC_ALL\fP や、 より狭い範囲を対象とする環境変数 (\fBLC_COLLATE\fP, +\fBLC_CTYPE\fP, \fBLC_MESSAGES\fP, \fBLC_MONETARY\fP, \fBLC_NUMERIC\fP, \fBLC_TIME\fP など) +によって上書きされることもある (\fBLC_*\fP 環境変数のさらなる詳細は \fBlocale\fP(7) 参照)。 .TP \fBPATH\fP \fBsh\fP(1) や他のプログラムが、フルパスで与えられなかった実行ファイルを検索するとき、 ファイル名に前置されるディレクトリの配列。 diff --git a/translation_list b/translation_list index 2e9ba7fc..1712a7be 100644 --- a/translation_list +++ b/translation_list @@ -12,12 +12,12 @@ @:LDP man-pages:3.63:2012/12/22:_sysctl:2:sysctl:2: ○:LDP man-pages:3.63:2010/09/10:accept:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2010/09/10:accept4:2:accept:2: -☆:LDP man-pages:3.54=>3.63:2014/02/21:access:2:2013/10/14::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/21:access:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2008/06/16:acct:2:2013/09/30::ysato444@yahoo.co.jp:Yuichi SATO: ×:LDP man-pages:3.63:2010/02/25:add_key:2::::: ○:LDP man-pages:3.63:2013/08/07:adjtimex:2:2013/10/02::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/02/12:afs_syscall:2:unimplemented:2: -☆:LDP man-pages:3.54=>3.63:2014/02/23:alarm:2:2013/07/24::hanataka@abyss.rim.or.jp:HANATAKA Shinya: +○:LDP man-pages:3.63:2014/02/23:alarm:2:2014/04/14::hanataka@abyss.rim.or.jp:HANATAKA Shinya: ○:LDP man-pages:3.63:2007/05/31:alloc_hugepages:2:2013/10/02::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2007/12/26:arch_prctl:2:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/04/01:arm_fadvise:2:posix_fadvise:2: @@ -28,11 +28,11 @@ @:LDP man-pages:3.63:2013/02/12:break:2:unimplemented:2: ○:LDP man-pages:3.63:2010/09/20:brk:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2007/05/26:cacheflush:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2013/03/11:capget:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/03/11:capget:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/03/11:capset:2:capget:2: ○:LDP man-pages:3.63:2010/11/25:chdir:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/02/21:chmod:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/02/21:chown:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/21:chmod:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/21:chown:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/02/21:chown32:2:chown:2: ○:LDP man-pages:3.63:2010/09/20:chroot:2:2013/10/02::ysato444@yahoo.co.jp:Yuichi SATO: ☆:LDP man-pages:3.54=>3.63:2013/12/28:clock_getres:2:2013/10/14::amotoki@gmail.com:Akihiro MOTOKI: @@ -41,7 +41,7 @@ @:LDP man-pages:3.63:2013/12/28:clock_settime:2:clock_getres:2: ☆:LDP man-pages:3.54=>3.63:2014/02/27:clone:2:2013/09/30::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/02/27:clone2:2:clone:2: -☆:LDP man-pages:3.54=>3.63:2013/12/30:close:2:2013/10/02::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/30:close:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2008/12/03:connect:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/03/16:creat:2:open:2: ○:LDP man-pages:3.63:2012/10/18:create_module:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @@ -56,7 +56,7 @@ ☆:LDP man-pages:3.54=>3.63:2014/01/31:epoll_wait:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2010/08/30:eventfd:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2010/08/30:eventfd2:2:eventfd:2: -☆:LDP man-pages:3.54=>3.63:2014/01/08:execve:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/01/08:execve:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2010/09/20:exit:2:_exit:2: ○:LDP man-pages:3.63:2008/11/27:exit_group:2:2013/03/25::ysato444@yahoo.co.jp:Yuichi SATO: @:LDP man-pages:3.63:2014/02/21:faccessat:2:access:2: @@ -70,7 +70,7 @@ @:LDP man-pages:3.63:2014/02/21:fchown:2:chown:2: @:LDP man-pages:3.63:2010/11/22:fchown32:2:fchown:2: @:LDP man-pages:3.63:2014/02/21:fchownat:2:chown:2: -☆:LDP man-pages:3.54=>3.63:2014/02/20:fcntl:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/20:fcntl:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/02/20:fcntl64:2:fcntl:2: @:LDP man-pages:3.63:2012/02/27:fdatasync:2:fsync:2: @:LDP man-pages:3.63:2013/02/12:fdetach:2:unimplemented:2: @@ -92,7 +92,7 @@ ○:LDP man-pages:3.63:2012/02/27:fsync:2:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/04/01:ftruncate:2:truncate:2: @:LDP man-pages:3.63:2013/04/01:ftruncate64:2:ftruncate:2: -☆:LDP man-pages:3.54=>3.63:2013/12/12:futex:2:2013/10/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/12:futex:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ☆:LDP man-pages:3.54=>3.63:2012/05/10:futimesat:2:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2012/10/18:get_kernel_syms:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2008/08/15:get_mempolicy:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @@ -196,7 +196,7 @@ ○:LDP man-pages:3.63:2008/08/15:mbind:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2012/08/01:migrate_pages:2:2013/07/24::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2008/04/22:mincore:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/02/21:mkdir:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/21:mkdir:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/02/21:mkdirat:2:mkdir:2: ○:LDP man-pages:3.63:2014/02/21:mknod:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/02/21:mknodat:2:mknod:2: @@ -282,7 +282,7 @@ ☆:LDP man-pages:3.54=>3.63:2014/02/21:readlink:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/02/21:readlinkat:2:readlink:2: ○:LDP man-pages:3.63:2010/11/17:readv:2:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2013/12/28:reboot:2:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/28:reboot:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ☆:LDP man-pages:3.54=>3.63:2014/02/11:recv:2:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/02/11:recvfrom:2:recv:2: ○:LDP man-pages:3.63:2012/12/24:recvmmsg:2:2013/05/18::amotoki@gmail.com:Akihiro MOTOKI: @@ -334,10 +334,10 @@ @:LDP man-pages:3.63:2009/03/15:setcontext:2:getcontext:3: @:LDP man-pages:3.63:2012/10/25:setdomainname:2:getdomainname:2: @:LDP man-pages:3.63:2012/07/02:setegid:2:seteuid:2: -☆:LDP man-pages:3.54=>3.63:2012/07/02:seteuid:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2012/07/02:seteuid:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2013/08/08:setfsgid:2:2013/10/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/08/08:setfsgid32:2:setfsgid:2: -☆:LDP man-pages:3.54=>3.63:2013/08/08:setfsuid:2:2013/10/14::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/08/08:setfsuid:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/08/08:setfsuid32:2:setfsuid:2: ○:LDP man-pages:3.63:2010/11/22:setgid:2:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2010/11/22:setgid32:2:setgid:2: @@ -347,7 +347,7 @@ @:LDP man-pages:3.63:2010/09/26:sethostname:2:gethostname:2: @:LDP man-pages:3.63:2012/10/01:setitimer:2:getitimer:2: ○:LDP man-pages:3.63:2013/01/01:setns:2:2013/09/28::amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/01/07:setpgid:2:2013/08/16::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/01/07:setpgid:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/01/07:setpgrp:2:setpgid:2: @:LDP man-pages:3.63:2013/02/12:setpriority:2:getpriority:2: @:LDP man-pages:3.63:2013/12/12:setregid:2:setreuid:2: @@ -356,7 +356,7 @@ @:LDP man-pages:3.63:2010/11/22:setresgid32:2:setresgid:2: ○:LDP man-pages:3.63:2010/11/22:setresuid:2:2013/09/30::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2010/11/22:setresuid32:2:setresuid:2: -☆:LDP man-pages:3.54=>3.63:2013/12/12:setreuid:2:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/12:setreuid:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/12/12:setreuid32:2:setreuid:2: @:LDP man-pages:3.63:2014/01/22:setrlimit:2:getrlimit:2: ○:LDP man-pages:3.63:2013/02/11:setsid:2:2013/03/25::ysato444@yahoo.co.jp:Yuichi SATO: @@ -378,7 +378,7 @@ ○:LDP man-pages:3.63:2013/04/19:signal:2:2013/07/24::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2009/01/13:signalfd:2:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2009/01/13:signalfd4:2:signalfd:2: -☆:LDP man-pages:3.54=>3.63:2013/12/11:sigpending:2:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/11:sigpending:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2013/04/19:sigprocmask:2:2013/07/24::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/12/16:sigqueue:2:sigqueue:3: ○:LDP man-pages:3.63:2013/07/30:sigreturn:2:2013/08/16::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @@ -401,7 +401,7 @@ @:LDP man-pages:3.63:2013/02/12:stty:2:unimplemented:2: ×:LDP man-pages:3.63:2012/07/13:subpage_prot:2::::: @:LDP man-pages:3.63:2014/02/26:swapoff:2:swapon:2: -☆:LDP man-pages:3.54=>3.63:2014/02/26:swapon:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/26:swapon:2:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2014/02/21:symlink:2:2014/04/14::ysato444@yahoo.co.jp:Yuichi SATO: @:LDP man-pages:3.63:2014/02/21:symlinkat:2:symlink:2: ○:LDP man-pages:3.63:2012/05/04:sync:2:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: @@ -441,7 +441,7 @@ ○:LDP man-pages:3.63:2013/04/17:unshare:2:2014/04/13::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2005/01/09:uselib:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2003/08/04:ustat:2:2013/09/30::ysato444@yahoo.co.jp:Yuichi SATO: -☆:LDP man-pages:3.54=>3.63:2014/02/21:utime:2:2013/10/02::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/21:utime:2:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ×:LDP man-pages:3.63:2014/01/24:utimensat:2::::: @:LDP man-pages:3.63:2014/02/21:utimes:2:utime:2: ○:LDP man-pages:3.63:2012/08/05:vfork:2:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: @@ -589,8 +589,8 @@ @:LDP man-pages:3.63:2010/09/11:atanhl:3:atanh:3: @:LDP man-pages:3.63:2013/10/07:atanl:3:atan:3: ○:LDP man-pages:3.63:2008/12/05:atexit:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/01/22:atof:3:2013/03/25::tyoshino@eng.toyo.ac.jp:Takashi Yoshino: -☆:LDP man-pages:3.54=>3.63:2014/01/22:atoi:3:2013/03/25::argrath@ub32.org:Kentaro Shirakata: +○:LDP man-pages:3.63:2014/01/22:atof:3:2014/04/14::tyoshino@eng.toyo.ac.jp:Takashi Yoshino: +○:LDP man-pages:3.63:2014/01/22:atoi:3:2014/04/14::argrath@ub32.org:Kentaro Shirakata: @:LDP man-pages:3.63:2014/01/22:atol:3:atoi:3: @:LDP man-pages:3.63:2014/01/22:atoll:3:atoi:3: @:LDP man-pages:3.63:2014/01/22:atoq:3:atoi:3: @@ -608,7 +608,7 @@ @:LDP man-pages:3.63:2010/09/10:be32toh:3:endian:3: @:LDP man-pages:3.63:2010/09/10:be64toh:3:endian:3: ○:LDP man-pages:3.63:2013/06/21:bindresvport:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2013/10/22:bsd_signal:3:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/10/22:bsd_signal:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2003/11/01:bsearch:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2002/01/20:bstring:3:2013/03/25::argrath@ub32.org:Kentaro Shirakata: ○:LDP man-pages:3.63:2011/09/22:btowc:3:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: @@ -739,7 +739,7 @@ ○:LDP man-pages:3.63:2013/09/18:creal:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/09/18:crealf:3:creal:3: @:LDP man-pages:3.63:2013/09/18:creall:3:creal:3: -☆:LDP man-pages:3.54=>3.63:2014/02/26:crypt:3:2013/07/24::argrath@ub32.org:Kentaro Shirakata: +○:LDP man-pages:3.63:2014/02/26:crypt:3:2014/04/14::argrath@ub32.org:Kentaro Shirakata: @:LDP man-pages:3.63:2014/02/26:crypt_r:3:crypt:3: ○:LDP man-pages:3.63:2008/08/11:csin:3:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2008/08/11:csinf:3:csin:3: @@ -897,7 +897,7 @@ @:LDP man-pages:3.63:2010/10/31:fesetround:3:fenv:3: @:LDP man-pages:3.63:2010/10/31:fetestexcept:3:fenv:3: @:LDP man-pages:3.63:2010/10/31:feupdateenv:3:fenv:3: -☆:LDP man-pages:3.54=>3.63:2013/10/25:fexecve:3:2013/10/02::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/10/25:fexecve:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2013/07/15:fflush:3:2014/04/13::argrath@ub32.org:Kentaro Shirakata: @:LDP man-pages:3.63:2008/08/29:fflush_unlocked:3:unlocked_stdio:3: ○:LDP man-pages:3.63:2010/09/20:ffs:3:2013/03/25::argrath@ub32.org:Kentaro Shirakata: @@ -1337,7 +1337,7 @@ ○:LDP man-pages:3.63:2014/03/18:mbsinit:3:2014/04/14::hanataka@abyss.rim.or.jp:HANATAKA Shinya: ○:LDP man-pages:3.63:2014/03/18:mbsnrtowcs:3:2014/04/14::hanataka@abyss.rim.or.jp:HANATAKA Shinya: ○:LDP man-pages:3.63:2014/03/18:mbsrtowcs:3:2014/04/14::hanataka@abyss.rim.or.jp:HANATAKA Shinya: -☆:LDP man-pages:3.54=>3.63:2014/03/18:mbstowcs:3:2013/07/24::hanataka@abyss.rim.or.jp:HANATAKA Shinya: +○:LDP man-pages:3.63:2014/03/18:mbstowcs:3:2014/04/14::hanataka@abyss.rim.or.jp:HANATAKA Shinya: ○:LDP man-pages:3.63:2014/03/18:mbtowc:3:2014/04/14::hanataka@abyss.rim.or.jp:HANATAKA Shinya: ×:LDP man-pages:3.63:2014/01/11:mcheck:3::::: ※:LDP man-pages:3.63:2014/01/11:mcheck_check_all:3:mcheck:3: @@ -1359,9 +1359,9 @@ @:LDP man-pages:3.63:2014/02/21:mkfifoat:3:mkfifo:3: @:LDP man-pages:3.63:2013/12/28:mkostemp:3:mkstemp:3: @:LDP man-pages:3.63:2013/12/28:mkostemps:3:mkstemp:3: -☆:LDP man-pages:3.54=>3.63:2013/12/28:mkstemp:3:2013/03/26::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/28:mkstemp:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/12/28:mkstemps:3:mkstemp:3: -☆:LDP man-pages:3.54=>3.63:2014/02/27:mktemp:3:2013/07/24::tanisako@osa.dec.com:Kazuyuki Tanisako: +○:LDP man-pages:3.63:2014/02/27:mktemp:3:2014/04/14::tanisako@osa.dec.com:Kazuyuki Tanisako: @:LDP man-pages:3.63:2013/12/30:mktime:3:ctime:3: @:LDP man-pages:3.63:2014/01/05:mmap64:3:mmap:2: ○:LDP man-pages:3.63:2013/06/21:modf:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @@ -1520,7 +1520,7 @@ ○:LDP man-pages:3.63:2012/03/08:qsort:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2012/03/08:qsort_r:3:qsort:3: ○:LDP man-pages:3.63:2007/12/28:queue:3:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/03/10:raise:3:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/03/10:raise:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2014/01/18:rand:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/01/18:rand_r:3:rand:3: ○:LDP man-pages:3.63:2013/04/19:random:3:2013/07/24::tyoshino@eng.toyo.ac.jp:YOSHINO Takashi: @@ -1606,7 +1606,7 @@ ☆:LDP man-pages:3.54=>3.63:2014/02/18:setbuf:3:2013/03/25::ysato@h4.dion.ne.jp:Yuichi SATO: @:LDP man-pages:3.63:2014/02/18:setbuffer:3:setbuf:3: @:LDP man-pages:3.63:2009/03/15:setcontext:3:getcontext:3: -☆:LDP man-pages:3.54=>3.63:2013/10/11:setenv:3:2013/07/24::ysato444@yahoo.co.jp:Yuichi SATO: +○:LDP man-pages:3.63:2013/10/11:setenv:3:2014/04/14::ysato444@yahoo.co.jp:Yuichi SATO: @:LDP man-pages:3.63:2002/02/28:setfsent:3:getfsent:3: @:LDP man-pages:3.63:2013/06/21:setgrent:3:getgrent:3: @:LDP man-pages:3.63:2014/03/11:sethostent:3:gethostbyname:3: @@ -1656,16 +1656,16 @@ @:LDP man-pages:3.63:2009/02/04:significandf:3:significand:3: @:LDP man-pages:3.63:2009/02/04:significandl:3:significand:3: @:LDP man-pages:3.63:2013/09/24:sigorset:3:sigsetops:3: -☆:LDP man-pages:3.54=>3.63:2014/01/07:sigpause:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2013/12/16:sigqueue:3:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/01/07:sigpause:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/16:sigqueue:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2010/09/20:sigrelse:3:sigset:3: ○:LDP man-pages:3.63:2010/09/20:sigset:3:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/01/07:sigsetjmp:3:setjmp:3: @:LDP man-pages:3.63:2014/02/18:sigsetmask:3:sigvec:3: -☆:LDP man-pages:3.54=>3.63:2013/09/24:sigsetops:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/09/24:sigsetops:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2010/09/26:sigstack:3:sigaltstack:2: ○:LDP man-pages:3.63:2014/02/18:sigvec:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2013/12/16:sigwait:3:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/12/16:sigwait:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2013/12/16:sin:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2013/12/23:sincos:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/12/23:sincosf:3:sincos:3: @@ -1709,7 +1709,7 @@ @:LDP man-pages:3.63:2014/02/28:strcspn:3:strspn:3: ○:LDP man-pages:3.63:2013/04/19:strdup:3:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/04/19:strdupa:3:strdup:3: -☆:LDP man-pages:3.54=>3.63:2014/03/18:strerror:3:2013/07/24::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/03/18:strerror:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/03/18:strerror_r:3:strerror:3: ☆:LDP man-pages:3.54=>3.63:2000/12/05:strfmon:3:2013/07/24::nakano@apm.seikei.ac.jp:NAKANO Takeo: ○:LDP man-pages:3.63:2010/09/20:strfry:3:2013/07/24::motoki@hal.t.u-tokyo.ac.jp:Akihiro Motoki: @@ -1726,20 +1726,20 @@ ○:LDP man-pages:3.63:2014/02/25:strpbrk:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ☆:LDP man-pages:3.54=>3.63:2014/01/17:strptime:3:2013/07/24::ysato@h4.dion.ne.jp:Yuichi SATO: @:LDP man-pages:3.63:2014/01/20:strrchr:3:strchr:3: -☆:LDP man-pages:3.54=>3.63:2014/02/25:strsep:3:2013/07/24::argrath@ub32.org:Kentaro Shirakata: -☆:LDP man-pages:3.54=>3.63:2010/09/15:strsignal:3:2013/07/24::argrath@yo.rim.or.jp:Kentaro Shirakata: -☆:LDP man-pages:3.54=>3.63:2014/02/28:strspn:3:2013/07/24::amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/01/22:strstr:3:2013/07/24::argrath@ub32.org:Kentaro Shirakata: -☆:LDP man-pages:3.54=>3.63:2014/01/22:strtod:3:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/02/25:strsep:3:2014/04/14::argrath@ub32.org:Kentaro Shirakata: +○:LDP man-pages:3.63:2010/09/15:strsignal:3:2014/04/14::argrath@yo.rim.or.jp:Kentaro Shirakata: +○:LDP man-pages:3.63:2014/02/28:strspn:3:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/01/22:strstr:3:2014/04/14::argrath@ub32.org:Kentaro Shirakata: +○:LDP man-pages:3.63:2014/01/22:strtod:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/01/22:strtof:3:strtod:3: -☆:LDP man-pages:3.54=>3.63:2014/01/22:strtoimax:3:2013/03/25::ysato444@yahoo.co.jp:Yuichi SATO: +○:LDP man-pages:3.63:2014/01/22:strtoimax:3:2014/04/14::ysato444@yahoo.co.jp:Yuichi SATO: ○:LDP man-pages:3.63:2013/05/19:strtok:3:2014/04/14:o:amotoki@gmail.com:Akihiro MOTOKI: @:LDP man-pages:3.63:2013/05/19:strtok_r:3:strtok:3: -☆:LDP man-pages:3.54=>3.63:2014/03/18:strtol:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/03/18:strtol:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/01/22:strtold:3:strtod:3: @:LDP man-pages:3.63:2014/03/18:strtoll:3:strtol:3: @:LDP man-pages:3.63:2014/03/18:strtoq:3:strtol:3: -☆:LDP man-pages:3.54=>3.63:2014/03/18:strtoul:3:2013/07/24::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/03/18:strtoul:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/03/18:strtoull:3:strtoul:3: @:LDP man-pages:3.63:2014/01/22:strtoumax:3:strtoimax:3: @:LDP man-pages:3.63:2014/03/18:strtouq:3:strtoul:3: @@ -1775,7 +1775,7 @@ ○:LDP man-pages:3.63:2013/02/12:sysconf:3:2013/10/02::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2012/08/17:syslog:3:2013/03/26:o:amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2010/09/10:system:3:2013/03/25:o:amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2014/01/06:sysv_signal:3:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/01/06:sysv_signal:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2014/01/06:tan:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @:LDP man-pages:3.63:2014/01/06:tanf:3:tan:3: ○:LDP man-pages:3.63:2014/01/07:tanh:3:2014/04/14::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: @@ -2053,14 +2053,14 @@ ○:LDP man-pages:3.63:2014/02/26:ascii:7:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2010/09/19:boot:7:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2013/08/01:bootparam:7:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: -☆:LDP man-pages:3.54=>3.63:2013/09/27:capabilities:7:2013/09/30::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2013/09/27:capabilities:7:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2012/08/05:charsets:7:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2011/09/16:complex:7:2013/03/25::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: ○:LDP man-pages:3.63:2014/02/16:cp1251:7:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ×:LDP man-pages:3.63:2013/02/12:cpuset:7::::: ☆:LDP man-pages:3.54=>3.63:2013/12/27:credentials:7:2013/09/30::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2008/11/20:ddp:7:2013/03/26::nakano@apm.seikei.ac.jp:NAKANO Takeo: -☆:LDP man-pages:3.54=>3.63:2014/01/18:environ:7:2013/07/24::amotoki@gmail.com:Akihiro MOTOKI: +○:LDP man-pages:3.63:2014/01/18:environ:7:2014/04/14::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2012/04/17:epoll:7:2013/03/25::amotoki@gmail.com:Akihiro MOTOKI: ☆:LDP man-pages:3.54=>3.63:2014/03/13:feature_test_macros:7:2013/09/30::amotoki@gmail.com:Akihiro MOTOKI: ○:LDP man-pages:3.63:2008/12/03:fifo:7:2013/09/30::amotoki@dd.iij4u.or.jp:Akihiro MOTOKI: -- 2.11.0