Recent update of man3 entries
Submitted by: Yuko Sasaki <yuko@veltec.co.jp>
This commit is contained in:
parent
6c9a428eee
commit
996d2f02f9
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=14835
58 changed files with 1158 additions and 990 deletions
ja_JP.eucJP/man/man3
_secure_path.3arc4random.3atan2.3bindresvport.3clock.3confstr.3ctermid.3daemon.3devname.3devstat.3directory.3erf.3exp.3fmod.3frexp.3ftpio.3getbootfile.3getbsize.3getcwd.3getdiskbyname.3getdomainname.3gethostid.3gethostname.3getobjformat.3getttyent.3getvfsbyname.3getvfsent.3glob.3hypot.3keycap.3kvm.3kvm_geterr.3kvm_getfiles.3kvm_getloadavg.3kvm_getprocs.3kvm_nlist.3kvm_open.3kvm_read.3lgamma.3login_class.3math.3modf.3moncontrol.3msgctl.3msgget.3msgrcv.3msgsnd.3nice.3pam_authenticate.3pam_chauthtok.3pam_fail_delay.3pam_open_session.3pam_setcred.3pam_start.3pam_strerror.3psignal.3siginterrupt.3sigsetops.3
|
@ -35,7 +35,7 @@
|
|||
.Fn _secure_path "const char *path" "uid_t uid" "gid_t gid"
|
||||
.Sh 解説
|
||||
この関数は、指定のパスについて基本的なセキュリティチェックを行います。
|
||||
これはルート特権で実行中のプロセスが使用することを意図しています。指定の
|
||||
これは root 特権で実行中のプロセスが使用することを意図しています。指定の
|
||||
ファイルの内容を信頼するかどうかを判定するためです。この関数は、システムの
|
||||
危険性を検出するために使用される方法としてよく使われます。
|
||||
ファイルは、次の条件を満たす場合に
|
||||
|
|
|
@ -28,18 +28,21 @@
|
|||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" Manual page, using -mandoc macros
|
||||
.\" %FreeBSD: src/lib/libc/gen/arc4random.3,v 1.8.2.4 2001/12/14 18:33:50 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd April 15, 1997
|
||||
.Dt ARC4RANDOM 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm arc4random,
|
||||
.Nm arc4random_stir,
|
||||
.Nm arc4random ,
|
||||
.Nm arc4random_stir ,
|
||||
.Nm arc4random_addrandom
|
||||
.Nd arc4 乱数ジェネレータ
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <stdlib.h>
|
||||
.In stdlib.h
|
||||
.Ft u_int32_t
|
||||
.Fn arc4random "void"
|
||||
.Ft void
|
||||
|
@ -48,8 +51,8 @@
|
|||
.Fn arc4random_addrandom "unsigned char *dat" "int datlen"
|
||||
.Sh 解説
|
||||
.Fn arc4random
|
||||
関数は、arc4 暗号が採用しているキーストリームジェネレータを
|
||||
使用します。arc4 暗号は、8*8 の 8 ビット S-Box を使用します。
|
||||
関数は、arc4 暗号が採用しているキーストリームジェネレータを使用します。
|
||||
arc4 暗号は、8*8 の 8 ビット S-Box を使用します。
|
||||
S-Box は約
|
||||
.if t 2 2\u\s71700\s10\d
|
||||
.if n (2**1700)
|
||||
|
@ -77,10 +80,9 @@ S-Box
|
|||
.Pa RC4
|
||||
は、RSA Data Security, Inc. によって設計されました。
|
||||
.Pa RC4
|
||||
は、匿名で USENET にポストされ、オリジナルのコードにアクセスした人の
|
||||
いくつかのソースによって同等であることが確認されました。
|
||||
は、匿名で USENET にポストされ、オリジナルのコードにアクセスした
|
||||
複数の人によって同等であることが確認されました。
|
||||
.Pa RC4
|
||||
は企業機密であったので、この暗号は
|
||||
.Pa ARC4
|
||||
と呼ばれています。
|
||||
.\" kuma
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)atan2.3 5.1 (Berkeley) 5/2/91
|
||||
.\" $Id: atan2.3,v 1.4 2002-05-18 07:12:52 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/msun/man/atan2.3,v 1.6.2.4 2001/12/17 10:08:36 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd May 2, 1991
|
||||
|
@ -40,6 +40,8 @@
|
|||
.Nm atan2 ,
|
||||
.Nm atan2f
|
||||
.Nd 2 つの変数の逆正接関数
|
||||
.Sh ライブラリ
|
||||
.Lb libm
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.Ft double
|
||||
|
@ -61,15 +63,15 @@
|
|||
.Fn atan2f
|
||||
関数は、処理が成功すると、範囲
|
||||
.Bk -words
|
||||
.Bq \&- Ns \*)Pi , \&+ Ns \*(Pi
|
||||
.Bq \&- Ns \*(Pi , \&+ Ns \*(Pi
|
||||
.Ek
|
||||
ラジアン内の
|
||||
のラジアンで、
|
||||
.Fa y/ Ns Ar x
|
||||
の逆正接を返します。
|
||||
.Fa x
|
||||
と
|
||||
.Fa y
|
||||
の両方がゼロの場合、
|
||||
の両方が 0 の場合、
|
||||
グローバル変数
|
||||
.Va errno
|
||||
が
|
||||
|
@ -95,7 +97,7 @@ x = y = 0
|
|||
.It Ta
|
||||
.Pf sign( Ar y Ns )*\\*(Pi/2 Ta
|
||||
.Ar x
|
||||
= 0 \*(!=
|
||||
= 0 \(!=
|
||||
.Ar y
|
||||
の場合
|
||||
.El
|
||||
|
@ -129,7 +131,7 @@ x = y = 0
|
|||
(r,theta)
|
||||
.if t\
|
||||
(r,\(*h)
|
||||
に変換します。この座標は、
|
||||
に変換するために最も良く使用されます。この座標は、
|
||||
.if n\
|
||||
r\(**cos theta
|
||||
.if t\
|
||||
|
@ -140,12 +142,11 @@ y =
|
|||
r\(**sin theta
|
||||
.if t\
|
||||
r\(**sin\(*h
|
||||
を満たす必要があります。
|
||||
を満たします。
|
||||
.if n\
|
||||
(r,theta)
|
||||
.if t\
|
||||
(r,\(*h)
|
||||
極座標に変換するのに主に使用されます。これらの等式が
|
||||
これらの等式が
|
||||
満たされるのは、(x=0,y=0) が
|
||||
.Tn VAX
|
||||
で
|
||||
|
@ -169,13 +170,13 @@ theta := atan2(y,x)
|
|||
.It
|
||||
上記の公式は、
|
||||
.Tn IEEE 754
|
||||
に準拠するマシンでは符号付きのゼロおよび無限に、
|
||||
に準拠するマシンでは符号付きの 0 および無限に、
|
||||
合理的な方法で、対処しようと変更する必要はありません。そのようなマシン用に
|
||||
準備された
|
||||
提供されている
|
||||
.Xr hypot 3
|
||||
と
|
||||
.Fn atan2
|
||||
のバージョンがすべてのケースを処理するよう
|
||||
はすべてのケースを処理するよう
|
||||
設計されています。これがたとえば
|
||||
.Fn atan2 \(+-0 \-0
|
||||
= \(+-\*(Pi
|
||||
|
@ -203,6 +204,6 @@ r := \(sr(x\(**x+y\(**y);\0\0 r =0
|
|||
.Sh 規格
|
||||
.Fn atan2
|
||||
関数は
|
||||
.St -ansiC
|
||||
に準拠しています。
|
||||
.St -isoC
|
||||
に適合しています。
|
||||
.\"X kuma
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
.Tn IP
|
||||
ポート、すなわち範囲 0 ~ 1023 のポートに結合するために使用されます。
|
||||
.Pp
|
||||
ルートだけが特権ポートに結合できます。この呼び出しは他のユーザについては
|
||||
root だけが特権ポートに結合できます。この呼び出しは他のユーザについては
|
||||
処理失敗します。
|
||||
.Pp
|
||||
.Va sin
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1990, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" This code is derived from software contributed to Berkeley by
|
||||
.\" the American National Standards Committee X3, on Information
|
||||
|
@ -15,8 +15,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -33,7 +33,8 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)clock.3 8.1 (Berkeley) 6/4/93
|
||||
.\" @(#)clock.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/clock.3,v 1.6.2.3 2001/12/14 18:33:50 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
|
@ -42,13 +43,15 @@
|
|||
.Sh 名称
|
||||
.Nm clock
|
||||
.Nd 使用されたプロセッサ時間を計測する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <time.h>
|
||||
.In time.h
|
||||
.Ft clock_t
|
||||
.Fn clock void
|
||||
.Sh 解説
|
||||
.Fn clock
|
||||
関数は、呼び出されたプロセスの起動時からのプロセッサの使用時間を計算します。
|
||||
関数は、呼び出し元プロセスの、起動時からのプロセッサ使用時間を計算します。
|
||||
これは 1 秒の
|
||||
.Dv CLOCKS_PER_SEC
|
||||
分の 1 を単位として計測されます。
|
||||
|
@ -62,5 +65,5 @@
|
|||
.Sh 規格
|
||||
.Fn clock
|
||||
関数は
|
||||
.St -ansiC
|
||||
に準拠しています。
|
||||
.St -isoC
|
||||
に適合しています。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,17 +29,20 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)confstr.3 8.1 (Berkeley) 6/4/93
|
||||
.\" @(#)confstr.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/confstr.3,v 1.5.2.5 2001/12/14 18:33:50 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
.Dt CONFSTR 3
|
||||
.Os BSD 4
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm confstr
|
||||
.Nd ストリング値の環境設定可能な変数を得る
|
||||
.Nd 文字列値の設定可能変数を得る
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <unistd.h>
|
||||
.In unistd.h
|
||||
.Ft size_t
|
||||
.Fn confstr "int name" "char *buf" "size_t len"
|
||||
.Sh 解説
|
||||
|
@ -50,81 +53,74 @@
|
|||
.Ef
|
||||
.Pp
|
||||
.Fn confstr
|
||||
関数は、環境設定で定義したストリング値をアプリケーションが
|
||||
得るための方式を提供します。
|
||||
関数は、システム構成により定義されている文字列値を、
|
||||
アプリケーションが取得するための方式を提供します。
|
||||
.Pp
|
||||
.Fa name
|
||||
引数は、照会されるシステム変数を指定します。各名前の値の
|
||||
シンボリック定数は、インクルードファイル
|
||||
.Li <unistd.h>
|
||||
引数は、照会されるシステム変数を指定します。
|
||||
各名前の値となるシンボリック定数は、インクルードファイル
|
||||
.Aq Pa unistd.h
|
||||
の中にあります。
|
||||
.Fa len
|
||||
引数は、引数
|
||||
.Fa buf
|
||||
が参照するバッファのサイズを指定します。
|
||||
.Fa len
|
||||
がゼロでない
|
||||
場合、
|
||||
が 0 でない場合、
|
||||
.Fa buf
|
||||
は
|
||||
NULL
|
||||
でないポインタであり、
|
||||
は NULL ではないポインタで、
|
||||
.Fa name
|
||||
には、最高
|
||||
は値を持っており、その値のうち最高
|
||||
.Fa len
|
||||
\- 1
|
||||
バイトの
|
||||
値があり、値はバッファ
|
||||
\- 1 バイトがバッファ
|
||||
.Fa buf
|
||||
にコピーされます。コピーされた値の末尾は必ず
|
||||
NULL
|
||||
です。
|
||||
にコピーされます。
|
||||
コピーされた値の末尾は必ずヌル文字です。
|
||||
.Pp
|
||||
利用可能な値は次のとおりです。
|
||||
.Pp
|
||||
.Bl -tag -width "123456"
|
||||
.Bl -tag -width 6n
|
||||
.Pp
|
||||
.It Li _CS_PATH
|
||||
全標準ユーティリティを検出する
|
||||
.Ev PATH
|
||||
環境設定変数の値を返します。
|
||||
環境変数の値を返します。
|
||||
.El
|
||||
.Sh 戻り値
|
||||
.Fn confstr
|
||||
の呼び出しが正常に完了しない場合、
|
||||
\-1 が返され、該当する
|
||||
の呼び出しが正常に完了しない場合、\-1 が返され、該当する
|
||||
.Va errno
|
||||
が
|
||||
設定されます。そうでない場合、変数に環境設定定義された値がない場合、
|
||||
0 が
|
||||
返され、
|
||||
が設定されます。
|
||||
また変数に、システム構成により定義されている値がない場合 0 が返され、
|
||||
.Va errno
|
||||
は修正されません。そうでない場合は、環境設定定義された
|
||||
値全体を入れるのに必要なバッファサイズが返されます。このサイズが引数
|
||||
は変更されません。
|
||||
それ以外の場合は、設定定義された
|
||||
値全体を入れるのに必要なバッファサイズが返されます。
|
||||
このサイズが引数
|
||||
.Fa len
|
||||
より大きい場合、
|
||||
.Fa buf
|
||||
内のストリングは切り捨てされます。
|
||||
内の文字列は切り捨てられています。
|
||||
.Sh エラー
|
||||
.Fn confstr
|
||||
関数は、処理が正常に完了せず、ライブラリ関数
|
||||
関数がエラーになると、ライブラリ関数
|
||||
.Xr malloc 3
|
||||
と
|
||||
.Xr sysctl 3
|
||||
用に指定されたエラーについて
|
||||
.Va error
|
||||
を設定することがあります。
|
||||
で規定されているエラーを
|
||||
.Va errno
|
||||
に設定することがあります。
|
||||
.Pp
|
||||
さらに、次のエラーがレポートされることがあります。
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa name
|
||||
引数の値は無効です。
|
||||
.Pp
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr sysctl 3
|
||||
.Sh 歴史
|
||||
.Fn confstr
|
||||
関数は
|
||||
.Bx 4.4
|
||||
で最初に現れました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1990, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,7 +29,8 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)ctermid.3 8.1 (Berkeley) 6/4/93
|
||||
.\" @(#)ctermid.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/ctermid.3,v 1.5.2.3 2001/12/14 18:33:50 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
|
@ -38,59 +39,70 @@
|
|||
.Sh 名称
|
||||
.Nm ctermid
|
||||
.Nd 端末パス名を生成する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <stdio.h>
|
||||
.In stdio.h
|
||||
.Ft char *
|
||||
.Fn ctermid "char *buf"
|
||||
.Ft char *
|
||||
.Fn ctermid_r "char *buf"
|
||||
.Sh 解説
|
||||
.Fn ctermid
|
||||
関数は、パス名として使用されたときに、呼び出し元プロセスの現在の
|
||||
制御端末を参照する
|
||||
1 つのストリングを生成します。
|
||||
制御端末を参照する文字列を生成します。
|
||||
.Pp
|
||||
.Ar buf
|
||||
が
|
||||
.Dv NULL
|
||||
ポインタの場合、静的領域を指すポインタが返されます。そうでない
|
||||
場合は、パス名が、
|
||||
ポインタの場合、静的領域を指すポインタが返されます。
|
||||
そうでない場合は、パス名が、
|
||||
.Ar buf
|
||||
で参照されるメモリにコピーされます。引数
|
||||
で参照されるメモリにコピーされます。
|
||||
引数
|
||||
.Ar buf
|
||||
は、
|
||||
少なくとも長さが
|
||||
は、長さが少なくとも
|
||||
.Dv L_ctermid
|
||||
(
|
||||
インクルードファイル
|
||||
(インクルードファイル
|
||||
.Aq Pa stdio.h
|
||||
に定義
|
||||
)
|
||||
バイトと
|
||||
想定されます。
|
||||
に定義) バイトと仮定されます。
|
||||
.Pp
|
||||
現時点では
|
||||
.Fn ctermid_r
|
||||
は、
|
||||
.Ar buf
|
||||
が
|
||||
.Dv NULL
|
||||
ポインタであった場合に
|
||||
.Dv NULL
|
||||
を返すこと以外は、
|
||||
.Fn ctermid
|
||||
と同じ機能を提供します。
|
||||
.Pp
|
||||
現在の実装では単に
|
||||
.Ql /dev/tty
|
||||
だけを返します。
|
||||
を返します。
|
||||
.Sh 戻り値
|
||||
処理が成功すると、
|
||||
.Dv NULL
|
||||
でないポインタが返されます。処理が失敗すると、
|
||||
でないポインタが返されます。
|
||||
処理が失敗すると、
|
||||
.Dv NULL
|
||||
ポインタが返され、グローバル変数
|
||||
.Va errno
|
||||
がエラーを示すように設定されます。
|
||||
.Sh エラー
|
||||
現時点では、エラー条件は検出されません。
|
||||
現在の実装では、検出されるエラー条件はありません。
|
||||
.Sh 関連項目
|
||||
.Xr ttyname 3
|
||||
.Sh 規格
|
||||
.Fn ctermid
|
||||
関数は、
|
||||
.St -p1003.1-88
|
||||
に準拠しています。
|
||||
に適合しています。
|
||||
.Sh バグ
|
||||
デフォルトでは、
|
||||
.Fn ctermid
|
||||
関数は、すべての情報を内部静的オブジェクトに書き
|
||||
込みます。後で
|
||||
関数は、すべての情報を内部の静的オブジェクトに書き込みます。
|
||||
後で
|
||||
.Fn ctermid
|
||||
を呼ぶと、同じオブジェクトが修正されます。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,51 +29,55 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)daemon.3 8.1 (Berkeley) 6/9/93
|
||||
.\" @(#)daemon.3 8.1 (Berkeley) 6/9/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/daemon.3,v 1.6.2.4 2001/12/14 18:33:50 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 9, 1993
|
||||
.Dt DAEMON 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm daemon
|
||||
.Nd バックグラウンドで実行される
|
||||
.Nd バックグラウンドで実行する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <stdlib.h>
|
||||
.In stdlib.h
|
||||
.Ft int
|
||||
.Fn daemon "int nochdir" "int noclose"
|
||||
.Sh 解説
|
||||
.Pp
|
||||
.Fn daemon
|
||||
関数は、制御端末からみずからをデタッチし、システムデーモンとして
|
||||
実行する必要のあるプログラム用です。
|
||||
関数は、制御端末から自分自身を切り離し、システムデーモンとして
|
||||
動作することを望むプログラムのためものです。
|
||||
.Pp
|
||||
引数
|
||||
.Fa nochdir
|
||||
がゼロでない場合を除いて、
|
||||
が 0 の場合、
|
||||
.Fn daemon
|
||||
は現在の作業ディレクトリをルート (``/'') に変更します。
|
||||
.Pp
|
||||
引数
|
||||
.Fa noclose
|
||||
がゼロでない場合を除いて、
|
||||
が 0 の場合、
|
||||
.Fn daemon
|
||||
は、標準入力、標準出力、および標準エラーを ``/dev/null'' に転送します。
|
||||
は、標準入力、標準出力、および標準エラー出力を ``/dev/null'' に
|
||||
リダイレクトします。
|
||||
.Sh エラー
|
||||
エラーが発生すると、
|
||||
.Fn daemon
|
||||
は -1 を返し、グローバル変数
|
||||
.Va errno
|
||||
をライブラリ関数
|
||||
は -1 を返し、ライブラリ関数
|
||||
.Xr fork 2
|
||||
と
|
||||
.Xr setsid 2
|
||||
について指定したエラーに設定します。
|
||||
規定されているエラーをグローバル変数
|
||||
.Va errno
|
||||
に設定します。
|
||||
.Pp
|
||||
.Sh 関連項目
|
||||
.Xr fork 2 ,
|
||||
.Xr setsid 2
|
||||
.Sh 歴史
|
||||
.Fn daemon
|
||||
関数は最初に
|
||||
関数は
|
||||
.Bx 4.4
|
||||
で現れました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,39 +29,49 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)devname.3 8.2 (Berkeley) 4/29/95
|
||||
.\" @(#)devname.3 8.2 (Berkeley) 4/29/95
|
||||
.\" %FreeBSD: src/lib/libc/gen/devname.3,v 1.7.2.5 2002/04/04 06:50:06 dd Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd April 29, 1995
|
||||
.Dd July 18, 1999
|
||||
.Dt DEVNAME 3
|
||||
.Os BSD 4.4
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm devname
|
||||
.Nd デバイス名を得る
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <stdlib.h>
|
||||
.In sys/stat.h
|
||||
.In stdlib.h
|
||||
.Ft char *
|
||||
.Fn devname "dev_t dev" "mode_t type"
|
||||
.Sh 解説
|
||||
.Fn devname
|
||||
関数は、デバイス番号
|
||||
.Fa dev
|
||||
の
|
||||
.Dq Pa /dev
|
||||
内のブロック名または
|
||||
キャラクタデバイスを指すポインタと、
|
||||
と、
|
||||
.Dv S_IFBLK
|
||||
または
|
||||
.Dv S_IFCHR
|
||||
のどちらかがエンコードされている
|
||||
.Fa type
|
||||
でエンコードされたものと一致する
|
||||
ファイルタイプを返します。
|
||||
に一致するファイルタイプとを持つ、
|
||||
.Pa /dev
|
||||
下のブロックデバイスまたはキャラクタデバイスの名前を指すポインタを返します。
|
||||
正しい名前を見つけるために、
|
||||
.Fn devname
|
||||
は、まず
|
||||
.Xr dev_mkdb 8
|
||||
によって作成されたデバイスデータベースを検索します。
|
||||
それに失敗した場合、
|
||||
.Va kern.devname
|
||||
sysctl を用いてカーネルに問い合わせます。
|
||||
それでも適切な名前が作り出せなかった時には、
|
||||
.Fa dev
|
||||
と
|
||||
.Fa type
|
||||
は S_IFBLK または S_IFCHR のどちらかである必要があります。
|
||||
指定の値と一致するデバイスがない場合、または利用できる情報がない場合、
|
||||
NULL が返されます。
|
||||
.Pp
|
||||
デバイスが見つからないときのアプリケーションの従来の表示は
|
||||
ストリング
|
||||
.Dq ??
|
||||
です。
|
||||
に込められている情報を、人が読める形式にフォーマットします。
|
||||
.Sh 関連項目
|
||||
.Xr stat 2 ,
|
||||
.Xr dev_mkdb 8
|
||||
|
@ -69,4 +79,8 @@ NULL
|
|||
.Fn devname
|
||||
関数は
|
||||
.Bx 4.4
|
||||
で現れました。
|
||||
で登場しました。
|
||||
.Sh バグ
|
||||
.Fn devname
|
||||
関数は、内部の静的オブジェクトへのポインタを返します。
|
||||
従って、その後の呼び出しは同一のバッファを修正してしまいます。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\"
|
||||
.\" Copyright (c) 1998 Kenneth D. Merry.
|
||||
.\" Copyright (c) 1998, 1999 Kenneth D. Merry.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
|
@ -25,17 +25,29 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $Id: devstat.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/libdevstat/devstat.3,v 1.7.2.8 2001/12/17 10:08:29 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd May 21, 1998
|
||||
.Dt DEVSTAT 3
|
||||
.Os FreeBSD 3.0
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm devstat
|
||||
.Nm devstat ,
|
||||
.Nm getnumdevs ,
|
||||
.Nm getgeneration ,
|
||||
.Nm getversion ,
|
||||
.Nm checkversion ,
|
||||
.Nm getdevs ,
|
||||
.Nm selectdevs ,
|
||||
.Nm buildmatch ,
|
||||
.Nm compute_stats ,
|
||||
.Nm compute_etime
|
||||
.Nd デバイス統計ユーティリティライブラリ
|
||||
.Sh ライブラリ
|
||||
.Lb libdevstat
|
||||
.Sh 書式
|
||||
.Fd #include <devstat.h>
|
||||
.In sys/dkstat.h
|
||||
.In devstat.h
|
||||
.Ft int
|
||||
.Fn getnumdevs "void"
|
||||
.Ft long
|
||||
|
@ -89,7 +101,7 @@
|
|||
.Fa "struct timeval prev_time"
|
||||
.Fc
|
||||
.Sh 解説
|
||||
.Nm devstat
|
||||
.Nm
|
||||
ライブラリは、カーネル
|
||||
.Xr devstat 9
|
||||
インタフェースを処理するのに
|
||||
|
@ -97,32 +109,32 @@
|
|||
.Xr devstat 9
|
||||
インタフェースは、
|
||||
.Xr sysctl 3
|
||||
によってユーザーがアクセスできます。
|
||||
によってユーザがアクセスできます。
|
||||
.Pp
|
||||
.Fn getnumdevs
|
||||
は、カーネル内の
|
||||
.Nm devstat
|
||||
サブシステムとともに登録された
|
||||
デバイスの番号を返します。
|
||||
.Nm
|
||||
サブシステムに登録された
|
||||
デバイスの数を返します。
|
||||
.Pp
|
||||
.Fn getgeneration
|
||||
は、カーネル内のデバイス
|
||||
.Nm devstat
|
||||
.Nm
|
||||
リストの現在の世代を
|
||||
返します。
|
||||
.Pp
|
||||
.Fn getversion
|
||||
は、現在のカーネル
|
||||
.Nm devstat
|
||||
.Nm
|
||||
デバイスバージョンを返します。
|
||||
.Pp
|
||||
.Fn checkversion
|
||||
は、カーネル
|
||||
.Nm devstat
|
||||
.Nm
|
||||
バージョンに対して
|
||||
userland devstat
|
||||
ユーザランド devstat
|
||||
をチェックします。
|
||||
2 つが同一の場合、ゼロが返されます。そうでない場合は、
|
||||
2 つが同一の場合、0 が返されます。そうでない場合は、
|
||||
.Va devstat_errbuf
|
||||
に該当するエラーを表示し -1 を返します。
|
||||
.Pp
|
||||
|
@ -145,11 +157,18 @@ struct statinfo {
|
|||
.Ed
|
||||
.Pp
|
||||
.Fn getdevs
|
||||
は
|
||||
は、
|
||||
.Va statinfo
|
||||
構造が割り振られるのを予期し、また、定刻より早く
|
||||
構造が割り当てられることを期待し、また、
|
||||
.Fn getdevs
|
||||
の起動の前に
|
||||
.Va dinfo
|
||||
サブエレメントが割り振られるのも予期します。
|
||||
サブエレメントが割り当てられて 0 で初期化されることも期待します。
|
||||
.Va dinfo
|
||||
サブエレメントは、呼び出しと呼び出しの間の状態を格納するために使用され、
|
||||
最初の
|
||||
.Fn getdevs
|
||||
呼び出しの後には変更してはなりません。
|
||||
.Va dinfo
|
||||
サブエレメントには次のエレメントが入っています。
|
||||
.Bd -literal -offset indent
|
||||
|
@ -163,16 +182,16 @@ struct devinfo {
|
|||
.Pp
|
||||
.Va kern.devstat.all sysctl
|
||||
変数には、
|
||||
.Nm devstat
|
||||
.Nm
|
||||
構造の配列が入っていますが、配列の先頭は現在の
|
||||
.Nm devstat
|
||||
.Nm
|
||||
世代です。世代がバッファの先頭にある理由は、
|
||||
.Nm devstat
|
||||
統計にアクセスしている userland ソフトウェアが自動的に
|
||||
統計情報および対応する世代番号の両方を自動的に得るようにするためです。
|
||||
.Nm
|
||||
統計にアクセスしているユーザランドソフトウェアが自動的に
|
||||
統計情報および対応する世代番号の両方を不可分に得るようにするためです。
|
||||
クライアントソフトウェアが別の
|
||||
.Nm sysctl
|
||||
変数 ( これは便宜のために利用できます ) を通じて世代番号を得ることを
|
||||
変数 (これは便宜のために利用できます) を通じて世代番号を得ることを
|
||||
強制された場合、デバイスのリストは、クライアントが世代を得る時刻と、
|
||||
クライアントがデバイスリストを得る時刻の間で変化する可能性があります。
|
||||
.Pp
|
||||
|
@ -187,9 +206,9 @@ struct devinfo {
|
|||
.Va kern.devstat.all
|
||||
.Nm sysctl
|
||||
変数から
|
||||
.Nm devstat
|
||||
.Nm
|
||||
構造の配列の先頭を指すポインタです。
|
||||
.Nm devinfo
|
||||
.Va devinfo
|
||||
構造の世代
|
||||
サブエレメントには、
|
||||
.Va kern.devstat.all
|
||||
|
@ -199,7 +218,7 @@ struct devinfo {
|
|||
構造の
|
||||
.Va numdevs
|
||||
サブエレメントには、カーネル
|
||||
.Nm devstat
|
||||
.Nm
|
||||
サブシステムで登録されたデバイスの現在の番号が入っています。
|
||||
.Pp
|
||||
.Fn selectdevs
|
||||
|
@ -223,7 +242,7 @@ da0, da1, cd0
|
|||
フィールドを基礎にしてソートされます。
|
||||
.Va bytes
|
||||
値は、現時点では、ユーザが保守する必要があります。将来的には、これは
|
||||
.Nm devstat
|
||||
.Nm
|
||||
ライブラリルーチンで行われる可能性があります。デバイスが名前または
|
||||
パターンによって選択されていない場合、性能追跡コードがシステム内の
|
||||
各デバイスを選択し、これらを性能によってソートします。デバイスが名前または
|
||||
|
@ -247,7 +266,7 @@ da0, da1, cd0
|
|||
.Fn selectdevs
|
||||
は、名前または一致パターンによって指定された
|
||||
選択されていないデバイスを選択します。また、これは
|
||||
.Nm devstat
|
||||
.Nm
|
||||
の順序でさらにデバイスを選択します。選択したデバイスの数が
|
||||
.Va maxshowdevs
|
||||
に等しくなるまで、またはすべてのデバイスが選択されるまでです。
|
||||
|
@ -285,14 +304,14 @@ only
|
|||
.Fn selectdevs
|
||||
は、クライアントによって渡された
|
||||
.Va dev_select
|
||||
構造の割り振りとサイズ変更を処理します。
|
||||
構造の割り当てとサイズ変更を処理します。
|
||||
.Fn selectdevs
|
||||
は、
|
||||
.Va numdevs
|
||||
フィールドと
|
||||
.Va current_generation
|
||||
フィールドを使用して、現在の
|
||||
.Nm devstat
|
||||
.Nm
|
||||
世代とデバイスの数を追跡します。
|
||||
.Va num_selections
|
||||
が
|
||||
|
@ -306,7 +325,7 @@ only
|
|||
は、選択リストを必要に応じてサイズ変更し、選択配列を初期化し直します。
|
||||
.Pp
|
||||
.Fn buildmatch
|
||||
は、カンマで区切られた一致ストリングを取り、
|
||||
は、コンマで区切られた一致ストリングを取り、
|
||||
.Fn selectdevs
|
||||
が理解する
|
||||
\fBdevstat_match\fR 構造にコンパイルします。一致ストリングの形式は
|
||||
|
@ -317,12 +336,12 @@ device,type,if
|
|||
.Ed
|
||||
.Pp
|
||||
.Fn buildmatch
|
||||
は、必要に応じて、一致リストの割り振りと再割り振りを
|
||||
は、必要に応じて、一致リストの割り当てと再割り当てを
|
||||
処理します。現時点で既知の一致タイプには次のものが含まれます。
|
||||
.Pp
|
||||
.Bl -tag -width indent -compact
|
||||
.It デバイスタイプ:
|
||||
.Bl -tag -width 123456789 -compact
|
||||
.Bl -tag -width 9n -compact
|
||||
.It da
|
||||
ダイレクトアクセスデバイス
|
||||
.It sa
|
||||
|
@ -352,7 +371,7 @@ CD
|
|||
.El
|
||||
.Pp
|
||||
.It インタフェース:
|
||||
.Bl -tag -width 123456789 -compact
|
||||
.Bl -tag -width 9n -compact
|
||||
.It IDE
|
||||
統合ドライブ電子工学デバイス (Integrated Drive Electronics devices)
|
||||
.It SCSI
|
||||
|
@ -362,7 +381,7 @@ CD
|
|||
.El
|
||||
.Pp
|
||||
.It パススルー:
|
||||
.Bl -tag -width 123456789 -compact
|
||||
.Bl -tag -width 9n -compact
|
||||
.It pass
|
||||
パススルーデバイス
|
||||
.El
|
||||
|
@ -379,7 +398,7 @@ CD
|
|||
と
|
||||
.Va previous
|
||||
の
|
||||
.Nm devstat
|
||||
.Nm
|
||||
構造の両方を指定したいと思うものです。指定期間に渡って統計が
|
||||
計算できるようにするためにです。インスタンスによっては、システム起動からの
|
||||
統計を計算するために、ユーザは
|
||||
|
@ -442,7 +461,7 @@ CD
|
|||
関数 (
|
||||
.Va statinfo
|
||||
構造体内 ) が、現在の
|
||||
.Nm devstat
|
||||
.Nm
|
||||
リストを取り出すたびに、
|
||||
.Fn getdevs
|
||||
関数が記録した時刻とともに最も一般的に使用されます。
|
||||
|
@ -455,7 +474,7 @@ CD
|
|||
変数を取り出すときにエラーがあった場合は -1 を返します。
|
||||
.Pp
|
||||
.Fn checkversion
|
||||
は、カーネルと userland devstat バージョンが一致する場合、
|
||||
は、カーネルとユーザランド devstat バージョンが一致する場合、
|
||||
0 を返します。一致しない場合、 -1 を返します。
|
||||
.Pp
|
||||
.Fn getdevs
|
||||
|
@ -478,7 +497,7 @@ CD
|
|||
.Fn compute_etime
|
||||
計算済みの経過時間を返します。
|
||||
.Pp
|
||||
.Nm devstat
|
||||
.Nm
|
||||
ライブラリ関数の 1 つからエラーが返された場合、一般に、エラーの
|
||||
理由がグローバルストリング
|
||||
.Va devstat_errbuf
|
||||
|
@ -494,20 +513,19 @@ CD
|
|||
.Xr vmstat 8 ,
|
||||
.Xr devstat 9
|
||||
.Sh 歴史
|
||||
.Nm devstat
|
||||
.Nm
|
||||
統計システムは最初に
|
||||
.Fx 3.0
|
||||
に現れました。
|
||||
.Sh 作者
|
||||
Kenneth Merry
|
||||
.Aq ken@FreeBSD.ORG
|
||||
.An Kenneth Merry Aq ken@FreeBSD.org
|
||||
.Sh バグ
|
||||
.Fn getdevs ,
|
||||
.Fn selectdevs
|
||||
、および
|
||||
.Fn buildmatch
|
||||
によって割り振られたメモリを
|
||||
割り振り解除するためのインタフェースがおそらくあるはずです。
|
||||
割り当て解除するためのインタフェースがおそらくあるはずです。
|
||||
.Pp
|
||||
.Fn selectdevs
|
||||
は、デバイスが以前に選択されていない場合、
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1983, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,30 +29,36 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)directory.3 8.1 (Berkeley) 6/4/93
|
||||
.\" @(#)directory.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/directory.3,v 1.7.2.4 2001/12/14 18:33:50 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
.Dt DIRECTORY 3
|
||||
.Os BSD 4.2
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm opendir ,
|
||||
.Nm readdir ,
|
||||
.Nm readdir_r ,
|
||||
.Nm telldir ,
|
||||
.Nm seekdir ,
|
||||
.Nm rewinddir ,
|
||||
.Nm closedir ,
|
||||
.Nm dirfd
|
||||
.Nd ディレクトリ操作
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/types.h>
|
||||
.Fd #include <dirent.h>
|
||||
.In sys/types.h
|
||||
.In dirent.h
|
||||
.Ft DIR *
|
||||
.Fn opendir "const char *filename"
|
||||
.Ft struct dirent *
|
||||
.Fn readdir "DIR *dirp"
|
||||
.Ft int
|
||||
.Fn readdir_r "DIR *dirp" "struct dirent *entry" "struct dirent **result"
|
||||
.Ft long
|
||||
.Fn telldir "const DIR *dirp"
|
||||
.Fn telldir "DIR *dirp"
|
||||
.Ft void
|
||||
.Fn seekdir "DIR *dirp" "long loc"
|
||||
.Ft void
|
||||
|
@ -65,83 +71,103 @@
|
|||
.Fn opendir
|
||||
関数は、
|
||||
.Fa filename
|
||||
で指名されたディレクトリを開き、
|
||||
で指定されたディレクトリを開き、
|
||||
.Em ディレクトリストリーム
|
||||
をそれに対応させ、後続の操作での
|
||||
をそれに対応させ、後続の操作で
|
||||
.Em ディレクトリストリーム
|
||||
を識別するのに使用するポインタを返します。
|
||||
.Fa filename
|
||||
に
|
||||
アクセスできない場合、またはすべてのものを保持するのに十分なメモリを
|
||||
にアクセスできない場合、またはすべてのものを保持するのに十分なメモリを
|
||||
.Xr malloc 3
|
||||
できない場合は、ポインタ
|
||||
.Dv NULL
|
||||
が返されます。
|
||||
.Pp
|
||||
.Fn readdir
|
||||
関数は、次のディレクトリエントリを指すポインタを返します。この
|
||||
関数は、ディレクトリの末尾に到達するか、または無効な
|
||||
関数は、次のディレクトリエントリを指すポインタを返します。
|
||||
この関数は、ディレクトリの末尾に到達するか、または無効な
|
||||
.Fn seekdir
|
||||
操作を
|
||||
検出すると
|
||||
操作を検出すると
|
||||
.Dv NULL
|
||||
を返します。
|
||||
.Pp
|
||||
.Fn readdir_r
|
||||
は、
|
||||
.Fn readdir
|
||||
と同様の機能を提供しますが、
|
||||
呼び出し元は結果を格納するためのディレクトリ
|
||||
.Fa entry
|
||||
バッファを提供しなければなりません。
|
||||
読み込みが成功すると
|
||||
.Fa result
|
||||
は
|
||||
.Fa entry
|
||||
を指し、ディレクトリの末尾に達すると
|
||||
.Fa result
|
||||
は
|
||||
.Dv NULL
|
||||
に設定されます。
|
||||
.Fn readdir_r
|
||||
は、成功した場合 0 を返し、そうでなければ失敗を示すエラーナンバを返します。
|
||||
.Pp
|
||||
.Fn telldir
|
||||
関数は、名前の付いた
|
||||
関数は、指定された
|
||||
.Em ディレクトリストリーム
|
||||
に対応する現在の位置を返します。
|
||||
に関連付けられている現在の位置を返します。
|
||||
.Fn telldir
|
||||
が返す値が良いのは、派生させられる元となった
|
||||
が返す値が有効なのは、その値が引き出された元の
|
||||
.Dv DIR
|
||||
ポインタ
|
||||
.Fa dirp
|
||||
の寿命の間だけです。ディレクトリが閉じられ再び開かれると、
|
||||
が生きている間だけです。
|
||||
ディレクトリが閉じられ再び開かれると、
|
||||
.Fn telldir
|
||||
が返した以前の値はもはや有効ではありません。
|
||||
.Pp
|
||||
.Fn seekdir
|
||||
関数は、
|
||||
関数は、その
|
||||
.Em ディレクトリストリーム
|
||||
への次の
|
||||
に対する次の
|
||||
.Fn readdir
|
||||
操作の位置を設定します。新しい位置は、
|
||||
.Fn telldir
|
||||
操作が実行されたときの
|
||||
操作の位置を設定します。
|
||||
新しい位置は、その
|
||||
.Em ディレクトリストリーム
|
||||
と対応付けられたものに戻ります。
|
||||
と関連付けられているもので、
|
||||
.Fn telldir
|
||||
操作が実行されたときに返されるものです。
|
||||
.Pp
|
||||
.Fn rewinddir
|
||||
関数は、名前の付いた
|
||||
関数は、指定された
|
||||
.Em ディレクトリストリーム
|
||||
の位置をディレクトリの先頭にリセットします。
|
||||
の位置をそのディレクトリの先頭に戻します。
|
||||
.Pp
|
||||
.Fn closedir
|
||||
関数は、名前の付いた
|
||||
関数は、指定された
|
||||
.Em ディレクトリストリーム
|
||||
を閉じ、
|
||||
.Fa dirp
|
||||
ポインタに対応する構造を解放し、処理が成功した場合は 0 を返します。
|
||||
処理が失敗すると、\-1 が返され、グローバル変数
|
||||
ポインタに関連付けられた構造体を解放します。
|
||||
処理が成功した場合は 0 を返します。
|
||||
処理が失敗すると \-1 が返され、エラーを示ためにグローバル変数
|
||||
.Va errno
|
||||
が設定されてエラーを示すようになります。
|
||||
が設定されます。
|
||||
.Pp
|
||||
.Fn dirfd
|
||||
関数は、名前の付いた
|
||||
関数は、指定された
|
||||
.Em ディレクトリストリーム
|
||||
に対応する整数ファイル記述子を返します。
|
||||
に関連付けられた整数のファイル記述子を返します。
|
||||
.Xr open 2
|
||||
を参照してください。
|
||||
.Pp
|
||||
ディレクトリでエントリ「name」を検索するサンプルコードは次のとおりです。
|
||||
ディレクトリでエントリ ``name'' を検索するサンプルコードは次のとおりです。
|
||||
.Bd -literal -offset indent
|
||||
len = strlen(name);
|
||||
dirp = opendir(".");
|
||||
while ((dp = readdir(dirp)) != NULL)
|
||||
if (dp->d_namlen == len && !strcmp(dp->d_name, name)) {
|
||||
(void)closedir(dirp);
|
||||
return FOUND;
|
||||
}
|
||||
if (dp->d_namlen == len && !strcmp(dp->d_name, name)) {
|
||||
(void)closedir(dirp);
|
||||
return FOUND;
|
||||
}
|
||||
(void)closedir(dirp);
|
||||
return NOT_FOUND;
|
||||
.Pp
|
||||
|
@ -158,9 +184,9 @@ return NOT_FOUND;
|
|||
.Fn telldir ,
|
||||
.Fn seekdir ,
|
||||
.Fn rewinddir ,
|
||||
.Fn closedir ,
|
||||
.Fn closedir
|
||||
および
|
||||
.Fn dirfd
|
||||
の各関数は
|
||||
.Bx 4.2
|
||||
で現れました。
|
||||
で登場しました。
|
||||
|
|
|
@ -30,20 +30,22 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)erf.3 6.4 (Berkeley) 4/20/91
|
||||
.\" $Id: erf.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/msun/man/erf.3,v 1.5.2.4 2001/12/17 10:08:36 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd April 20, 1991
|
||||
.Dt ERF 3
|
||||
.Os BSD 4.3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm erf ,
|
||||
.Nm erff ,
|
||||
.Nm erfc ,
|
||||
.Nm erfcf
|
||||
.Nd エラー関数演算子
|
||||
.Nd 誤差関数の演算子
|
||||
.Sh ライブラリ
|
||||
.Lb libm
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.In math.h
|
||||
.Ft double
|
||||
.Fn erf "double x"
|
||||
.Ft float
|
||||
|
@ -55,17 +57,17 @@
|
|||
.Sh 解説
|
||||
これらの関数は
|
||||
.Fa x
|
||||
のエラー関数を計算します。
|
||||
の誤差関数を計算します。
|
||||
.Pp
|
||||
.Fn erf
|
||||
関数と
|
||||
.Fn erff
|
||||
関数は x のエラー関数を計算します。ここで次のとおりです。
|
||||
.Bd -filled -offset indent
|
||||
関数は、次のように、x の誤差関数 (error function) を計算します。
|
||||
.Bd -ragged -offset indent
|
||||
.if n \{\
|
||||
erf(x) = 2/sqrt(pi)\(**\|integral from 0 to x of exp(\-t\(**t) dt \}
|
||||
.if t \{\
|
||||
erf\|(x) :=
|
||||
erf\|(x) :=
|
||||
(2/\(sr\(*p)\|\(is\d\s8\z0\s10\u\u\s8x\s10\d\|exp(\-t\u\s82\s10\d)\|dt \}
|
||||
.Ed
|
||||
.Pp
|
||||
|
@ -74,14 +76,14 @@ erf\|(x) :=
|
|||
.Fn erfcf
|
||||
関数は
|
||||
.Fa x
|
||||
の補数のエラー関数を計算します。すなわち、
|
||||
の相補誤差関数 (complementary error function) を計算します。すなわち、
|
||||
.Fn erfc
|
||||
は 1.0 から エラー関数
|
||||
は 1.0 から誤差関数
|
||||
.Fn erf x
|
||||
の結果を減算します。これは便利です。
|
||||
の結果を減算します。
|
||||
大きな
|
||||
.Fa x
|
||||
の場所がなくなるからです。
|
||||
に対しては桁が失われてしまうため、この関数が有用です。
|
||||
.Sh 関連項目
|
||||
.Xr math 3
|
||||
.Sh 歴史
|
||||
|
@ -90,4 +92,4 @@ erf\|(x) :=
|
|||
.Fn erfc
|
||||
関数は
|
||||
.Bx 4.3
|
||||
で現れました。
|
||||
で登場しました。
|
||||
|
|
|
@ -30,18 +30,15 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)exp.3 6.12 (Berkeley) 7/31/91
|
||||
.\" $Id: exp.3,v 1.5 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/msun/man/exp.3,v 1.9.2.4 2001/12/17 10:08:36 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd July 31, 1991
|
||||
.Dt EXP 3
|
||||
.Os BSD 4
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm exp ,
|
||||
.Nm expf ,
|
||||
.Nm exp2 ,
|
||||
.Nm exp2f ,
|
||||
.Nm exp10 ,
|
||||
.Nm exp10f ,
|
||||
.Nm expm1 ,
|
||||
|
@ -55,8 +52,10 @@
|
|||
.Nm pow ,
|
||||
.Nm powf
|
||||
.Nd 指数関数、対数関数、累乗関数
|
||||
.Sh ライブラリ
|
||||
.Lb libm
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.In math.h
|
||||
.Ft double
|
||||
.Fn exp "double x"
|
||||
.Ft float
|
||||
|
@ -126,7 +125,7 @@
|
|||
に対して
|
||||
.Ar x
|
||||
の値を計算します。
|
||||
.Sh エラー (丸めなどのためによる)
|
||||
.Sh 誤差 (丸めなどのためによる)
|
||||
.Fn exp x ,
|
||||
.Fn log x ,
|
||||
.Fn expm1 x
|
||||
|
@ -141,23 +140,23 @@
|
|||
内部で正確です。1
|
||||
.Em ulp
|
||||
は
|
||||
.Em Last
|
||||
.Em Place
|
||||
内の 1
|
||||
.Em 最後の
|
||||
.Em 場所
|
||||
での 1
|
||||
.Em 単位
|
||||
です。
|
||||
.Fn pow x y
|
||||
のエラーは、大きさが中程度のときは約 2
|
||||
の誤差は、大きさが中程度のときは約 2
|
||||
.Em ulps
|
||||
未満です。
|
||||
.Fn pow x y
|
||||
がオーバーフロー/アンダーフローしきい値に近づくと増大します。最後には、
|
||||
ほとんどすべてのビットが浮動小数点指数フィールドによって占められれて
|
||||
ほとんどすべてのビットが浮動小数点指数フィールドによって占められて
|
||||
失われます。これは
|
||||
.Tn "VAX D"
|
||||
では 8 ビットであり、IEEE 754 Double では 11 ビットです。
|
||||
このように大きな欠落は試験によって明らかにされていません。
|
||||
観察された最悪のエラーは、
|
||||
観察された最悪の誤差は、
|
||||
.Tn "VAX D"
|
||||
については 20
|
||||
.Em ulps
|
||||
|
@ -177,7 +176,7 @@
|
|||
.Tn IEEE
|
||||
754 については 2**53 より大きくなります。
|
||||
.Sh 戻り値
|
||||
これらの関数は、エラーが発生するか引数が範囲外の場合を除き、
|
||||
これらの関数は、誤差が発生するか引数が範囲外の場合を除き、
|
||||
適切な計算を返します。関数
|
||||
.Fn exp ,
|
||||
.Fn expm1 ,
|
||||
|
@ -191,13 +190,14 @@
|
|||
.Tn VAX
|
||||
または
|
||||
.Tn Tahoe
|
||||
で予約済みのオペランド障害を発生させます。関数
|
||||
で予約オペランドフォルトを発生させます。関数
|
||||
.Fn pow x y
|
||||
は、
|
||||
.Fa x
|
||||
< 0 かどうかをチェックし、
|
||||
< 0 か
|
||||
.Fa y
|
||||
が整数でない場合、これが真の場合でも、グローバル変数
|
||||
が整数でないかチェックします。
|
||||
この場合、グローバル変数
|
||||
.Va errno
|
||||
を
|
||||
.Er EDOM
|
||||
|
@ -205,7 +205,13 @@
|
|||
.Tn VAX
|
||||
と
|
||||
.Tn Tahoe
|
||||
で、予約済みのオペランド障害を生成します。
|
||||
で、予約オペランドフォルトを生成します。
|
||||
.Fa x
|
||||
> 0 でない場合の log と、
|
||||
.Fa x
|
||||
> \-1 でない場合の
|
||||
.Fn log1p
|
||||
は、
|
||||
.Tn VAX
|
||||
と
|
||||
.Tn Tahoe
|
||||
|
@ -213,13 +219,7 @@
|
|||
.Va errno
|
||||
が
|
||||
.Er EDOM
|
||||
に設定され、
|
||||
.Fa x
|
||||
> 0 の場合を除いて、予約済みオペランドが対数によって返され、
|
||||
.Fa x
|
||||
> \-1 の場合を除いて
|
||||
.Fn log1p
|
||||
によって返されます。
|
||||
に設定され、予約オペランドフォルトが返されます。
|
||||
.Sh 注
|
||||
関数 exp(x)\-1 と log(1+x) は、Hewlett Packard
|
||||
.Tn HP Ns \-71B
|
||||
|
@ -251,13 +251,13 @@ infinity
|
|||
にはありません)、
|
||||
.Em NaN
|
||||
.Tn ( VAX
|
||||
の予約済みオペランド) が含まれます。
|
||||
pow のこれまでの実現は、これらのすべての場合またはいくつかの場合に、
|
||||
の予約オペランド) が含まれます。
|
||||
pow のこれまでの実装は、これらのすべての場合またはいくつかの場合に、
|
||||
x**0 を未定義としてきたことがあります。
|
||||
これが必ず x**0 = 1 を返す理由です。
|
||||
.Bl -enum -width indent
|
||||
.It
|
||||
x**0 を計算する前に x がゼロ
|
||||
x**0 を計算する前に x が 0
|
||||
(または無限または \*(Na) であるかを試験するプログラムは
|
||||
0**0 = 1 であるかどうかを配慮できません。
|
||||
0**0 が無効であることに左右されるプログラムは、
|
||||
|
@ -278,8 +278,8 @@ x**y
|
|||
0**0 = 1 を受け入れます。
|
||||
0**0 = 1 を受け入れる理由は次のとおりです。
|
||||
.Bd -filled -offset indent
|
||||
x(z) と y(z) が z = 0 付近の 0 で分析的な関数であり
|
||||
(拡張可能な累乗シリーズ)、
|
||||
x(z) と y(z) が z = 0 付近の z で分析的な関数であり
|
||||
(累乗の連続で拡張可能)、
|
||||
しかも x(0) = y(0) = 0 の場合、z \(-> 0 のとき
|
||||
x(z)**y(z) \(-> 1 です。
|
||||
.Ed
|
||||
|
@ -302,7 +302,7 @@ infinity**0 = 1/0**0 = 1
|
|||
.Fn pow
|
||||
関数は
|
||||
.At v6
|
||||
で現れました。
|
||||
で登場しました。
|
||||
.Fn log10
|
||||
関数は
|
||||
.At v7
|
||||
|
@ -312,4 +312,4 @@ infinity**0 = 1/0**0 = 1
|
|||
.Fn expm1
|
||||
関数は
|
||||
.Bx 4.3
|
||||
で現れました。
|
||||
で登場しました。
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)fmod.3 5.1 (Berkeley) 5/2/91
|
||||
.\" $Id: fmod.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/msun/man/fmod.3,v 1.5.2.2 2001/12/17 10:08:36 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd May 2, 1991
|
||||
|
@ -40,8 +40,10 @@
|
|||
.Nm fmod ,
|
||||
.Nm fmodf
|
||||
.Nd 浮動小数の余りを求める関数
|
||||
.Sh ライブラリ
|
||||
.Lb libm
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.In math.h
|
||||
.Ft double
|
||||
.Fn fmod "double x" "double y"
|
||||
.Ft float
|
||||
|
@ -52,10 +54,10 @@
|
|||
.Fn fmodf
|
||||
関数は、
|
||||
.Fa x Ns / Fa y
|
||||
の浮動小数の余りを算出します。
|
||||
の浮動小数点数の余りを算出します。
|
||||
.Sh 戻り値
|
||||
.Fa y
|
||||
がゼロでない場合、結果が
|
||||
が 0 でない場合、結果が
|
||||
.Fa x
|
||||
と同じ符号になり、かつ、結果の大きさが
|
||||
.Fa y
|
||||
|
@ -69,18 +71,18 @@
|
|||
.Sm off
|
||||
.Fa x - Em i * Fa y
|
||||
.Sm on
|
||||
を戻します。
|
||||
を返します。
|
||||
.Fa y
|
||||
がゼロである場合、ドメインエラーを発生させるか、または
|
||||
が 0 である場合、ドメインエラーを発生させるか、または
|
||||
.Fn fmod
|
||||
関数と
|
||||
.Fn fmodf
|
||||
関数がゼロを戻すかはシステムで定義されます。
|
||||
関数が 0 を返すかはシステムで定義されます。
|
||||
.Sh 関連項目
|
||||
.Xr math 3
|
||||
.Sh 規格
|
||||
.Fn fmod
|
||||
関数は、
|
||||
.St -ansiC
|
||||
に準拠しています。
|
||||
.St -isoC
|
||||
適合しています。
|
||||
.\"X kuma 1999-11-5
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)frexp.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/frexp.3,v 1.4.2.4 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
|
@ -41,15 +42,17 @@
|
|||
.Os
|
||||
.Sh 名称
|
||||
.Nm frexp
|
||||
.Nd 浮動小数を小数部と整数部に変換
|
||||
.Nd 浮動小数点数を小数部と整数部に変換
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.In math.h
|
||||
.Ft double
|
||||
.Fn frexp "double value" "int *exp"
|
||||
.Sh 解説
|
||||
.Fn frexp
|
||||
関数は、浮動小数を分割して、正規化された小数部分と
|
||||
2 の整数累乗に分けます。
|
||||
関数は、浮動小数点数を分割して、正規化された小数の部分と
|
||||
2 の整数累乗の部分に分けます。
|
||||
整数部は、
|
||||
.Fa exp
|
||||
が指す
|
||||
|
@ -57,20 +60,22 @@
|
|||
オブジェクトに保存されます。
|
||||
.Sh 戻り値
|
||||
.Fn frexp
|
||||
関数は、区間
|
||||
.Bq 1/2 , 1
|
||||
に入る、もしくは大きさがゼロであり、かつ、
|
||||
それに 2 の
|
||||
関数は、次のような値
|
||||
.Em x
|
||||
を返します。
|
||||
すなわち
|
||||
.Em x
|
||||
は、大きさが区間
|
||||
.Bo 1/2 , 1 Pc
|
||||
に入るかもしくは 0 の
|
||||
.Em double
|
||||
値であり、それに 2 の
|
||||
.Fa *exp
|
||||
乗を掛けると
|
||||
.Fa value
|
||||
と等しくなる
|
||||
.Em double
|
||||
の値
|
||||
.Em x
|
||||
を戻します。
|
||||
と等しくなります。
|
||||
.Fa value
|
||||
がゼロである場合、結果のどちらの部分もゼロになります。
|
||||
が 0 である場合、結果のどちらの部分も 0 になります。
|
||||
.Sh 関連項目
|
||||
.Xr ldexp 3 ,
|
||||
.Xr math 3 ,
|
||||
|
@ -79,6 +84,6 @@
|
|||
.Sh 規格
|
||||
.Fn frexp
|
||||
関数は、
|
||||
.St -ansiC
|
||||
に準拠しています。
|
||||
.St -isoC
|
||||
に適合しています。
|
||||
.\"X kuma 1999-11-6
|
||||
|
|
|
@ -22,11 +22,11 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $Id: ftpio.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/libftpio/ftpio.3,v 1.21.2.8 2001/12/17 10:08:30 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 17, 1996
|
||||
.Dt ftpio 3
|
||||
.Dt FTPIO 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm ftpLogin ,
|
||||
|
@ -40,39 +40,47 @@
|
|||
.Nm ftpPassive ,
|
||||
.Nm ftpVerbose ,
|
||||
.Nm ftpGetURL ,
|
||||
.Nm ftpPutURL
|
||||
.Nm ftpPutURL ,
|
||||
.Nm ftpLoginAf ,
|
||||
.Nm ftpGetURLAf ,
|
||||
.Nm ftpPutURLAf
|
||||
.Nd FTPIO ユーザライブラリ
|
||||
.Sh 書式
|
||||
.Fd #include <ftpio.h>
|
||||
.In ftpio.h
|
||||
.Ft FILE *
|
||||
.Fn ftpLogin "char *host" "char *user" "char *passwd" "int ftp_port" "int verbose" "int *retcode"
|
||||
.Ft int
|
||||
.Fn ftpChdir "FILE *stream, char *dirname"
|
||||
.Fn ftpChdir "FILE *stream" "char *dirname"
|
||||
.Ft int
|
||||
.Fn ftpErrno "FILE *stream"
|
||||
.Ft const char *
|
||||
.Fn ftpErrString "int errno"
|
||||
.Ft time_t
|
||||
.Fn ftpGetModtime "FILE *stream, char *file"
|
||||
.Fn ftpGetModtime "FILE *stream" "char *file"
|
||||
.Ft off_t
|
||||
.Fn ftpGetSize "FILE *stream, char *file"
|
||||
.Fn ftpGetSize "FILE *stream" "char *file"
|
||||
.Ft FILE *
|
||||
.Fn ftpGet "FILE *stream, char *file, off_t *seekto"
|
||||
.Fn ftpGet "FILE *stream" "char *file" "off_t *seekto"
|
||||
.Ft FILE *
|
||||
.Fn ftpPut "FILE *stream, char *file"
|
||||
.Fn ftpPut "FILE *stream" "char *file"
|
||||
.Ft int
|
||||
.Fn ftpAscii "FILE *stream"
|
||||
.Ft int
|
||||
.Fn ftpBinary "FILE *stream"
|
||||
.Ft int
|
||||
.Fn ftpPassive "FILE *stream, int status"
|
||||
.Fn ftpPassive "FILE *stream" "int status"
|
||||
.Ft void
|
||||
.Fn ftpVerbose "FILE *stream, int status"
|
||||
.Fn ftpVerbose "FILE *stream" "int status"
|
||||
.Ft FILE *
|
||||
.Fn ftpGetURL "char *url, char *user, char *passwd, int *retcode"
|
||||
.Fn ftpGetURL "char *url" "char *user" "char *passwd" "int *retcode"
|
||||
.Ft FILE *
|
||||
.Fn ftpPutURL "char *url, char *user, char *passwd, int *retcode"
|
||||
|
||||
.Fn ftpPutURL "char *url" "char *user" "char *passwd" "int *retcode"
|
||||
.Ft FILE *
|
||||
.Fn ftpLoginAf "char *host" "int af" "char *user" "char *passwd" "int ftp_port" "int verbose" "int *retcode"
|
||||
.Ft FILE *
|
||||
.Fn ftpGetURLAf "char *url" "int af" "char *user" "char *passwd" "int *retcode"
|
||||
.Ft FILE *
|
||||
.Fn ftpPutURLAf "char *url" "int af" "char *user" "char *passwd" "int *retcode"
|
||||
.Sh 解説
|
||||
この関数は、FTP コネクションを管理するための
|
||||
高レベルなライブラリを実装します。
|
||||
|
@ -88,23 +96,23 @@
|
|||
.Fa verbose
|
||||
フィールドを
|
||||
使用してログインしようとします。ログインに成功すれば、標準的な
|
||||
ストリーム記述子が戻されます。この記述子は、後の FTP オペレーションに
|
||||
渡してください。エラーが発生した場合は NULL が戻され、
|
||||
ストリーム記述子が返されます。この記述子は、後の FTP オペレーションに
|
||||
渡してください。エラーが発生した場合は NULL が返され、
|
||||
.Fa retcode
|
||||
には、外部サーバが戻すエラーコードが入ります。
|
||||
には、外部サーバが返すエラーコードが入ります。
|
||||
.Pp
|
||||
.Fn ftpChdir
|
||||
は、サーバの CD コマンドを出し、
|
||||
.Fa dir
|
||||
で指定された
|
||||
ディレクトリに変更しようとします。問題がなければゼロが戻されます。
|
||||
問題がある場合は、サーバのエラーコードが戻されます。
|
||||
ディレクトリに変更しようとします。問題がなければ 0 が返されます。
|
||||
問題がある場合は、サーバのエラーコードが返されます。
|
||||
.Pp
|
||||
.Fn ftpErrno
|
||||
は、最後のオペレーションのサーバエラーコードを戻します。
|
||||
は、最後のオペレーションのサーバエラーコードを返します。
|
||||
FTP のエラーコードに精通している場合は、エラーの原因の確認に有益です。
|
||||
.Fn ftpErrString
|
||||
は、人間が判読できるサーバエラーコードを戻します。
|
||||
は、人間が判読できるサーバエラーコードを返します。
|
||||
.Pp
|
||||
.Fn ftpGet
|
||||
は、
|
||||
|
@ -112,28 +120,28 @@ FTP
|
|||
引数が指定するファイルを取り出し (FTP サーバのカレントディレクトリ
|
||||
からの相対パスと想定される。
|
||||
.Fn ftpChdir
|
||||
参照)、そのファイルのための新しい FILE* ポインタを戻します。
|
||||
エラーが発生した場合は NULL を戻します。
|
||||
参照)、そのファイルのための新しい FILE* ポインタを返します。
|
||||
エラーが発生した場合は NULL を返します。
|
||||
.Fa seekto
|
||||
が NULL ではない場合、これが指す整数の内容は、ファイルの再開ポイント
|
||||
として使用されます。つまり、戻されたストリームは、ファイルの
|
||||
として使用されます。つまり、返されたストリームは、ファイルの
|
||||
.Fa *seekto
|
||||
バイトを指しているということです。これは、エラーで失敗した転送を
|
||||
効率的に再開する際に便利です。シーク操作がエラーになった場合、
|
||||
.Fa *seekto
|
||||
の値はゼロになります。
|
||||
の値は 0 になります。
|
||||
.Pp
|
||||
.Fn ftpGetModtime
|
||||
は、
|
||||
.Fa file
|
||||
引数が指定するファイルの最終修正時刻を
|
||||
戻します。ファイルをオープンできない場合は 0 が戻されます。
|
||||
返します。ファイルをオープンできない場合は 0 が返されます。
|
||||
.Pp
|
||||
.Fn ftpGetSize
|
||||
は、
|
||||
.Fa file
|
||||
引数が指定するファイルのサイズをバイト単位で
|
||||
戻します。ファイルをオープンできない場合は -1 が戻されます。
|
||||
返します。ファイルをオープンできない場合は -1 が返されます。
|
||||
.Pp
|
||||
.Fn ftpPut
|
||||
は、
|
||||
|
@ -143,7 +151,7 @@ FTP
|
|||
.Fn ftpChdir
|
||||
参照)、ファイルの新しい
|
||||
.Fa stream
|
||||
ポインタを戻します。エラーが発生した場合は NULL を戻します。
|
||||
ポインタを返します。エラーが発生した場合は NULL を返します。
|
||||
.Pp
|
||||
.Fn ftpAscii
|
||||
は、
|
||||
|
@ -178,7 +186,7 @@ ASCII
|
|||
が指定するファイルを取り出します。これは、
|
||||
サーバの
|
||||
.Fa stream
|
||||
が戻されないこと除けば、
|
||||
が返されないこと除けば、
|
||||
.Fn ftpLogin ,
|
||||
.Fn ftpChdir ,
|
||||
.Fn ftpGet
|
||||
|
@ -193,7 +201,7 @@ ASCII
|
|||
が指定するファイルを作成します。これは、
|
||||
サーバの
|
||||
.Fa stream
|
||||
が戻されないことを除けば、
|
||||
が返されないことを除けば、
|
||||
.Fn ftpLogin ,
|
||||
.Fn ftpChdir ,
|
||||
.Fn ftpPut
|
||||
|
@ -201,16 +209,33 @@ ASCII
|
|||
サーバとのコネクションは、ファイルが完全に書き込まれた時点で
|
||||
クローズされます。複数のファイルを作成する場合は、低レベルのルーチン
|
||||
を使用してください。この方がはるかに効率的です。
|
||||
.Pp
|
||||
.Fn ftpLoginAf ,
|
||||
.Fn ftpGetURLAf ,
|
||||
.Fn ftpPutURLAf
|
||||
は、
|
||||
.Fn ftpLogin ,
|
||||
.Fn ftpGetURL ,
|
||||
.Fn ftpPutURL
|
||||
と同様ですが、アドレスファミリ
|
||||
except that they are able to specify address family
|
||||
.Fa af
|
||||
を指定可能な点が異なります。
|
||||
.Sh 環境変数
|
||||
.Bl -tag -width FTP_PASSIVE_MODE -offset 123
|
||||
.Bl -tag -width FTP_PASSIVE_MODE -offset 3n
|
||||
.It Ev FTP_TIMEOUT
|
||||
.Tn FTP
|
||||
接続を異常終了させる前に、通信相手からの応答を待つ最大時間
|
||||
(秒単位) です。
|
||||
.It Ev FTP_PASSIVE_MODE
|
||||
パッシブモード
|
||||
定義されている場合、パッシブモード
|
||||
.Tn FTP
|
||||
を強制的に使用します。
|
||||
ただし ``NO'' または ``no'' に定義されている場合は、
|
||||
アクティブモードを強制的に使用します。
|
||||
定義されている場合、この変数の設定は、
|
||||
.Fn ftpPassive
|
||||
の呼び出しに優先します。
|
||||
.El
|
||||
.Sh バグ
|
||||
こいつを徹底的に使い込むと、内部状態マシンを混乱させてしまう可能性が
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1983, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,8 +29,8 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" From: @(#)gethostname.3 8.1 (Berkeley) 6/4/93
|
||||
.\" $Id: getbootfile.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" From: @(#)gethostname.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/getbootfile.3,v 1.6.2.3 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd September 23, 1994
|
||||
|
@ -38,33 +38,36 @@
|
|||
.Os
|
||||
.Sh 名称
|
||||
.Nm getbootfile
|
||||
.Nd カーネル起動ファイル名を取得
|
||||
.Nd カーネル起動ファイル名を取得する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <paths.h>
|
||||
.In paths.h
|
||||
.Ft const char *
|
||||
.Fn getbootfile void
|
||||
.Sh 解説
|
||||
.Fn getbootfile
|
||||
関数は、現在のカーネルがロードされたファイルのフルパス名を取り出し、そ
|
||||
の静的ポインタを返します。この情報の読み込み/書き込みインタフェースは、
|
||||
関数は、現在のカーネルがロードされてきた元のファイルのフルパス名を取り出し、
|
||||
そのフルパス名への静的ポインタを返します。
|
||||
この情報の読み込み/書き込みインタフェースは、
|
||||
.Xr sysctl 3
|
||||
MIB 変数
|
||||
.Dq Li kern.bootfile
|
||||
によって利用できます。
|
||||
を介して利用できます。
|
||||
.Sh 戻り値
|
||||
呼び出しが成功した場合はパス名を与えるストリングが返ります。失敗した場合は
|
||||
null ポインタが返り、エラーコードがグローバルな位置の
|
||||
呼び出しが成功した場合はパス名を与える文字列が返されます。
|
||||
失敗した場合はヌルポインタが返され、エラーコードがグローバルな位置にある
|
||||
.Va errno
|
||||
に置かれます。
|
||||
に入れられます。
|
||||
.Sh 関連項目
|
||||
.Xr sysctl 3
|
||||
.Sh バグ
|
||||
起動時のカーネルにこの情報を渡すように、起動ブロックが修正されていない
|
||||
場合は、実際の起動ファイル名の代わりに静的ストリング
|
||||
起動時にカーネルへこの情報を渡すように、起動ブロックが修正されていない場合は、
|
||||
実際の起動ファイル名の代わりに静的文字列
|
||||
.Dq Pa /kernel
|
||||
が返ります。
|
||||
が返されます。
|
||||
.Sh 歴史
|
||||
.Fn getbootfile
|
||||
関数呼び出しは
|
||||
.Fx 2.0
|
||||
で最初に登場しました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,40 +29,45 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)getbsize.3 8.1 (Berkeley) 6/4/93
|
||||
.\" @(#)getbsize.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/getbsize.3,v 1.5.2.3 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
.Dt GETBSIZE 3
|
||||
.Os BSD 4.4
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm getbsize
|
||||
.Nd ユーザブロックサイズを取得
|
||||
.Nd ユーザブロックサイズを取得する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <stdlib.h>
|
||||
.In stdlib.h
|
||||
.Ft char *
|
||||
.Fn getbsize "int *headerlenp" "long *blocksizep"
|
||||
.Sh 解説
|
||||
.Fn getbsize
|
||||
関数は、ユーザが指定するブロックサイズを、環境変数
|
||||
関数は、ユーザの好みのブロックサイズを、環境変数
|
||||
.Dq BLOCKSIZE
|
||||
の値に基づいて決定します。詳しい使用法と形式については、
|
||||
の値に基づいて決定します。
|
||||
詳しい使用法と形式については、
|
||||
.Xr environ 7
|
||||
を参照してください。
|
||||
.Pp
|
||||
.Fn getbsize
|
||||
関数は、
|
||||
.Dp 1K-blocks
|
||||
のようにブロックサイズを記述する、null で終わるストリングのポインタを
|
||||
返します。
|
||||
.Dq 1K-blocks
|
||||
のようにブロックサイズを記述する、ヌル文字で終わる文字列へのポインタを
|
||||
返します。
|
||||
.Fa headerlenp
|
||||
によって参照されるメモリ
|
||||
は、(終端の null を含まない)このストリングの長さによって満たされます。
|
||||
によって参照されるメモリには、
|
||||
(終端のヌル文字を含まない) この文字列の長さが入れられます。
|
||||
.Fa blocksizep
|
||||
で参照されるメモリは、バイト数によるブロックサイズによって満たされます。
|
||||
で参照されるメモリには、バイト単位のブロックサイズが入れられます。
|
||||
.Pp
|
||||
ユーザのブロックサイズ指定が不当な場合は、標準エラーに警告メッセージが
|
||||
書かれます。返された情報は 512 バイトのブロックサイズを反映します。
|
||||
ユーザのブロックサイズ指定が不当な場合は、
|
||||
標準エラー出力に警告メッセージが書かれ、
|
||||
返される情報は 512 バイトのブロックサイズを反映したものとなります。
|
||||
.Sh 関連項目
|
||||
.Xr df 1 ,
|
||||
.Xr du 1 ,
|
||||
|
@ -73,4 +78,4 @@
|
|||
.Fn getbsize
|
||||
関数は
|
||||
.Bx 4.4
|
||||
で最初に登場しました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,19 +29,21 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)getcwd.3 8.2 (Berkeley) 12/11/93
|
||||
.\" $Id: getcwd.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" @(#)getcwd.3 8.2 (Berkeley) 12/11/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/getcwd.3,v 1.7.2.6 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd November 24, 1997
|
||||
.Dt GETCWD 3
|
||||
.Os BSD 4.2
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm getcwd ,
|
||||
.Nm getwd
|
||||
.Nd 作業ディレクトリのパス名を取得
|
||||
.Nd 作業ディレクトリのパス名を取得する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <unistd.h>
|
||||
.In unistd.h
|
||||
.Ft char *
|
||||
.Fn getcwd "char *buf" "size_t size"
|
||||
.Ft char *
|
||||
|
@ -52,7 +54,7 @@
|
|||
.Fa buf
|
||||
で参照されるメモリにコピーし、
|
||||
.Fa buf
|
||||
のポインタを返します。
|
||||
へのポインタを返します。
|
||||
.Fa size
|
||||
引数は、
|
||||
.Fa buf
|
||||
|
@ -61,36 +63,37 @@
|
|||
.Fa buf
|
||||
が
|
||||
.Dv NULL
|
||||
の場合は、パス名を保存するのに必要なだけの空間が割り振られます。この空
|
||||
間は後で
|
||||
の場合は、パス名を保存するのに必要なだけの空間が割り振られます。
|
||||
この空間は後で
|
||||
.Xr free 3
|
||||
できます。
|
||||
.Pp
|
||||
関数
|
||||
.Fn getwd
|
||||
は
|
||||
は、
|
||||
.Fn getcwd
|
||||
を呼び出す互換性ルーチンです。
|
||||
を
|
||||
.Fa buf
|
||||
引数および、(インクルードファイル
|
||||
引数と、サイズとして (インクルードファイル
|
||||
.Aq Pa sys/param.h
|
||||
で定義された)
|
||||
.Dv MAXPATHLEN
|
||||
のサイズを持ちます。
|
||||
を用いて呼び出したのと同等の関数です。
|
||||
.Fa buf
|
||||
が少なくとも、
|
||||
.Dv MAXPATHLEN
|
||||
バイトの長さを持たなければならないことは明らかです。
|
||||
.Pp
|
||||
これらのルーチンは従来、そこへ戻るために作業ディレクトリの名前を保存す
|
||||
るプログラムによって使用されてきました。これをより速く誤りなく遂行する
|
||||
ものとして、カレントディレクトリ
|
||||
.Pq Ql \&.
|
||||
をオープンし、
|
||||
これらのルーチンは従来、作業ディレクトリに戻ってくるために
|
||||
その名前を保存するようなプログラムによって使用されてきました。
|
||||
これをより速く誤りなく遂行するものとして、カレントディレクトリ
|
||||
.Pq Ql .\&
|
||||
をオープンしておき、
|
||||
.Xr fchdir 2
|
||||
関数を使って戻る方法があります。
|
||||
.Sh 戻り値
|
||||
無事に完了した場合はパス名のポインタが返ります。その他の場合は
|
||||
無事に完了した場合はパス名へのポインタが返ります。
|
||||
そうでなければ
|
||||
.Dv NULL
|
||||
ポインタが返り、エラーを示すためグローバル変数
|
||||
.Va errno
|
||||
|
@ -104,22 +107,21 @@
|
|||
.Sh エラー
|
||||
.Fn getcwd
|
||||
関数は次の場合に失敗します。
|
||||
.Bl -tag -width [EACCES]
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EACCES
|
||||
読み込みまたは検索パーミッションが、パス名の構成要素のため拒否されまし
|
||||
た。
|
||||
パス名の構成要素において、
|
||||
読み込みまたは検索のパーミッションが拒否されました。
|
||||
.Pp
|
||||
.It Bq Er EINVAL
|
||||
.Fa size
|
||||
引数がゼロです。
|
||||
引数が 0 です。
|
||||
.It Bq Er ENOENT
|
||||
パス名の構成要素がもはや存在しません。
|
||||
.It Bq Er ENOMEM
|
||||
利用できるメモリが十分ではありません。
|
||||
.It Bq Er ERANGE
|
||||
.Fa size
|
||||
引数はゼロよりも大きいが、パス名 + 1
|
||||
よりも小さいので不当です。
|
||||
引数が、0 よりも大きいですが、パス名 + 1 よりも小さいです。
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr chdir 2 ,
|
||||
|
@ -130,18 +132,19 @@
|
|||
.Sh 規格
|
||||
.Fn getcwd
|
||||
関数は、
|
||||
.St -ansiC
|
||||
に準拠しています。
|
||||
.St -p1003.1-90
|
||||
に適合しています。
|
||||
.Dv NULL
|
||||
ポインタを指定して、必要に応じて
|
||||
.Fn getcwd
|
||||
にメモリを割り振る機能は拡張部分です。
|
||||
にメモリを割り振らせる機能は拡張部分です。
|
||||
.Sh 歴史
|
||||
.Fn getwd
|
||||
関数は
|
||||
関数は、
|
||||
.Bx 4.0
|
||||
で最初に取り入れられました。
|
||||
ではじめて登場しました。
|
||||
.Sh バグ
|
||||
.Fn getwd
|
||||
関数はエラーチックを十分に行いません。非常に長いパス名は、有効でも返す
|
||||
ことができません。互換性を考える上で注意が必要です。
|
||||
関数はエラーチェックを十分に行っていません。
|
||||
また非常に長いパス名は、有効でも返すことができません。
|
||||
この関数は、互換性のために提供されています。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1983, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,25 +29,29 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)getdiskbyname.3 8.1 (Berkeley) 6/4/93
|
||||
.\" @(#)getdiskbyname.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/getdiskbyname.3,v 1.3.2.4 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
.Dt GETDISKBYNAME 3
|
||||
.Os BSD 4.2
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm getdiskbyname
|
||||
.Nd ディスク名によって包括ディスク記述を取得
|
||||
.Nd ディスク名から包括的なディスクの記述を取得する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/disklabel.h>
|
||||
.In sys/disklabel.h
|
||||
.Ft struct disklabel *
|
||||
.Fn getdiskbyname "const char *name"
|
||||
.Sh 解説
|
||||
.Fn getdiskbyname
|
||||
関数はディスク名(たとえば
|
||||
関数はディスク名 (たとえば
|
||||
.Ql rm03 )
|
||||
を取得し、ジオメトリ情報および標準のディスクパーティションテーブルを記
|
||||
述する、プロトタイプのディスクラベルを返します。すべての情報は
|
||||
を引数に取り、ジオメトリ情報および標準のディスクパーティションテーブルを
|
||||
記述する、プロトタイプのディスクラベルを返します。
|
||||
すべての情報は
|
||||
.Xr disktab 5
|
||||
ファイルから得られます。
|
||||
.Sh 関連項目
|
||||
|
@ -58,4 +62,4 @@
|
|||
.Fn getdiskbyname
|
||||
関数は
|
||||
.Bx 4.3
|
||||
で最初に登場しました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" Copyright (c) 1983, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
|
@ -11,8 +11,8 @@
|
|||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
|
@ -29,58 +29,59 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)gethostname.3 8.1 (Berkeley) 6/4/93
|
||||
.\" $Id: getdomainname.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" @(#)gethostname.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/getdomainname.3,v 1.9.2.5 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd May 6, 1994
|
||||
.Dt GETDOMAINNAME 3
|
||||
.Os BSD 4.2
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm getdomainname ,
|
||||
.Nm setdomainname
|
||||
.Nd 現在のホストのドメイン名を取得/設定
|
||||
.Nd 現在のホストのドメイン名を取得/設定する
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <unistd.h>
|
||||
.In unistd.h
|
||||
.Ft int
|
||||
.Fn getdomainname "char *name" "int namelen"
|
||||
.Ft int
|
||||
.Fn setdomainname "const char *name" "int namelen"
|
||||
.Sh 解説
|
||||
.Fn Getdomainname
|
||||
は前に
|
||||
.Fn getdomainname
|
||||
は、以前
|
||||
.Fn setdomainname
|
||||
によって設定された、現在のプロセッサの標準ドメイン名を返します。パラメー
|
||||
タ
|
||||
によって設定された現在のプロセッサの標準ドメイン名を返します。
|
||||
パラメータ
|
||||
.Fa namelen
|
||||
は
|
||||
.Fa name
|
||||
配列のサイズを指定します。空間が十分にない場合を除いて、返される値は
|
||||
null で終わります。
|
||||
配列のサイズを指定します。
|
||||
不十分な空間が渡されない限り、返される値はヌル文字で終了します。
|
||||
.Pp
|
||||
.Fn Setdomainname
|
||||
は
|
||||
.Fa name
|
||||
するホストマシンの、長さ
|
||||
.Fn setdomainname
|
||||
は、
|
||||
ホストマシンのドメイン名を長さ
|
||||
.Fa namelen
|
||||
のドメイン名を設定します。この呼び出しはスーパユーザに限定されます。通
|
||||
常はシステムを、ブートストラップする場合にだけ使用されます。
|
||||
の
|
||||
.Fa name
|
||||
に設定します。
|
||||
この呼び出しはスーパユーザに限定されており、
|
||||
通常はシステムを起動する時にだけ使用されます。
|
||||
.Sh 戻り値
|
||||
呼び出しに成功した場合は値 0が返ります。呼び出しに失敗した場合は値 -1
|
||||
が返り、グローバルな位置
|
||||
.Va errno
|
||||
にエラーコードが置かれます。
|
||||
.Rv -std
|
||||
.Sh エラー
|
||||
これらの呼び出しによって、次のエラーが返る場合があります。
|
||||
これらの関数呼び出しによって、次のエラーが返る場合があります。
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EFAULT
|
||||
.Fa name
|
||||
または
|
||||
.Fa namelen
|
||||
パラメータに与えたアドレスが無効です。
|
||||
パラメータで示されたアドレスが無効です。
|
||||
.It Bq Er EPERM
|
||||
呼び出し元がホスト名を設定しようとしましたが、スーパユーザではありませ
|
||||
ん。
|
||||
呼び出し元がホスト名を設定しようとしましたが、
|
||||
スーパユーザではありませんでした。
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr gethostid 3 ,
|
||||
|
@ -89,11 +90,11 @@ null
|
|||
.Sh バグ
|
||||
ドメイン名は、(
|
||||
.Ao Pa sys/param.h Ac
|
||||
による)
|
||||
より)
|
||||
.Dv MAXHOSTNAMELEN
|
||||
長さのキャラクタ、現在 256 文字に限られています。
|
||||
に制限されており、これは現在 256 文字です。
|
||||
.Sh 歴史
|
||||
.Fn getdomainname
|
||||
関数の呼び出しは、
|
||||
関数呼び出しは、
|
||||
.Bx 4.2
|
||||
で最初に登場しました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)gethostid.3 8.1 (Berkeley) 6/2/93
|
||||
.\" %FreeBSD: src/lib/libc/compat-43/gethostid.3,v 1.5.2.5 2001/12/14 18:33:49 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 2, 1993
|
||||
|
@ -38,9 +39,11 @@
|
|||
.Sh 名称
|
||||
.Nm gethostid ,
|
||||
.Nm sethostid
|
||||
.Nd 現在のホストの固有の識別子の取得/設定
|
||||
.Nd 現在のホストの固有の識別子の取得 / 設定
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <unistd.h>
|
||||
.In unistd.h
|
||||
.Ft long
|
||||
.Fn gethostid void
|
||||
.Ft void
|
||||
|
@ -55,7 +58,7 @@
|
|||
.Fn gethostid
|
||||
は、現在のプロセッサの 32 ビット識別子を返します。
|
||||
.Pp
|
||||
この関数はこれまで非難されてきました。
|
||||
この関数は旧式なものとなりました。
|
||||
hostid の設定および取り出しには
|
||||
.Xr sysctl 3
|
||||
を使用すべきです。
|
||||
|
@ -71,6 +74,6 @@ hostid
|
|||
.Fn sethostid
|
||||
システムコールは、
|
||||
.Bx 4.2
|
||||
で最初に取り入れられ、
|
||||
で登場し、
|
||||
.Bx 4.4
|
||||
で打ち切られました。
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)gethostname.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/gethostname.3,v 1.5.2.5 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
|
@ -38,9 +39,11 @@
|
|||
.Sh 名称
|
||||
.Nm gethostname ,
|
||||
.Nm sethostname
|
||||
.Nd 現在のホストの名前の取得/設定
|
||||
.Nd 現在のホストの名前の取得 / 設定
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <unistd.h>
|
||||
.In unistd.h
|
||||
.Ft int
|
||||
.Fn gethostname "char *name" "int namelen"
|
||||
.Ft int
|
||||
|
@ -65,11 +68,7 @@
|
|||
この呼び出しはスーパユーザに限定され、
|
||||
通常はシステムのブートストラップ時にだけ実行されます。
|
||||
.Sh 戻り値
|
||||
呼び出しが成功すると値 0 が返ります。
|
||||
呼び出しが失敗すると値 -1 が返り、
|
||||
グローバルな位置の
|
||||
.Va errno
|
||||
にエラーコードが置かれます。
|
||||
.Rv -std
|
||||
.Sh エラー
|
||||
これらの呼び出しによって、次のエラーが返る場合があります。
|
||||
.Bl -tag -width Er
|
||||
|
@ -88,10 +87,13 @@
|
|||
.Sh バグ
|
||||
ホスト名の長さが MAXHOSTNAMELEN (
|
||||
.Ao Pa sys/param.h Ac
|
||||
から取得) 文字に制限されています。
|
||||
現在は 256 文字です。
|
||||
から取得) 文字に制限されてあり、
|
||||
現在の設定は 256 文字です。
|
||||
この文字には末尾の
|
||||
.Dv ヌル
|
||||
も含みます。
|
||||
.Sh 歴史
|
||||
.Fn gethostname
|
||||
関数の呼び出しは、
|
||||
関数は、
|
||||
.Bx 4.2
|
||||
で最初に取り入れられました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -22,17 +22,19 @@
|
|||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $Id: getobjformat.3,v 1.4 2002-05-18 07:12:54 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/libc/gen/getobjformat.3,v 1.3.2.5 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd September 7, 1998
|
||||
.Dt GETOBJFORMAT 3
|
||||
.Os FreeBSD
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm getobjformat
|
||||
.Nd 優先オブジェクトファイルフォーマットの取得
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <objformat.h>
|
||||
.In objformat.h
|
||||
.Ft int
|
||||
.Fn getobjformat "char *buf" "size_t bufsize" "int *argcp" "char **argv"
|
||||
.Sh 解説
|
||||
|
@ -118,12 +120,14 @@
|
|||
は
|
||||
.Pa /etc/objformat
|
||||
に優先します。
|
||||
.El
|
||||
.Sh 関連ファイル
|
||||
.Bl -tag -width /etc/objformat -compact
|
||||
.It Pa /etc/objformat
|
||||
存在すればこれが、使用するオブジェクトファイルフォーマットを指定します。構文は
|
||||
.Ql OBJFORMAT=xxx
|
||||
です。
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr objformat 1
|
||||
.Pp
|
||||
|
@ -131,4 +135,4 @@
|
|||
.Fn getobjformat
|
||||
関数は
|
||||
.Fx 3.0
|
||||
で最初に取り入れられました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)getttyent.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/getttyent.3,v 1.9.2.3 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd November 17, 1996
|
||||
|
@ -44,8 +45,10 @@
|
|||
.Nm isdialuptty ,
|
||||
.Nm isnettty
|
||||
.Nd ファイルエントリから tty タイプを決める
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <ttyent.h>
|
||||
.In ttyent.h
|
||||
.Ft struct ttyent *
|
||||
.Fn getttyent void
|
||||
.Ft struct ttyent *
|
||||
|
@ -72,8 +75,7 @@ struct ttyent {
|
|||
char *ty_name; /* 端末デバイス名 */
|
||||
char *ty_getty; /* 実行するコマンド、通常は getty */
|
||||
char *ty_type; /* termcap の端末タイプ */
|
||||
#define TTY_ON 0x01 /* ログインの有効化 (ty_getty
|
||||
プログラムの開始) */
|
||||
#define TTY_ON 0x01 /* ログイン有効化 (ty_getty プログラム開始) */
|
||||
#define TTY_SECURE 0x02 /* uid 0 でのログイン許可 */
|
||||
#define TTY_DIALUP 0x04 /* ダイアルアップ tty */
|
||||
#define TTY_NETWORK 0x08 /* ネットワーク tty */
|
||||
|
@ -87,9 +89,7 @@ struct ttyent {
|
|||
フィールドは次のとおりです。
|
||||
.Bl -tag -width ty_comment
|
||||
.It Fa ty_name
|
||||
キャラクタ
|
||||
-
|
||||
特殊ファイル名。
|
||||
キャラクタ特殊ファイル名。
|
||||
.It Fa ty_getty
|
||||
tty
|
||||
回線特性の初期化のため、
|
||||
|
@ -125,37 +125,33 @@ tty
|
|||
をダイアルイン回線として識別します。この
|
||||
フラグが設定されると、
|
||||
.Fn isdialuptty
|
||||
は非ゼロ値を返します。
|
||||
は非 0 値を返します。
|
||||
.It Dv TTY_NETWORK
|
||||
ネットワーク接続に使用された
|
||||
tty
|
||||
を識別します。このフラグが設定されると、
|
||||
.Fn isnettty
|
||||
は非ゼロ値を返します。
|
||||
は非 0 値を返します。
|
||||
.El
|
||||
.It Fa ty_window
|
||||
回線に関連するウィンドウシステムを実行するコマンドです。
|
||||
.It Fa ty_group
|
||||
ttys
|
||||
tty
|
||||
が所属するグループ名です。
|
||||
ttys
|
||||
記述ファイルにグループの指定がない場合は、
|
||||
"none"
|
||||
記述ファイルにグループの指定がない場合は、"none"
|
||||
と呼ばれる無名グループにその
|
||||
tty
|
||||
が置かれます。
|
||||
.It Fa ty_comment
|
||||
先頭にシャープ
|
||||
(``#'')
|
||||
が付くかまたは余白がある、終端の
|
||||
コメントフィールドはすべて除去されます。
|
||||
終端のコメントフィールドであり、
|
||||
先頭のハッシュマーク (``#'') と余白はすべて除去されます。
|
||||
.El
|
||||
.Pp
|
||||
キャラクタストリングを示すフィールドが未指定の場合、それらはすべて
|
||||
null
|
||||
ポインタとして返ります。指定されたフラグ値がない場合、フィールド
|
||||
ヌルポインタとして返ります。指定されたフラグ値がない場合、フィールド
|
||||
.Fa ty_status
|
||||
はゼロになります。
|
||||
は 0 になります。
|
||||
.Pp
|
||||
このフィールドの意味および用法の詳細な説明については、
|
||||
.Xr ttys 5
|
||||
|
@ -186,9 +182,7 @@ ttys
|
|||
.Fn getttynam
|
||||
は、
|
||||
.Dv EOF
|
||||
またはエラーでいずれも
|
||||
Null
|
||||
ポインタを返します。
|
||||
またはエラーでいずれもヌルポインタを返します。
|
||||
.Fn setttyent
|
||||
関数および
|
||||
.Fn endttyent
|
||||
|
@ -205,35 +199,28 @@ tty
|
|||
に関連する
|
||||
tty
|
||||
エントリに、ダイアルアップまたはネットワークフラグが
|
||||
設定されていなければ非ゼロを返し、その他の場合はゼロを返します。
|
||||
設定されていなければ非 0 を返し、その他の場合は 0 を返します。
|
||||
.Sh 関連ファイル
|
||||
.Bl -tag -width /etc/ttys -compact
|
||||
.It Pa /etc/ttys
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr login 1
|
||||
、
|
||||
.Xr ttyslot 3
|
||||
、
|
||||
.Xr gettytab 5
|
||||
、
|
||||
.Xr termcap 5
|
||||
、
|
||||
.Xr ttys 5
|
||||
、
|
||||
.Xr login 1 ,
|
||||
.Xr ttyslot 3 ,
|
||||
.Xr gettytab 5 ,
|
||||
.Xr termcap 5 ,
|
||||
.Xr ttys 5 ,
|
||||
.Xr getty 8 ,
|
||||
.Xr init 8
|
||||
.Sh 歴史
|
||||
.Fn getttyent
|
||||
、
|
||||
.Fn getttynam
|
||||
、
|
||||
.Fn setttyent
|
||||
および
|
||||
関数
|
||||
.Fn getttyent ,
|
||||
.Fn getttynam ,
|
||||
.Fn setttyent ,
|
||||
.Fn endttyent
|
||||
関数は、
|
||||
は
|
||||
.Bx 4.3
|
||||
で最初に取り入れられました。
|
||||
ではじめて登場しました。
|
||||
.Sh バグ
|
||||
これらの関数は静的データ記憶域を使用します。後で使用するデータの場合は、
|
||||
以後の呼び出しで上書きする前にデータをコピーして保存する必要があります。
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_getvfsbyname.3 8.3 (Berkeley) 5/4/95
|
||||
.\" %FreeBSD: src/lib/libc/gen/getvfsbyname.3,v 1.7.2.5 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd May 4, 1995
|
||||
|
@ -38,19 +39,22 @@
|
|||
.Sh 名称
|
||||
.Nm getvfsbyname
|
||||
.Nd ファイルシステムについての情報を取得
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/param.h>
|
||||
.Fd #include <sys/mount.h>
|
||||
.In sys/param.h
|
||||
.In sys/mount.h
|
||||
.Ft int
|
||||
.Fn getvfsbyname "const char *name" "struct vfsconf *vfc"
|
||||
.Sh 解説
|
||||
.Fn getvfsbyname
|
||||
関数によって、カーネルに構成されたファイルシステムモジュール
|
||||
の、関連情報にアクセスできます。成功した場合は要求されたファイルシステム
|
||||
関数は、カーネルに構成されているファイルシステムモジュール
|
||||
に関する情報へのアクセスを提供します。
|
||||
成功した場合は、要求されたファイルシステム
|
||||
.Fa vfsconf
|
||||
が、
|
||||
を、
|
||||
.Fa vfc
|
||||
の指す位置に返ります。構造体
|
||||
の指す位置に返します。構造体
|
||||
.Dq Li struct vfsconf
|
||||
のフィールドは、次のように定義されます。
|
||||
.Pp
|
||||
|
@ -58,21 +62,16 @@
|
|||
.It vfc_name
|
||||
ファイルシステムの名前
|
||||
.It vfc_typenum
|
||||
カーネルによって割り当てられた、ファイルシステムの
|
||||
カーネルによって割り当てられたファイルシステムの
|
||||
タイプ番号
|
||||
.It vfc_refcount
|
||||
ファイルシステムを使用する、アクティブ実装ポイントの番号
|
||||
ファイルシステムを使用するアクティブなポイントの番号
|
||||
.It vfc_flags
|
||||
ファイルシステムを使用する、新たな実装ポイントの初期化
|
||||
フラグビット
|
||||
.Xr getvfsent 3
|
||||
に記述されるフラグビット
|
||||
.El
|
||||
.Sh 戻り値
|
||||
.Nm getvfsbyname
|
||||
の呼び出しに成功した場合は
|
||||
0 が、その他の場合は
|
||||
\-1 が返り、
|
||||
.Va errno
|
||||
がそれぞれのエラーに対応して設定されます。
|
||||
.Rv -std getvfsbyname
|
||||
.Sh エラー
|
||||
次のエラーが報告される場合があります。
|
||||
.Bl -tag -width Er
|
||||
|
@ -83,16 +82,15 @@
|
|||
ファイルシステムを指定する
|
||||
.Fa name
|
||||
が未知か、またはカーネルに構成されていません。
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr sysctl 1
|
||||
、
|
||||
.Xr mount 2
|
||||
、
|
||||
.Xr sysctl 3
|
||||
、
|
||||
.Xr mount 8
|
||||
.Xr mount 2 ,
|
||||
.Xr getvfsent 3 ,
|
||||
.Xr sysctl 3 ,
|
||||
.Xr mount 8 ,
|
||||
.Xr sysctl 8
|
||||
.Sh 歴史
|
||||
.Fn getvfsbyname
|
||||
関数の変形は、
|
||||
関数は、
|
||||
.Fx 2.0
|
||||
で最初に取り入れられました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
.\" $Id: getvfsent.3,v 1.5 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/libc/gen/getvfsent.3,v 1.17.2.5 2001/12/14 18:33:51 ru Exp %
|
||||
.\" Written by Garrett A. Wollman, September 1994.
|
||||
.\" This manual page is in the public domain.
|
||||
.\"
|
||||
|
@ -13,9 +13,11 @@
|
|||
.Nm vfsisloadable ,
|
||||
.Nm vfsload
|
||||
.Nd 仮想ファイルシステムモジュールを管理
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/param.h>
|
||||
.Fd #include <sys/mount.h>
|
||||
.In sys/param.h
|
||||
.In sys/mount.h
|
||||
.Ft struct ovfsconf *
|
||||
.Fn getvfsent "void"
|
||||
.Ft void
|
||||
|
@ -28,11 +30,11 @@
|
|||
.Fn vfsload "const char *name"
|
||||
.Sh 解説
|
||||
.Fn getvfsent
|
||||
関数によって、カーネルが管理する仮想ファイルシステムモジュール
|
||||
の実装リストに、簡単にアクセスできます。リストのファイルシステムを
|
||||
関数によって、カーネルが管理するインストール済の仮想ファイルシステムモジュール
|
||||
のリストに、簡単にアクセスできます。リストのファイルシステムを
|
||||
1 回に
|
||||
1 つづつ段階的に処理します。利用できるデータがそれ以上なくなると、
|
||||
null
|
||||
ヌル
|
||||
ポインタが返ります。構造体
|
||||
.Dq Li struct ovfsconf
|
||||
のフィールドは次のとおりです。
|
||||
|
@ -46,12 +48,28 @@ null
|
|||
の呼び出しに使用された、ファイルシステムのタイプ番号。
|
||||
.It vfc_refcount
|
||||
このファイルシステムの参照数
|
||||
(通常は実装数ですが、
|
||||
アンロードできないファイルシステム、または静的にこのカーネルにリンク
|
||||
されているファイルシステムなどがあると、実装数を上回ります)
|
||||
。
|
||||
(通常はマウント数ですが、
|
||||
アンロードできないかカーネルに静的にリンクされている
|
||||
ファイルシステムでは、マウント数に 1 を加えたものになります)。
|
||||
.It vfc_flags
|
||||
現在なにも定義されていないフラグビット。
|
||||
フラグビット。
|
||||
.El
|
||||
.Pp
|
||||
フラグは次のように定義されています:
|
||||
.Pp
|
||||
.Bl -tag -width VFCF_SYNTHETIC -compact
|
||||
.It Dv VFCF_STATIC
|
||||
カーネルに静的に組み込まれている
|
||||
.It Dv VFCF_NETWORK
|
||||
データをネットワーク経由で取得し得る
|
||||
.It Dv VFCF_READONLY
|
||||
書き込みは未実装
|
||||
.It Dv VFCF_SYNTHETIC
|
||||
データは実ファイルを表現しない
|
||||
.It Dv VFCF_LOOPBACK
|
||||
マウント済みのファイルシステムに対する別名
|
||||
.It Dv VFCF_UNICODE
|
||||
ファイル名を Unicode で格納
|
||||
.El
|
||||
.Pp
|
||||
.Fn setvfsent
|
||||
|
@ -65,7 +83,7 @@ null
|
|||
.Fn setvfsent
|
||||
の
|
||||
.Fa cachelist
|
||||
パラメータがゼロでなければ、これら
|
||||
パラメータが 0 でなければ、これら
|
||||
検索関数のどれかを最初に呼び出した時点でリストはただ
|
||||
1 回だけ取り出され、
|
||||
キャッシュをクリアするために
|
||||
|
@ -78,58 +96,35 @@ null
|
|||
を使用するプログラムによって呼び出される必要があり、
|
||||
.Fn setvfsent 0
|
||||
は
|
||||
(これもデフォルトの状態で)
|
||||
、
|
||||
(これもデフォルトの状態で)、
|
||||
.Fn vfsload
|
||||
関数を使用するプログラムによって呼び出される必要があります。
|
||||
.Pp
|
||||
.Fn vfsisloadable
|
||||
関数は、後で
|
||||
.Fn vfsload name
|
||||
の呼び出しが続きそうだと非ゼロ値を返します。ここで
|
||||
「そう」と言うのは、
|
||||
.Fn vfsisloadable
|
||||
によってチェックされる条件だけが、
|
||||
.Fn vfsload
|
||||
が後続するために必要な条件の小さな
|
||||
サブセットだからです。詳しく説明すれば、
|
||||
の呼び出しが続きそうだと非 0 値を返します。ここで
|
||||
.Dq そう
|
||||
と言うのは、
|
||||
.Fn vfsisloadable
|
||||
は
|
||||
.Pa /dev/lkm
|
||||
が
|
||||
存在するか、書き込みのためにオープンできるか、また
|
||||
LKM
|
||||
(ロード可能カーネルモジュール)
|
||||
用に指定したディレクトリの
|
||||
1 つで、
|
||||
.Pa Ns Fa name Ns _mod.o
|
||||
が
|
||||
見付かるかなどをチェックします。
|
||||
.Fn vfsload
|
||||
が成功するための条件をチェックしないからです。
|
||||
.Pp
|
||||
.Fn vfsload
|
||||
関数は、ファイルシステム
|
||||
.Fa name
|
||||
の実装カーネルモジュールをロード
|
||||
しようと試みます。ファイルシステムモジュールを無事に突き止めてロードした
|
||||
場合はゼロが、その他の場合は非ゼロが返ります。この関数を呼び出せるのは次に
|
||||
場合は 0 が、その他の場合は非 0 が返ります。この関数を呼び出せるのは次に
|
||||
示す状況だけです。
|
||||
.Bl -enum
|
||||
.It
|
||||
.Fn getvfsbyname
|
||||
を呼び出して非ゼロ値が返った場合。
|
||||
を呼び出して非 0 値が返った場合。
|
||||
.It
|
||||
.Fn vfsisloadable
|
||||
を呼び出して非ゼロ値が返った場合。
|
||||
.It
|
||||
十分な一時ファイル空間が利用でき、
|
||||
.No Ns \&${ Ns Ev TMPDIR Ns \&}
|
||||
の
|
||||
.Pa /var/tmp
|
||||
または
|
||||
.Pa /tmp
|
||||
の
|
||||
1 つに
|
||||
書き込みもできる場合。
|
||||
を呼び出して非 0 値が返った場合。
|
||||
.El
|
||||
.Pp
|
||||
.Xr mount_cd9660 8
|
||||
|
@ -157,7 +152,7 @@ if (mount(vfc.vfc_name, dir, mntflags, &args) < 0)
|
|||
.Sh 戻り値
|
||||
.Fn getvfsent
|
||||
ルーチンは、成功すると静的データ構造体のポインタを、失敗すると
|
||||
null
|
||||
ヌル
|
||||
ポインタを返します。原因が
|
||||
.Xr sysctl 3
|
||||
または
|
||||
|
@ -171,60 +166,19 @@ null
|
|||
は改変されません。
|
||||
.Pp
|
||||
.Fn vfsload
|
||||
関数は失敗すると非ゼロ値を、成功するとゼロを返します。
|
||||
関数は失敗すると非 0 値を、成功すると 0 を返します。
|
||||
.Fn vfsload
|
||||
が失敗した場合、
|
||||
.Xr kldload 2
|
||||
用に記述された
|
||||
.Va errno
|
||||
がフォーク
|
||||
.Xr fork 2
|
||||
、
|
||||
.Xr waitpid 2
|
||||
、
|
||||
.Xr chdir 2
|
||||
、
|
||||
または
|
||||
.Xr execlp 3
|
||||
用としてドキュメントされた値の
|
||||
1 つに設定されるか、または、
|
||||
現在特に有用ではないにしても結局は便利な
|
||||
.Xr modload 8
|
||||
プログラムの、
|
||||
ステータスを返す可能性があります。さらに、もし
|
||||
.Xr modload 8
|
||||
がシグナルで終了した場合、
|
||||
.Fn vfsload
|
||||
は失敗し
|
||||
.Va errno
|
||||
を
|
||||
.Er EINVAL
|
||||
に設定します。
|
||||
.Sh 環境変数
|
||||
.Bl -tag -compact -width TMPDIRx
|
||||
.It Ev TMPDIR
|
||||
.Fn vfsload
|
||||
に代わって
|
||||
.Xr modload 8
|
||||
によって作成された一時ファイルの位置。
|
||||
.It Ev LKMDIR
|
||||
ロード可能モジュールを検索する
|
||||
.Fn vfsisloadable
|
||||
および
|
||||
.Fn vfsload
|
||||
用の代替ディレクトリ。
|
||||
値が設定され得ます。
|
||||
.Sh 関連項目
|
||||
.Xr mount 2
|
||||
、
|
||||
.Xr modload 8
|
||||
、
|
||||
.Xr kldload 2 ,
|
||||
.Xr mount 2 ,
|
||||
.Xr mount 8
|
||||
.Sh バグ
|
||||
.Xr modload 8
|
||||
コマンドの戻り値は、
|
||||
.Va errno
|
||||
値として解釈する場合
|
||||
(もっと言えば、ほかのどんなものとして解釈する場合も)、
|
||||
特に有用ではありません。
|
||||
.Sh 作者
|
||||
.An -nosplit
|
||||
このロード可能ファイルシステムサポートは、
|
||||
.An Terry Lambert
|
||||
による汎用のロード可能カーネルモジュールサポートをベースに、
|
||||
|
@ -234,4 +188,4 @@ null
|
|||
.Fn getvfsent
|
||||
関数ファミリは
|
||||
.Fx 2.0
|
||||
で最初に取り入れられました。
|
||||
ではじめて登場しました。
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)glob.3 8.3 (Berkeley) 4/16/94
|
||||
.\" %FreeBSD: src/lib/libc/gen/glob.3,v 1.7.2.9 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd April 16, 1994
|
||||
|
@ -40,12 +41,14 @@
|
|||
.Sh 名称
|
||||
.Nm glob ,
|
||||
.Nm globfree
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Nd パターンに適合するパス名を生成
|
||||
.Sh 書式
|
||||
.Fd #include <glob.h>
|
||||
.Ft int
|
||||
.Fn glob "const char *pattern" "int flags" "int (*errfunc)(const char *, int)" "glob_t *pglob"
|
||||
.Ft void
|
||||
.Ft void
|
||||
.Fn globfree "glob_t *pglob"
|
||||
.Sh 解説
|
||||
.Fn glob
|
||||
|
@ -74,23 +77,17 @@ typedef struct {
|
|||
.Fn glob
|
||||
引数はその
|
||||
パターンに対して、アクセス可能なすべてのパス名を突き合わせ
|
||||
(
|
||||
マッチング
|
||||
)
|
||||
、
|
||||
(マッチング)、
|
||||
適合するパス名リストを作成します。パス名にアクセスするため
|
||||
.Fn glob
|
||||
は、パス
|
||||
の各構成要素
|
||||
(
|
||||
最終要素を除く
|
||||
)
|
||||
(最終要素を除く)
|
||||
での検索許可と、特殊キャラクタ
|
||||
.Ql *
|
||||
,
|
||||
.Ql ?
|
||||
.Ql * ,
|
||||
.Ql ?\&
|
||||
または
|
||||
.Ql [
|
||||
.Ql \&[
|
||||
などを含む
|
||||
.Fa pattern
|
||||
の、すべてのファイル名構成要素ディレクトリの読み
|
||||
|
@ -106,7 +103,7 @@ typedef struct {
|
|||
最初のポインタは
|
||||
.Dv NULL
|
||||
です。パターンに適合するパス名が皆無だった場合、
|
||||
返される適合パスの数はゼロに設定されます。
|
||||
返される適合パスの数は 0 に設定されます。
|
||||
.Pp
|
||||
.Fa pglob
|
||||
で示される構造体は呼び出し元が作成します。
|
||||
|
@ -131,12 +128,12 @@ typedef struct {
|
|||
.It Dv GLOB_APPEND
|
||||
生成されたパス名を、
|
||||
.Fn glob
|
||||
に対する前の呼び出し ( 単数または複数 ) で生成されたパス名に追加します。
|
||||
に対する前の呼び出し (単数または複数) で生成されたパス名に追加します。
|
||||
.Fa gl_pathc
|
||||
の値は、今回の呼び出しおよび前の呼び出し ( 単数または複数 ) での、
|
||||
適合パス名の合計になります。前の呼び出し ( 単数または複数 ) によって
|
||||
の値は、今回の呼び出しおよび前の呼び出し (単数または複数) での、
|
||||
適合パス名の合計になります。前の呼び出し (単数または複数) によって
|
||||
返されたパス名に、今回生成されたパス名が追加されますが、
|
||||
マージ ( 併合 ) はされません。前の呼び出しと今回の呼び出しのあいだに、
|
||||
マージ (併合) はされません。前の呼び出しと今回の呼び出しのあいだに、
|
||||
呼び出し元は
|
||||
.Dv GLOB_DOOFFS
|
||||
フラグを変えてはいけません。同様に、
|
||||
|
@ -144,7 +141,7 @@ typedef struct {
|
|||
設定時の
|
||||
.Fa gl_offs
|
||||
の値も変えてはいけません。
|
||||
( もちろん )
|
||||
(もちろん)
|
||||
.Fa pglob
|
||||
に影響する
|
||||
.Fn globfree
|
||||
|
@ -218,7 +215,7 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
テープに保存されたディレクトリから、
|
||||
.Xr restore 8
|
||||
のようなプログラムによって
|
||||
グロッビング ( ファイル名展開 ) できるように、
|
||||
グロッビング (ファイル名展開) できるように、
|
||||
この拡張が用意されています。
|
||||
.It Dv GLOB_BRACE
|
||||
.Xr csh 1
|
||||
|
@ -227,11 +224,11 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
ストリングを展開するために、
|
||||
パターンストリングを前処理します。パターン
|
||||
.Ql {}
|
||||
は歴史的理由 ( および
|
||||
は歴史的理由 (および
|
||||
.Xr find 1
|
||||
パターンの入力を容易にするために、
|
||||
.Xr csh 1
|
||||
が同じことをするという理由 )
|
||||
が同じことをするという理由)
|
||||
から、未展開のまま残されます。
|
||||
.It Dv GLOB_MAGCHAR
|
||||
パターンに
|
||||
|
@ -250,7 +247,7 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
.Dv GLOB_NOMAGIC
|
||||
は、歴史的な
|
||||
.Xr csh 1
|
||||
によるグロッビング ( ファイル名展開 ) 挙動の実装を単純化するために
|
||||
によるグロッビング (ファイル名展開) 挙動の実装を単純化するために
|
||||
用意されています。その他の目的ではたぶん、
|
||||
どんな場合も使用すべきではありません。
|
||||
.It Dv GLOB_QUOTE
|
||||
|
@ -264,12 +261,23 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
.Ql ~
|
||||
で始まるパターンを、ユーザ名のホームディレクトリに
|
||||
展開します。
|
||||
.It Dv GLOB_LIMIT
|
||||
返されるパス名の合計数を、
|
||||
.Fa gl_matchc
|
||||
で指定される数に制限します (デフォルトは
|
||||
.Dv ARG_MAX )
|
||||
です。
|
||||
非常に大きな数のマッチに展開される
|
||||
.Ql */../*/..
|
||||
のような長いストリングのパターンによって、
|
||||
サービス拒否攻撃に無理矢理されてしまい得るプログラムに対し、
|
||||
本オプションを設定すべきです。
|
||||
.El
|
||||
.Pp
|
||||
検索においてオープンまたは読み込みできないディレクトリに出会った場合、
|
||||
.Fa errfunc
|
||||
が
|
||||
.Pf non- Dv NULL
|
||||
.Dv NULL
|
||||
でなければ、
|
||||
.Fn glob
|
||||
は
|
||||
|
@ -288,9 +296,9 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
.Fa errfunc
|
||||
を
|
||||
呼び出す結果になるからです。
|
||||
.Dv ENOENT
|
||||
.Er ENOENT
|
||||
および
|
||||
.Dv ENOTDIR
|
||||
.Er ENOTDIR
|
||||
のテストによって、
|
||||
エラールーチンはこの動作を抑制することができますが、
|
||||
それでもなおこうした場合には
|
||||
|
@ -300,7 +308,7 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
をリターンさせます。
|
||||
.Pp
|
||||
.Fa errfunc
|
||||
から非ゼロが返ると
|
||||
から非 0 が返ると
|
||||
.Fn glob
|
||||
は操作を停止して、すでに適合したすべての
|
||||
パスを反映するために、
|
||||
|
@ -324,7 +332,7 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
.Dv NULL
|
||||
かまたは
|
||||
.Fa errfunc
|
||||
がゼロを返した場合、エラーは無視されます。
|
||||
が 0 を返した場合、エラーは無視されます。
|
||||
.Pp
|
||||
.Fn globfree
|
||||
関数は、前の
|
||||
|
@ -336,7 +344,7 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
.Sh 戻り値
|
||||
無事に完了した場合
|
||||
.Fn glob
|
||||
はゼロを返します。さらに、
|
||||
は 0 を返します。さらに、
|
||||
.Fa pglob
|
||||
の各フィールド
|
||||
には次に示す値が含まれます。
|
||||
|
@ -364,11 +372,11 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
内容はクリアされます。
|
||||
.It Fa gl_pathv
|
||||
適合パス名の
|
||||
.Dv NULL
|
||||
.Dv NULL
|
||||
で終わるリストのポインタが含まれます。
|
||||
ただし、もし
|
||||
.Fa gl_pathc
|
||||
がゼロならば、
|
||||
が 0 ならば、
|
||||
.Fa gl_pathv
|
||||
の内容は定義されません。
|
||||
.El
|
||||
|
@ -377,19 +385,26 @@ int (*gl_stat)(const char *name, struct stat *st);
|
|||
.Fn glob
|
||||
は
|
||||
errno
|
||||
を設定して、次に示す非ゼロ定数の
|
||||
を設定して、次に示す非 0 定数の
|
||||
1 つを返します。これらの定数は、インクルードファイル
|
||||
.Aq Pa glob.h
|
||||
で定義されます。
|
||||
.Bl -tag -width GLOB_NOCHECK
|
||||
.It Dv GLOB_NOSPACE
|
||||
メモリ割り当ての試みが失敗しました。
|
||||
もしくは
|
||||
.Fa errno
|
||||
が 0 の場合、
|
||||
.Dv GLOB_LIMIT
|
||||
が flags に指定され、
|
||||
.Fa pglob\->gl_matchc
|
||||
個またはそれ以上のパターンがマッチしました。
|
||||
.It Dv GLOB_ABEND
|
||||
エラーが発生した上に
|
||||
.Dv GLOB_ERR
|
||||
が設定されていたか、または
|
||||
.Fa (*errfunc)()
|
||||
が非ゼロを返したので、
|
||||
.Fa \*(lp*errfunc\*(rp\*(lp\*(rp
|
||||
が非 0 を返したので、
|
||||
.Fn glob
|
||||
はパス名の走査を停止しました。
|
||||
.El
|
||||
|
@ -422,27 +437,27 @@ execvp("ls", g.gl_pathv);
|
|||
関数には次に示す例外を除いて、
|
||||
.St -p1003.2
|
||||
との互換性が期待されています。例外はフラグ
|
||||
.Dv GLOB_ALTDIRFUNC,
|
||||
.Dv GLOB_BRACE
|
||||
.Dv GLOB_MAGCHAR,
|
||||
.Dv GLOB_NOMAGIC,
|
||||
.Dv GLOB_QUOTE,
|
||||
および
|
||||
.Dv GLOB_TILDE,
|
||||
.Dv GLOB_ALTDIRFUNC ,
|
||||
.Dv GLOB_BRACE ,
|
||||
.Dv GLOB_LIMIT ,
|
||||
.Dv GLOB_MAGCHAR ,
|
||||
.Dv GLOB_NOMAGIC ,
|
||||
.Dv GLOB_QUOTE ,
|
||||
.Dv GLOB_TILDE
|
||||
それにフィールド
|
||||
.Fa gl_matchc
|
||||
および
|
||||
.Fa gl_flags
|
||||
などを、厳正な
|
||||
.Tn POSIX
|
||||
準拠を争うアプリケーションでは使用すべきではないということです。
|
||||
適合を争うアプリケーションでは使用すべきではないということです。
|
||||
.Sh 歴史
|
||||
.Fn glob
|
||||
および
|
||||
.Fn globfree
|
||||
関数は、
|
||||
.Bx 4.4
|
||||
で最初に取り入れられました。
|
||||
ではじめて登場しました。
|
||||
.Sh バグ
|
||||
.Dv MAXPATHLEN
|
||||
よりも長いパターンは、無検査エラーの原因となる可能性があります。
|
||||
|
@ -455,5 +470,5 @@ execvp("ls", g.gl_pathv);
|
|||
.Xr readdir 3 ,
|
||||
.Xr malloc 3 ,
|
||||
および
|
||||
.Xr free 3
|
||||
用に指定したエラーのどれかに、 errno を設定することがあります。
|
||||
.Xr free 3
|
||||
用に指定したエラーのどれかに、errno を設定することがあります。
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)hypot.3 6.7 (Berkeley) 5/6/91
|
||||
.\" $Id: hypot.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/msun/man/hypot.3,v 1.5.2.3 2001/12/17 10:08:36 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd May 6, 1991
|
||||
|
@ -41,17 +41,19 @@
|
|||
.Nm hypotf ,
|
||||
.Nm cabs ,
|
||||
.Nm cabsf
|
||||
.Sh ライブラリ
|
||||
.Lb libm
|
||||
.Nd ユークリッド距離と複素絶対値関数
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.In math.h
|
||||
.Ft double
|
||||
.Fn hypot "double x" "double y"
|
||||
.Ft float
|
||||
.Fn hypotf "float x" "float y"
|
||||
.Fd struct {double x, y;} z;
|
||||
.Vt struct {double x, y;} z ;
|
||||
.Ft double
|
||||
.Fn cabs z
|
||||
.Fd struct {float x, y;} z;
|
||||
.Vt struct {float x, y;} z ;
|
||||
.Ft float
|
||||
.Fn cabsf z
|
||||
.Sh 解説
|
||||
|
@ -60,8 +62,8 @@
|
|||
.Fn cabs ,
|
||||
および
|
||||
.Fn cabsf
|
||||
関数は、アンダーフローが
|
||||
起きず、最終結果でオーバーフローが起こる場合のみオーバーフローする方法で
|
||||
関数は、アンダフローが
|
||||
起きず、最終結果でオーバフローが起こる場合のみオーバフローする方法で
|
||||
sqrt(x*x+y*y)
|
||||
を計算します。
|
||||
.Pp
|
||||
|
@ -117,7 +119,7 @@ cabs.c
|
|||
.Ar v
|
||||
とは独立した値です。
|
||||
.Tn VAX
|
||||
での reserved operand fault とは異なり、
|
||||
での予約オペランドフォルトとは異なり、
|
||||
.Tn IEEE
|
||||
\*(Na は
|
||||
.Fn hypot "\*(If" "\*(Na"
|
||||
|
|
|
@ -34,10 +34,12 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)keycap.3, 3.00, Last Edit-Date: [Sun Jan 2 13:46:43 1994]
|
||||
.\" %FreeBSD: src/usr.sbin/pcvt/keycap/keycap.3,v 1.8.2.3 2001/08/16 15:56:13 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd January 3, 1993
|
||||
.Dt KEYCAP 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kgetent ,
|
||||
.Nm kgetnum ,
|
||||
|
@ -80,7 +82,7 @@
|
|||
.Fn kgetent
|
||||
関数は、オープンできた
|
||||
.Nm keycap
|
||||
データベース・ファイルが一つもなければ \-1 を返し、
|
||||
データベースファイルが一つもなければ \-1 を返し、
|
||||
所定のマップ名にエントリがなければ 0 を返し、
|
||||
全てが正常終了すれば 1 を返します。
|
||||
.Pp
|
||||
|
@ -109,7 +111,7 @@
|
|||
関数は、ケーパビリティが見つからなければ
|
||||
.Dv NULL
|
||||
を返します。
|
||||
.Sh ファイル
|
||||
.Sh 関連ファイル
|
||||
.Bl -tag -width /usr/share/misc/keycap.pcvt -compact
|
||||
.It Pa /usr/share/misc/keycap.pcvt
|
||||
キーボードケーパビリティデータベース
|
||||
|
|
|
@ -34,21 +34,25 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm.3,v 1.7.2.2 2001/08/17 15:43:04 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 4, 1993
|
||||
.Dt KVM 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kvm
|
||||
.Nd カーネル・メモリ・インタフェース
|
||||
.Nd カーネルメモリインタフェース
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 解説
|
||||
.Xr kvm 3
|
||||
ライブラリは、作動中のシステムとクラッシュダンプを含めて、
|
||||
カーネル仮想メモリイメージをアクセスするための
|
||||
一様なインタフェースを提供します。
|
||||
作動中のシステムへのアクセスは /dev/mem を経由して行われます。
|
||||
作動中のシステムへのアクセスは
|
||||
.Pa /dev/mem
|
||||
を経由して行われます。
|
||||
他方、クラッシュダンプは
|
||||
.Xr savecore 8
|
||||
が生成するコアファイルを経由して検証できます。
|
||||
|
@ -58,46 +62,49 @@
|
|||
ユーザプロセスの情報が収集できます。
|
||||
.Pp
|
||||
.Fn kvm_open
|
||||
は、すべての後続する呼び出しの記述子を得るために、
|
||||
は、すべての後続する呼び出しで必要となる記述子を得るために、
|
||||
最初に呼び出されます。
|
||||
.Sh 互換性
|
||||
kvm インタフェースは最初に SunOS で取込まれました。
|
||||
かなりの数のプログラムが開発されており、
|
||||
このインタフェースを使用して後方互換性を
|
||||
非常に望ましい形にしています。
|
||||
このインタフェースを使用するかなりの数のプログラムが開発されましたので、
|
||||
後方互換性を保つことが非常に望まれています。
|
||||
ほとんどの点で、Sun kvm インタフェースは一貫しており、クリーンです。
|
||||
従って、インタフェースのジェネリックな部分
|
||||
(たとえば
|
||||
(すなわち
|
||||
.Fn kvm_open ,
|
||||
.Fn kvm_close ,
|
||||
.Fn kvm_read ,
|
||||
.Fn kvm_write
|
||||
および
|
||||
.Fn kvm_write ,
|
||||
.Fn kvm_nlist )
|
||||
は BSD インタフェースに組み込まれてしまっています。
|
||||
は
|
||||
.Bx
|
||||
インタフェースに組み込まれてしまっています。
|
||||
実際、多くの kvm アプリケーション (たとえばデバッガや統計的モニタ)
|
||||
はインタフェースのこのサブセットのみを使用します。
|
||||
プロセス・インタフェースは残されませんでした。
|
||||
プロセスインタフェースは残されませんでした。
|
||||
これは移植性の問題ではありません。
|
||||
すなわち、
|
||||
プロセスを操作するどのようなコードも本質的にマシンに依存するためです。
|
||||
プロセスを操作するどのようなコードも、本質的にマシン依存だからです。
|
||||
.Pp
|
||||
最後に、Sun kvm エラー報告セマンティクスはうまく定義されていません。
|
||||
ライブラリは、stderr に自動的にエラーを印字する、
|
||||
あるいはエラー・メッセージをまったく印字しないのどちらかに設定できます。
|
||||
あるいはエラーメッセージをまったく印字しないのどちらかに設定できます。
|
||||
後者の場合には、エラーの性質は決定できません。
|
||||
この問題を克服するために、BSD インタフェースは
|
||||
この問題を克服するために、
|
||||
.Bx
|
||||
インタフェースは
|
||||
.Xr kvm_geterr 3
|
||||
ルーチンを含み、
|
||||
ルーチンを持ち、
|
||||
該当の記述子における最新のエラー状態に対応する
|
||||
エラー・メッセージを戻します (印字しません)。
|
||||
エラーメッセージを返します (印字しません)。
|
||||
.Sh 関連項目
|
||||
.Xr kvm_close 3 ,
|
||||
.Xr kvm_getargv 3 ,
|
||||
.Xr kvm_getenvv 3 ,
|
||||
.Xr kvm_geterr 3,
|
||||
.Xr kvm_getfiles 3 ,
|
||||
.Xr kvm_getloadavg 3 ,
|
||||
.Xr kvm_getprocs 3 ,
|
||||
.Xr kvm_getswapinfo 3 ,
|
||||
.Xr kvm_nlist 3 ,
|
||||
.Xr kvm_open 3 ,
|
||||
.Xr kvm_openfiles 3 ,
|
||||
|
|
|
@ -34,24 +34,25 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_geterr.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm_geterr.3,v 1.3.2.4 2001/12/17 10:08:30 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 4, 1993
|
||||
.Dt KVM_GETERR 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kvm_geterr
|
||||
.Nd kvm 記述子でのエラー・メッセージを獲得する
|
||||
.Nd kvm 記述子でのエラーメッセージを獲得する
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 書式
|
||||
.Fd #include <kvm.h>
|
||||
.br
|
||||
.In kvm.h
|
||||
.Ft char *
|
||||
.Fn kvm_geterr "kvm_t *kd"
|
||||
.Sh 解説
|
||||
この関数は
|
||||
.Fa kd
|
||||
記述子での最新のエラー状態を説明している文字列を戻します。
|
||||
記述子での最新のエラー状態を説明している文字列を返します。
|
||||
もしも最新の
|
||||
.Xr kvm 3
|
||||
ライブラリ呼び出しがエラーを引き起こさなかったならば、
|
||||
|
@ -64,9 +65,9 @@
|
|||
.Fn kvm_openfiles
|
||||
呼び出しに基づくエラー条件のアクセスに使用できません。
|
||||
異常終了は
|
||||
.Dv ヌル
|
||||
.Dv NULL
|
||||
記述子を戻すことで指示されます。
|
||||
このために、オープンに関するエラーは特別なエラー・バッファに出力され、
|
||||
このために、オープンに関するエラーは特別なエラーバッファに出力され、
|
||||
.Fn kvm_openfiles
|
||||
に渡されます。このオプションは
|
||||
.Fn kvm_open
|
||||
|
|
|
@ -34,45 +34,48 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_getfiles.3 8.2 (Berkeley) 4/19/94
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm_getfiles.3,v 1.6.2.6 2001/12/17 10:08:30 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd April 19, 1994
|
||||
.Dt KVM_GETFILES 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kvm_getfiles
|
||||
.Nd オープンしたファイルを調査する
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 書式
|
||||
.Fd #include <kvm.h>
|
||||
.Fd #define KERNEL
|
||||
.Fd #include <sys/file.h>
|
||||
.Fd #undef KERNEL
|
||||
.In kvm.h
|
||||
.In sys/types.h
|
||||
.Fd #define _KERNEL
|
||||
.In sys/file.h
|
||||
.Fd #undef _KERNEL
|
||||
.\" .Fa kvm_t *kd
|
||||
.br
|
||||
.Ft char *
|
||||
.Fn kvm_getfiles "kvm_t *kd" "int op" "int arg" "int *cnt"
|
||||
.Sh 解説
|
||||
.Fn kvm_getfiles
|
||||
関数は、
|
||||
.Fa kd
|
||||
で示されるカーネルにあるオープンファイルの (サブ) 集合を戻します。
|
||||
で示されるカーネルにあるオープンファイルの (サブ) 集合を返します。
|
||||
.Fa op
|
||||
と
|
||||
.Fa arg
|
||||
引数は、戻ったファイルの集合を制限するひとつの属性を構成します。
|
||||
の引数は、返されるファイルの集合を制限する属性を構成します。
|
||||
属性は現時点では定義されていません。
|
||||
.Pp
|
||||
見つけたプロセス数は参照パラメータ
|
||||
見つけたファイル数は参照パラメータ
|
||||
.Fa cnt
|
||||
に戻されます。ファイルはファイル構造体の連続した配列で戻されます。
|
||||
カーネルでの最初のファイル・エントリのアドレスが先行しています。
|
||||
に返されます。
|
||||
ファイルはファイル構造体の連続した配列として返されます。
|
||||
その前に、カーネルでの最初のファイルエントリのアドレスが付きます。
|
||||
このメモリは kvm で所有され、引き続く kvm
|
||||
ライブラリ呼び出しに対しても持続することは保証されていません。
|
||||
データは保存の必要があればコピーするべきです。
|
||||
.Sh 戻り値
|
||||
.Fn kvm_getfiles
|
||||
は異常終了時にヌルを戻します。
|
||||
は異常終了時に NULL を返します。
|
||||
.Sh バグ
|
||||
このルーチンは kvm インタフェースに属していません。
|
||||
.Sh 関連項目
|
||||
|
|
|
@ -30,35 +30,36 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_getloadavg.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm_getloadavg.3,v 1.8.2.2 2001/12/17 10:08:30 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 4, 1993
|
||||
.Dt KVM_GETLOADAVG 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kvm_getloadavg
|
||||
.Nd システムのロード平均を獲得する
|
||||
.Nd システムの負荷平均を取得する
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 書式
|
||||
.Fd #include <kvm.h>
|
||||
.In kvm.h
|
||||
.Ft int
|
||||
.Fn kvm_getloadavg "kvm_t *kd" "double loadavg[]" "int nelem"
|
||||
.Sh 解説
|
||||
.Fn kvm_getloadavg
|
||||
関数は、
|
||||
.Fa kd
|
||||
で指示されたカーネルのシステム動作待ち行列でのプロセス数を戻します。
|
||||
で指示されたカーネルのシステム動作待ち行列でのプロセス数を返します。
|
||||
この数は種々の時間間隔で平均化されています。最大
|
||||
.Fa nelem
|
||||
のサンプルが検索され、
|
||||
のサンプルが取得され、
|
||||
.Fa loadavg Ns Bq
|
||||
の連続するエレメントに割り当てられます。
|
||||
システムは最大 3 個のサンプルを押し付けます。
|
||||
これらのサンプルは別々の最後の
|
||||
1 分、5 分、15 分での平均を表わしています。
|
||||
の連続する要素に代入されます。
|
||||
システムの制約では、サンプル数の最大は 3 個であり、
|
||||
それぞれ最新 1 分、5 分、15 分での平均を表現します。
|
||||
.Sh 診断
|
||||
ロード平均が獲得できなければ、\-1 が戻ります。
|
||||
そうでなければ、実際に検索されたサンプル数が戻ります。
|
||||
負荷平均が取得できなければ、\-1 が返されます。
|
||||
そうでなければ、実際に取得されたサンプル数が返されます。
|
||||
.Sh 関連項目
|
||||
.Xr uptime 1 ,
|
||||
.Xr getloadavg 3 ,
|
||||
|
|
|
@ -34,24 +34,24 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_getprocs.3 8.1 (Berkeley) 6/4/93
|
||||
.\" $Id: kvm_getprocs.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm_getprocs.3,v 1.6.2.6 2001/12/17 10:08:30 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 4, 1993
|
||||
.Dt KVM_GETPROCS 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kvm_getprocs ,
|
||||
.Nm kvm_getargv ,
|
||||
.Nm kvm_getenvv
|
||||
.Nm kvm_getenvv
|
||||
.Nd ユーザプロセス状態にアクセスする
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 書式
|
||||
.Fd #include <kvm.h>
|
||||
.Fd #include <sys/param.h>
|
||||
.Fd #include <sys/sysctl.h>
|
||||
.In kvm.h
|
||||
.In sys/param.h
|
||||
.In sys/sysctl.h
|
||||
.\" .Fa kvm_t *kd
|
||||
.br
|
||||
.Ft struct kinfo_proc *
|
||||
.Fn kvm_getprocs "kvm_t *kd" "int op" "int arg" "int *cnt"
|
||||
.Ft char **
|
||||
|
@ -62,11 +62,11 @@
|
|||
.Fn kvm_getprocs
|
||||
は
|
||||
.Fa kd
|
||||
が指示するカーネルの動作中のプロセスの (サブ) 集合を戻します。
|
||||
が指示するカーネルの動作中のプロセスの (サブ) 集合を返します。
|
||||
.Fa op
|
||||
と
|
||||
.Fa arg
|
||||
の各引数は戻されたプロセスの集合を制限する属性を構成します。
|
||||
の引数は,返されるプロセスの集合を制限する属性を構成します。
|
||||
.Fa op
|
||||
の値は以下のフィルタリング属性を記述しています :
|
||||
.Pp
|
||||
|
@ -101,8 +101,8 @@ tty
|
|||
.Pp
|
||||
見つけたプロセス数は参照パラメータ
|
||||
.Fa cnt
|
||||
で戻されます。
|
||||
プロセスは kinfo_proc 構造体の連続配列として戻されます。
|
||||
で返されます。
|
||||
プロセスは kinfo_proc 構造体の連続配列として返されます。
|
||||
このメモリは局所的に割り当てられ、
|
||||
.Fn kvm_getprocs
|
||||
と
|
||||
|
@ -110,36 +110,36 @@ tty
|
|||
に引き続く呼び出しはこの記憶域に上書きします。
|
||||
.Pp
|
||||
.Fn kvm_getargv
|
||||
はヌルで終了する引数ベクタを戻します。
|
||||
はヌルで終了する引数ベクタを返します。
|
||||
このベクタは
|
||||
.Fa p
|
||||
が示すプロセスに通過したコマンドライン引数に対応します。
|
||||
が示すプロセスに渡されたコマンドライン引数に対応します。
|
||||
おそらく、これらの引数はプロセス生成時の
|
||||
.Xr exec 3
|
||||
に通過した値に相当します。
|
||||
に渡された値に相当します。
|
||||
しかしながら、この情報は、
|
||||
故意にプロセス自身のコントロール下にあります。
|
||||
オリジナルのコマンド名は、
|
||||
.Fn kvm_getprocs
|
||||
によって戻されたプロセス構造体の p_comm フィールドに、
|
||||
によって返されたプロセス構造体の p_comm フィールドに、
|
||||
変更されていない状態で見つけることができます。
|
||||
.Pp
|
||||
.Fa nchr
|
||||
引数はヌルバイトを含めた最大の文字数を示し、
|
||||
文字列の構築に使います。
|
||||
もしもこの量を超えてしまえば、
|
||||
オーバーフローの原因となる文字列は切り捨てられ、
|
||||
結果が部分的に戻されます。これは
|
||||
オーバフローの原因となる文字列は切り捨てられ、
|
||||
結果が部分的に返されます。これは
|
||||
.Xr ps 1
|
||||
や
|
||||
.Xr w 1
|
||||
のようなプログラムにとっては簡便な方法です。
|
||||
これらのプログラムにおいては、
|
||||
コマンドの 1 行要約のみを印字し、
|
||||
コマンドの 1 行要約のみを印字しますので、
|
||||
無視するためのみに多量のテキストを複写すべきではありません。
|
||||
.Fa nchr
|
||||
がゼロならば、なんら制限は課されませんし、
|
||||
すべての引数の文字列はそっくりそのまま戻されます。
|
||||
が 0 ならば、なんら制限は課されませんし、
|
||||
すべての引数の文字列はそっくりそのまま返されます。
|
||||
.Pp
|
||||
argv ポインタと文字列記憶域に割り当てられたメモリは、
|
||||
kvm ライブラリによって所有されます。引き続く
|
||||
|
@ -151,7 +151,7 @@ kvm
|
|||
.Fn kvm_getenvv
|
||||
関数は
|
||||
.Fn kvm_getargv
|
||||
に類似していますが、環境文字列のベクタを戻します。
|
||||
に類似していますが、環境文字列のベクタを返します。
|
||||
このデータはまたプロセスにより変更可能です。
|
||||
.Sh 戻り値
|
||||
.Fn kvm_getprocs ,
|
||||
|
@ -159,8 +159,8 @@ kvm
|
|||
および
|
||||
.Fn kvm_getenvv
|
||||
はすべて異常終了時に
|
||||
.Dv ヌル
|
||||
を戻します。
|
||||
.Dv NULL
|
||||
を返します。
|
||||
.Sh バグ
|
||||
これらのルーチンは kvm インタフェースに属していません。
|
||||
.Sh 関連項目
|
||||
|
|
|
@ -34,18 +34,20 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_nlist.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm_nlist.3,v 1.5.2.3 2001/12/17 10:08:30 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 4, 1993
|
||||
.Dt KVM_NLIST 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kvm_nlist
|
||||
.Nd カーネル・イメージからシンボルテーブルを検索する
|
||||
.Nd カーネルイメージからシンボルテーブルを検索する
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 書式
|
||||
.Fd #include <kvm.h>
|
||||
.Fd #include <nlist.h>
|
||||
.In kvm.h
|
||||
.In nlist.h
|
||||
.Ft int
|
||||
.Fn kvm_nlist "kvm_t *kd" "struct nlist *nl"
|
||||
.Sh 解説
|
||||
|
@ -55,7 +57,7 @@
|
|||
で示されるシンボルテーブルのエントリを検索します。
|
||||
この引数は nlist 構造体の配列を指し示し、
|
||||
n_name フィールドが
|
||||
.Dv ヌル
|
||||
.Dv NULL
|
||||
.Xr (nlist 3
|
||||
参照) であるエントリで終了しています。
|
||||
各シンボルは n_name フィールドを使って調べられます。
|
||||
|
@ -63,21 +65,17 @@ n_name
|
|||
対応する n_type フィールドと n_value フィールドが記載されます。
|
||||
シンボルが見つからなければ、これらのフィールドは 0 にされます。
|
||||
.Pp
|
||||
プログラム
|
||||
.Xr kvm_mkdb 8
|
||||
は動作中のカーネルのネームリストからデータベースを構築します。
|
||||
データベースがオープンされたカーネルに一致すれば、
|
||||
.Fn kvm_nlist
|
||||
はそれを使って検索を速めます。
|
||||
シンボルを見つけるに、
|
||||
.Xr kldsym 2
|
||||
を使用しています。
|
||||
nlist 値のエミュレートに関しては完全ではありませんが、
|
||||
カーネルモジュールを考慮していてかなり高速であるという利点があります。
|
||||
.Sh 戻り値
|
||||
.Fn kvm_nlist
|
||||
関数は見つけた無効エントリ数を戻します。
|
||||
カーネルシンボルテーブルが読めなければ、-1 を戻します。
|
||||
.Sh ファイル
|
||||
.Bl -tag -width /var/db/kvm_kernel.db -compact
|
||||
.It Pa /var/db/kvm_kernel.db
|
||||
.El
|
||||
関数は見つけた無効エントリ数を返します。
|
||||
カーネルシンボルテーブルが読めなければ、-1 を返します。
|
||||
.Sh 関連項目
|
||||
.Xr kldsym 2 ,
|
||||
.Xr kvm 3 ,
|
||||
.Xr kvm_close 3 ,
|
||||
.Xr kvm_getargv 3 ,
|
||||
|
@ -87,5 +85,4 @@ n_name
|
|||
.Xr kvm_open 3 ,
|
||||
.Xr kvm_openfiles 3 ,
|
||||
.Xr kvm_read 3 ,
|
||||
.Xr kvm_write 3 ,
|
||||
.Xr kvm_mkdb 8
|
||||
.Xr kvm_write 3
|
||||
|
|
|
@ -34,9 +34,9 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_open.3 8.3 (Berkeley) 4/19/94
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm_open.3,v 1.5.2.3 2001/01/16 10:33:29 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd April 19, 1994
|
||||
.Dt KVM_OPEN 3
|
||||
.Os
|
||||
|
@ -44,11 +44,12 @@
|
|||
.Nm kvm_open ,
|
||||
.Nm kvm_openfiles ,
|
||||
.Nm kvm_close
|
||||
.Nd カーネル仮想メモリ・アクセスの初期化
|
||||
.Nd カーネル仮想メモリアクセスの初期化
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 書式
|
||||
.Fd #include <fcntl.h>
|
||||
.Fd #include <kvm.h>
|
||||
.br
|
||||
.Ft kvm_t *
|
||||
.Fn kvm_open "const char *execfile" "const char *corefile" "const char *swapfile" "int flags" "const char *errstr"
|
||||
.Ft kvm_t *
|
||||
|
@ -62,33 +63,33 @@
|
|||
の各関数は
|
||||
.Xr kvm 3
|
||||
ライブラリルーチンを介しカーネル仮想メモリに
|
||||
アクセスするのに使われる記述子を返します。
|
||||
アクティブカーネルとクラッシュダンプは
|
||||
双方ともこのインタフェース経由でアクセス可能です。
|
||||
アクセスするために使われる記述子を返します。
|
||||
作動中カーネルとクラッシュダンプの双方とも、
|
||||
このインタフェース経由でアクセス可能です。
|
||||
.Pp
|
||||
.Fa execfile
|
||||
は、検証されるカーネルの実行可能イメージです。
|
||||
このファイルにはシンボルテーブルが含まれる必要があります。
|
||||
この引数が
|
||||
.Dv ヌル
|
||||
.Dv NULL
|
||||
のとき、現在実行中のシステムと仮定して
|
||||
.Xr getbootfile 3
|
||||
から決定されます。
|
||||
.Pp
|
||||
.Fa corefile
|
||||
はカーネル・メモリ・デバイスファイルで、/dev/mem にも
|
||||
はカーネルメモリデバイスファイルで、/dev/mem か
|
||||
.Xr savecore 8
|
||||
が生成するクラッシュダンプコアにもなります。
|
||||
が生成するクラッシュダンプコアのいずれかです。
|
||||
.Fa corefile
|
||||
が
|
||||
.Dv ヌル
|
||||
.Dv NULL
|
||||
のとき、<paths.h> が指示するデフォルト値
|
||||
.Dv _PATH_MEM
|
||||
が使われます。
|
||||
.Pp
|
||||
.Fa swapfile
|
||||
はスワップ・デバイスを指示します。
|
||||
.Dv ヌル
|
||||
はスワップデバイスを指示します。
|
||||
.Dv NULL
|
||||
のとき、<paths.h> の
|
||||
.Dv _PATH_DRUM
|
||||
が使われます。
|
||||
|
@ -99,12 +100,11 @@
|
|||
同様に読取り / 書込みアクセスフラグを示し、
|
||||
コアファイルに限定して適用します。
|
||||
.Dv O_RDONLY ,
|
||||
.Dv O_WRONLY
|
||||
と
|
||||
.Dv O_WRONLY ,
|
||||
.Dv O_RDWR
|
||||
だけが許可されます。
|
||||
.Pp
|
||||
オープン・ルーチンは 2 個あり、
|
||||
オープンルーチンは 2 個あり、
|
||||
その違いはエラー機構だけです。
|
||||
一方は SunOS kvm ライブラリと後方互換性があり、
|
||||
他方は改善されたエラー報告フレームワークを提供します。
|
||||
|
@ -114,26 +114,26 @@
|
|||
ここでは、
|
||||
.Fa errstr
|
||||
引数はエラーの処理方法を示します。
|
||||
結果が
|
||||
.Dv ヌル
|
||||
.Dv NULL
|
||||
のとき、エラーは報告されず、
|
||||
アプリケーション・プログラムは kvm
|
||||
アプリケーションプログラムは kvm
|
||||
呼び出しが失敗した原因は知らされません。
|
||||
結果が
|
||||
.Dv ヌル
|
||||
.Dv NULL
|
||||
でなければ、
|
||||
.Xr perror 3
|
||||
同様にメッセージに
|
||||
同様に、
|
||||
前に
|
||||
.Fa errstr
|
||||
が事前に付加されて stderr に印字されます。
|
||||
通常、プログラム名が使われます。ストリングは該当の
|
||||
が付加されたメッセージが stderr に印字されます。
|
||||
通常、プログラム名が使われます。
|
||||
少なくとも対応する
|
||||
.Fn kvm_close
|
||||
呼び出しまでは最低保持すると想定されます。
|
||||
呼び出しまでは、この文字列は変わらないものと仮定されます。
|
||||
.Pp
|
||||
.Fn kvm_openfiles
|
||||
関数は BSD 様式のエラー報告を行います。
|
||||
ここでは、エラー・メッセージはライブラリにより印字されません。
|
||||
代わりに、アプリケーションは
|
||||
ライブラリは、エラーメッセージを印字しません。
|
||||
代わりに、アプリケーションが
|
||||
.Fn kvm_geterr
|
||||
.Xr (kvm_geterr 3
|
||||
参照) を使用して、
|
||||
|
@ -142,29 +142,29 @@
|
|||
.Fn kvm_geterr
|
||||
は kvm 記述子を要求しますが、
|
||||
オープンルーチンはオープン失敗のときには
|
||||
.Dv ヌル
|
||||
を戻し、オープンに失敗したときには、
|
||||
.Dv NULL
|
||||
を返しますので、オープンに失敗したときには、
|
||||
.Fn kvm_geterr
|
||||
を使ってエラー・メッセージを獲得できません。
|
||||
したがって、
|
||||
を使ってエラーメッセージを獲得できません。
|
||||
このような事情があるため、
|
||||
.Fn kvm_openfiles
|
||||
は任意のエラー・メッセージを
|
||||
は任意のエラーメッセージを
|
||||
.Fa errbuf
|
||||
引数中に置きます。
|
||||
このバッファの大きさは _POSIX2_LINE_MAX キャラクタ分必要です
|
||||
(<limits.h>より)。
|
||||
このバッファの大きさは _POSIX2_LINE_MAX 文字分必要です
|
||||
(<limits.h> より)。
|
||||
.Sh 戻り値
|
||||
.Fn kvm_open
|
||||
と
|
||||
.Fn kvm_openfiles
|
||||
関数は、その後のすべての kvm ライブラリ呼び出しで
|
||||
の関数は、その後のすべての kvm ライブラリ呼び出しで
|
||||
使用するための記述子を返します。
|
||||
ライブラリは完全に再入可能です。
|
||||
異常終了時には
|
||||
.Dv ヌル
|
||||
.Dv NULL
|
||||
が返されますが、この場合、
|
||||
.Fn kvm_openfiles
|
||||
はエラー・メッセージを
|
||||
はエラーメッセージを
|
||||
.Fa errbuf
|
||||
に書き込みます。
|
||||
.Pp
|
||||
|
@ -172,10 +172,10 @@
|
|||
関数は正常終了時に 0 を返し、
|
||||
異常終了時には -1 を返します。
|
||||
.Sh バグ
|
||||
オープン呼び出しは 2 個持てません。
|
||||
Sun ライブラリの誤定義エラーセマンティクスと
|
||||
BSD について後方互換ライブラリを持つ要望は
|
||||
任意選択の余地がありません。
|
||||
オープン呼び出しが 2 種類ある現状は望ましくありません。
|
||||
Sun ライブラリのエラーセマンティクスが誤って定義されていたこと、
|
||||
BSD において後方互換ライブラリを持ちたかったことは、
|
||||
選択の余地をほとんど残しませんでした。
|
||||
.Sh 関連項目
|
||||
.Xr open 2 ,
|
||||
.Xr kvm 3 ,
|
||||
|
|
|
@ -34,40 +34,41 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)kvm_read.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libkvm/kvm_read.3,v 1.6.2.3 2001/12/17 10:08:30 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd June 4, 1993
|
||||
.Dt KVM_READ 3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm kvm_read ,
|
||||
.Nm kvm_write
|
||||
.Nd カーネル仮想メモリの読取り、書込み
|
||||
.Nd カーネル仮想メモリの読取りと書込み
|
||||
.Sh ライブラリ
|
||||
.Lb libkvm
|
||||
.Sh 書式
|
||||
.Fd #include <kvm.h>
|
||||
.In kvm.h
|
||||
.Ft ssize_t
|
||||
.Fn kvm_read "kvm_t *kd" "u_long addr" "void *buf" "size_t nbytes"
|
||||
.Fn kvm_read "kvm_t *kd" "unsigned long addr" "void *buf" "size_t nbytes"
|
||||
.Ft ssize_t
|
||||
.Fn kvm_write "kvm_t *kd" "u_long addr" "const void *buf" "size_t nbytes"
|
||||
.Fn kvm_write "kvm_t *kd" "unsigned long addr" "const void *buf" "size_t nbytes"
|
||||
.Sh 解説
|
||||
.Fn kvm_read
|
||||
および
|
||||
.Fn kvm_write
|
||||
関数はカーネル仮想メモリ
|
||||
(またはクラッシュ・ダンプ・ファイル) の読取り、
|
||||
書込みに使用されます。
|
||||
の関数は、カーネル仮想メモリ
|
||||
(またはクラッシュダンプファイル) の読取りと書込みに使用されます。
|
||||
カーネル仮想メモリと
|
||||
クラッシュ・ダンプのオープンに関する情報は
|
||||
クラッシュダンプのオープンに関する情報は
|
||||
.Fn kvm_open 3
|
||||
または
|
||||
.Fn kvm_openfiles 3
|
||||
を参照してください。
|
||||
.Pp
|
||||
.Fn kvm_read
|
||||
関数はデータの
|
||||
関数は
|
||||
.Fa nbytes
|
||||
バイトをカーネル空間のアドレス
|
||||
バイトのデータをカーネル空間のアドレス
|
||||
.Fa addr
|
||||
から
|
||||
.Fa buf
|
||||
|
@ -78,7 +79,7 @@
|
|||
から
|
||||
.Fa addr
|
||||
に転送します。
|
||||
SunOS と異なり、これらの関数はプロセスのアドレス空間を、
|
||||
SunOS と異なり、これらの関数は、プロセスのアドレス空間の
|
||||
読取りまたは書込みに使用できません。
|
||||
.Sh 戻り値
|
||||
正常に終了すると、実際に転送されたバイト数が返されます。
|
||||
|
|
|
@ -30,19 +30,20 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)lgamma.3 6.6 (Berkeley) 12/3/92
|
||||
.\" $Id: lgamma.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/msun/man/lgamma.3,v 1.7.2.5 2001/12/17 10:08:36 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd December 3, 1992
|
||||
.Dt LGAMMA 3
|
||||
.Os BSD 4.3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm lgamma ,
|
||||
.Nm lgammaf ,
|
||||
.Nm gamma ,
|
||||
.Nm gammaf
|
||||
.Nd ガンマ関数およびガンマ関数の対数計算
|
||||
.Sh ライブラリ
|
||||
.Lb libm
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.Ft extern int
|
||||
|
@ -108,7 +109,7 @@ signgam
|
|||
では、予約語のオペレータが返され、
|
||||
負の大きな非整数値に関しては
|
||||
.Fn gamma
|
||||
関数でアンダーフロエラーが発生し、
|
||||
関数でアンダフローエラーが発生し、
|
||||
.Va errno
|
||||
に
|
||||
.Er ERANGE
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
提供します。これらの関数が使用されるのは、リソースに関する限界値や、
|
||||
環境およびシステムにログインするユーザへの課金の設定、およびログインクラス
|
||||
に基づくシステムデーモンの設定と環境の適切な組を設定するときです。これらの
|
||||
関数呼び出しは、現在のプロセスがルート権限で実行されているときだけ
|
||||
関数呼び出しは、現在のプロセスが root 権限で実行されているときだけ
|
||||
可能です。LOGIN_SETLOGIN フラグが使用される場合、この関数は
|
||||
.Xr setlogin 2
|
||||
の呼び出しを実行し、当該関数についてはマニュアルページに説明してある注意を
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)math.3 6.10 (Berkeley) 5/6/91
|
||||
.\" $Id: math.3,v 1.5 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/msun/man/math.3,v 1.9.2.1 2001/07/22 12:07:20 dd Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.TH MATH 3M "May 6, 1991"
|
||||
|
@ -108,7 +108,7 @@ y1 j0.3m
|
|||
yn j0.3m ベッセル関数 ???
|
||||
.ta
|
||||
.fi
|
||||
.SH 注釈
|
||||
.SH 注
|
||||
カリフォルニア大学から 1985 年末に配布された 4.3 BSD では、上記の関数に
|
||||
2 つのバージョンが用意されています。1 つは DEC VAX\-11 ファミリの
|
||||
コンピュータの倍精度 "D" フォーマットで、もう 1 つは IEEE 754 標準の
|
||||
|
@ -163,18 +163,18 @@ x
|
|||
.nf
|
||||
.ta \w'Range:'u+1n +\w'Underflow threshold'u+1n +\w'= 2.0**127'u+1n
|
||||
範囲: オーバフローしきい値 = 2.0**127 = 1.7e38
|
||||
アンダーフローしきい値 = 0.5**128 = 2.9e-39
|
||||
アンダフローしきい値 = 0.5**128 = 2.9e-39
|
||||
注意: この範囲は相対的に狭くなっています。
|
||||
.ta
|
||||
.fi
|
||||
.RS
|
||||
オーバフローが発生すると、計算は常に中断されます。
|
||||
.br
|
||||
アンダーフローが発生すると、ゼロになります。
|
||||
アンダフローが発生すると、0 になります。
|
||||
.br
|
||||
警告:
|
||||
.RS
|
||||
アンダーフローにより、x
|
||||
アンダフローにより、x
|
||||
.if n \
|
||||
!=
|
||||
.if t \
|
||||
|
@ -184,9 +184,9 @@ x > y > 0
|
|||
y/x = 0 ということが警告なしに発生してしまいます。
|
||||
.RE
|
||||
.RE
|
||||
ゼロは曖昧に表現されます。
|
||||
0 は曖昧に表現されます。
|
||||
.RS
|
||||
ハードウェアでは、2**55 通りのゼロの表現を受理しますが、
|
||||
ハードウェアでは、2**55 通りの 0 の表現を受理しますが、
|
||||
生成されるものは明らかな表現だけです。
|
||||
VAX には -0 がありません。
|
||||
.RE
|
||||
|
@ -202,14 +202,14 @@ VAX
|
|||
.RE
|
||||
例外:
|
||||
.RS
|
||||
ゼロ除算とオーバフローするオペレーションは不正なオペレーションで、
|
||||
0 除算とオーバフローするオペレーションは不正なオペレーションで、
|
||||
計算は中断されます。古いマシンでは予約オペランドが作成され、
|
||||
計算が中断されます。
|
||||
.RE
|
||||
丸め:
|
||||
.RS
|
||||
(PDP\-11 では必ずしもそうとは言えませんが) VAXでのすべての有理数演算
|
||||
(+, \-, \(**, /) は、オーバフロー、アンダーフロー、ゼロ除算が
|
||||
(+, \-, \(**, /) は、オーバフロー、アンダフロー、0 除算が
|
||||
発生しない場合、\*(up の半分以内に丸められます。丸め誤差が \*(up
|
||||
のちょうど半分である場合、丸めは 0 から離れます。
|
||||
.RE
|
||||
|
@ -219,8 +219,8 @@ VAX
|
|||
ものとしては優れたコンピュータ算術演算のひとつです。
|
||||
D_floating\-point のプロパティは、4.3 BSD で配布された VAX の
|
||||
基本的な関数に忠実に反映されています。オーバフローや
|
||||
アンダーフローが発生するのは、結果が範囲外になるか範囲外に非常に近い
|
||||
場合のみで、その場合はオーバフローやアンダーフローを起こす有理算術
|
||||
アンダフローが発生するのは、結果が範囲外になるか範囲外に非常に近い
|
||||
場合のみで、その場合はオーバフローやアンダフローを起こす有理算術
|
||||
オペレーションと同じような動作をします。同じように、log(0) と atanh(1)
|
||||
のような式は 1/0 のように動作し、sqrt(\-3) と acos(3) は 0/0
|
||||
のように動作します。これらはすべて予約オペランドを作成し、
|
||||
|
@ -267,15 +267,15 @@ public domain
|
|||
この他にも、ソフトウェアによる実装 (Apple Macintosh は完璧にそれ) から、
|
||||
Hewlett-Packard 9000 シリーズの VLSI による実装や、果ては ECL を
|
||||
駆使し、3 Megaflop を達成した ELXSI 6400 まで極めて広い実装の幅を
|
||||
誇ります。他の企業の中には、丸め、オーバフロー、アンダーフロー
|
||||
誇ります。他の企業の中には、丸め、オーバフロー、アンダフロー
|
||||
などの例外の処理でこの標準の方法に従わずに、IEEE 754 のフォーマット
|
||||
だけを採用しています。
|
||||
DEC VAX G_floating\-point フォーマットは、IEEE 754 Double
|
||||
DEC VAX G_floating\-point フォーマットは、IEEE 754 Double
|
||||
フォーマットに非常に似ているので、上に挙げたほとんどの初等関数の
|
||||
IEEE バージョンの C プログラムは、MicroVAX で実行するように簡単に
|
||||
変換できますが、わざわざ変換してやろうという人はいないようです。
|
||||
.PP
|
||||
4.3 BSD \fIlibm\fR のコードのうち、IEEE 754 準拠マシン用のものは、
|
||||
4.3 BSD \fIlibm\fR のコードのうち、IEEE 754 準拠マシン用のものは、
|
||||
National Semi. 32081 と WTL 1164/65 用になっています。
|
||||
Intel チップや Zilog チップ、または Apple Macintosh か ELXSI 6400
|
||||
でこのコードを使用する場合は、これらの企業が提供するよりよいコード
|
||||
|
@ -306,22 +306,22 @@ x
|
|||
となる。
|
||||
.RE
|
||||
.nf
|
||||
.ta \w'範囲:'u+1n +\w'アンダーフロー閾値'u+1n +\w'= 2.0**1024'u+1n
|
||||
.ta \w'範囲:'u+1n +\w'アンダフロー閾値'u+1n +\w'= 2.0**1024'u+1n
|
||||
範囲: オーバフローしきい値 = 2.0**1024 = 1.8e308
|
||||
アンダーフローしきい値 = 0.5**1022 = 2.2e-308
|
||||
アンダフローしきい値 = 0.5**1022 = 2.2e-308
|
||||
.ta
|
||||
.fi
|
||||
.RS
|
||||
オーバフローが発生すると、デフォルトで符号付きの無限になります。
|
||||
アンダーフローは 0.5**1074 = 4.9e-324 の倍数の整数のうち最も
|
||||
アンダフローは 0.5**1074 = 4.9e-324 の倍数の整数のうち最も
|
||||
近いものに段階的に丸められます。
|
||||
.RE
|
||||
ゼロは、+0 か \-0 のようにあいまいに表現されます。
|
||||
0 は、+0 か \-0 のようにあいまいに表現されます。
|
||||
.RS
|
||||
符号は乗算か除算で正しく変換され、符号付きゼロの加算で維持されます。
|
||||
符号は乗算か除算で正しく変換され、符号付き 0 の加算で維持されます。
|
||||
しかし x が有限の 場合、x\-x は +0 になります。0 の符号が
|
||||
問題になる演算は、0 除算と copysign(x,\(+-0) のみです。
|
||||
とくに比較 (x > y, x \(>= y など) はゼロの符号から
|
||||
とくに比較 (x > y, x \(>= y など) は 0 の符号から
|
||||
影響を受けませんが、有限な値 x = y である場合は、
|
||||
.If
|
||||
\&= 1/(x\-y)
|
||||
|
@ -342,7 +342,7 @@ x
|
|||
.If
|
||||
の符号は乗算と除算で正しく変換され、
|
||||
.If (有限値)/\(+- \0=\0\(+-0
|
||||
(非ゼロ値))/0 =
|
||||
(非 0 値))/0 =
|
||||
.If \(+-
|
||||
になります。しかし、
|
||||
.if n \
|
||||
|
@ -382,15 +382,15 @@ x
|
|||
sqrt)
|
||||
.if t \
|
||||
\(sr)
|
||||
は、\*(up の半分以内に丸められます。丸め誤差が \*(up
|
||||
のちょうど半分である場合、丸めた値の最下位有効ビットはゼロになります。
|
||||
は、\*(up の半分以内に丸められます。丸め誤差が \*(up
|
||||
のちょうど半分である場合、丸めた値の最下位有効ビットは 0 になります。
|
||||
通常はこのような丸めが最適で、たとえば
|
||||
x = 1.0, 2.0, 3.0, 4.0, ..., 2.0**52
|
||||
である場合、商と積の両方が丸められるにも関わらず、
|
||||
(x/3.0)\(**3.0 == x, (x/10.0)\(**10.0 == x, ...
|
||||
になります。このような結果となるのは、IEEE 754 のような丸めのみです。
|
||||
しかし 1 つの丸めがどの状況でも最適であるとは限らないため、
|
||||
IEEE 754 では、ゼロへの丸め、
|
||||
IEEE 754 では、0 への丸め、
|
||||
.If +
|
||||
への丸め、
|
||||
.If -
|
||||
|
@ -412,11 +412,11 @@ IEEE 754
|
|||
不正演算 \*(nn, または偽
|
||||
.if n \{\
|
||||
オーバフロー \(+-無限
|
||||
ゼロ除算 \(+-無限 \}
|
||||
0 除算 \(+-無限 \}
|
||||
.if t \{\
|
||||
オーバフロー \(+-\(if
|
||||
ゼロ除算 \(+-\(if \}
|
||||
アンダーフロー 段階的アンダーフロー
|
||||
0 除算 \(+-\(if \}
|
||||
アンダフロー 段階的アンダフロー
|
||||
不精密 丸めた値
|
||||
.ta
|
||||
.fi
|
||||
|
@ -444,23 +444,23 @@ IEEE 754
|
|||
.IP 3) \w'\0\0\0\0'u
|
||||
結果をテストし、1 つの例外のみが発生する値であるかどうかを確認する。
|
||||
.RS
|
||||
警告: アンダーフローが発生したかどうかを確実に発見するには、
|
||||
積や商がアンダーフローしきい値よりゼロに近いかどうかをテスト
|
||||
するか、アンダーフローフラグをテストするしかありません。
|
||||
(IEEE 754 では、和と差がアンダーフローを起こすことはありません。
|
||||
警告: アンダフローが発生したかどうかを確実に発見するには、
|
||||
積や商がアンダフローしきい値より 0 に近いかどうかをテスト
|
||||
するか、アンダフローフラグをテストするしかありません。
|
||||
(IEEE 754 では、和と差がアンダフローを起こすことはありません。
|
||||
x
|
||||
.if n \
|
||||
!=
|
||||
.if t \
|
||||
\(!=
|
||||
y である場合、x\-y は完全に正確で、値が小さくてもゼロではありません。
|
||||
) 段階的にアンダーフローを起こす積と商は、徐々に精度を失っても
|
||||
ゼロにはならないため、ゼロと比較しても (VAX で実行する可能性がある)、
|
||||
ロスは明らかになりません。段階的にアンダーフローを起こした値を
|
||||
アンダーフローしきい値より大きい値と加算する場合、段階的な
|
||||
アンダーフローで失われる桁は切り捨てられるので失われません。
|
||||
このため、通常の場合、段階的なアンダーフローは無視できることがあります。
|
||||
ゼロにフラッシュされるアンダーフローでは、同じことが正しいとは限りません。
|
||||
y である場合、x\-y は完全に正確で、値が小さくても 0 ではありません。
|
||||
) 段階的にアンダフローを起こす積と商は、徐々に精度を失っても
|
||||
0 にはならないため、0 と比較しても (VAX で実行する可能性がある)、
|
||||
ロスは明らかになりません。段階的にアンダフローを起こした値を
|
||||
アンダフローしきい値より大きい値と加算する場合、段階的な
|
||||
アンダフローで失われる桁は切り捨てられるので失われません。
|
||||
このため、通常の場合、段階的なアンダフローは無視できることがあります。
|
||||
0 にフラッシュされるアンダフローでは、同じことが正しいとは限りません。
|
||||
.RE
|
||||
.PP
|
||||
IEEE 754 に準拠するシステムでは、以下のような方法でも例外に
|
||||
|
@ -513,7 +513,7 @@ IEEE 754
|
|||
この作業が進むまで、\fIlibm\fR の関数はそれほど小さくなりませんが、
|
||||
以下の場合を除き、不適切な例外を発生させません。
|
||||
.RS
|
||||
オーバフロー/アンダーフロー
|
||||
オーバフロー/アンダフロー
|
||||
.RS
|
||||
正しく計算した結果が、範囲内に収まっている場合。
|
||||
.RE
|
||||
|
@ -534,13 +534,13 @@ IEEE 754
|
|||
正しい結果が有限であるが、オーバフローしきい値を
|
||||
越えている場合。
|
||||
.RE
|
||||
ゼロ除算は、以下のような場合にのみ発生します。
|
||||
0 除算は、以下のような場合にのみ発生します。
|
||||
.RS
|
||||
有限演算で、関数が無限の値を受けた場合。
|
||||
.RE
|
||||
アンダーフローは、以下のような場合にのみ発生します。
|
||||
アンダフローは、以下のような場合にのみ発生します。
|
||||
.RS
|
||||
正しい結果がゼロではないが、アンダーフローしきい値より
|
||||
正しい結果が 0 ではないが、アンダフローしきい値より
|
||||
小さい場合。
|
||||
.RE
|
||||
不正確は、以下のような場合にのみ発生します。
|
||||
|
@ -548,12 +548,12 @@ IEEE 754
|
|||
正しい結果の表現に、より広い範囲かより高い精度が必要な
|
||||
場合。
|
||||
.SH バグ
|
||||
シグナルが適切である場合、そのシグナルはコードの特定オペレーションから
|
||||
信号が適切である場合、その信号はコードの特定オペレーションから
|
||||
発信されているので、上記の手法 5) を使用している場合は、
|
||||
サブルーチンをトレースしてそのシグナルを発している関数を特定する
|
||||
サブルーチンをトレースしてその信号を発している関数を特定する
|
||||
必要があります。すべてのコードは、IEEE 754 のデフォルトを使用します。
|
||||
つまり、すべてのゼロ除算をトラップしようとすると、
|
||||
トラップしない場合にゼロ除算でも正しい結果を出すコードが中断されると
|
||||
つまり、すべての 0 除算をトラップしようとすると、
|
||||
トラップしない場合に 0 除算でも正しい結果を出すコードが中断されると
|
||||
いうことです。
|
||||
.SH 関連項目
|
||||
\fBfpgetround\fR(3),
|
||||
|
@ -562,9 +562,9 @@ IEEE 754
|
|||
\fBfpsetprec\fR(3),
|
||||
\fBfpgetmask\fR(3),
|
||||
\fBfpsetmask\fR(3),
|
||||
\fBfpgetsticky\fR(3)
|
||||
\fBfpgetsticky\fR(3),
|
||||
\fBfpresetsticky\fR(3) - IEEE 浮動小数インタフェース
|
||||
.SH 注釈
|
||||
.SH 注
|
||||
IEEE 754 とエクステンション p854 については、
|
||||
1984 年 8 月に発行された、IEEE の雑誌『MICRO』を参照してください。
|
||||
W. J. Cody らが「A Proposed Radix\- and Word\-length\-independent
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)modf.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/modf.3,v 1.3.2.3 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
|
@ -41,9 +42,11 @@
|
|||
.Os
|
||||
.Sh 名称
|
||||
.Nm modf
|
||||
.Nd 浮動小数からの符号付きの整数値/小数値取り出し
|
||||
.Nd 浮動小数点数からの符号付きの整数値/小数値取り出し
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <math.h>
|
||||
.In math.h
|
||||
.Ft double
|
||||
.Fn modf "double value" "double *iptr"
|
||||
.Sh 解説
|
||||
|
@ -60,7 +63,7 @@
|
|||
.Fn modf
|
||||
関数は、
|
||||
.Fa value
|
||||
の符号付き小数部分を戻します。
|
||||
の符号付き小数部分を返します。
|
||||
.Sh 関連項目
|
||||
.Xr frexp 3 ,
|
||||
.Xr ldexp 3 ,
|
||||
|
@ -68,6 +71,6 @@
|
|||
.Sh 規格
|
||||
.Fn modf
|
||||
関数は、
|
||||
.St -ansiC
|
||||
に準拠しています。
|
||||
.St -isoC
|
||||
に適合しています。
|
||||
.\"kuma 1999-11-12
|
||||
|
|
|
@ -30,17 +30,20 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)moncontrol.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gmon/moncontrol.3,v 1.6.2.5 2001/12/14 18:33:54 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
.Dt MONCONTROL 3
|
||||
.Os BSD 4
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm moncontrol ,
|
||||
.Nm monstartup
|
||||
.Nd 実行プロファイルの制御
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/types.h>
|
||||
.In sys/types.h
|
||||
.Ft int
|
||||
.Fn moncontrol "int mode"
|
||||
.Ft int
|
||||
|
@ -94,9 +97,10 @@
|
|||
このアドレス範囲のすべての関数です。プロファイル採取は、
|
||||
.Fn monstartup
|
||||
から戻ったときに始まります。
|
||||
.Sn 関連ファイル
|
||||
.Bl -tag -width Pa -compact
|
||||
.It Pa progname.gmon 実行データファイル
|
||||
.Sh 関連ファイル
|
||||
.Bl -tag -width progname.gmon -compact
|
||||
.It Pa progname.gmon
|
||||
実行データファイル
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr cc 1 ,
|
||||
|
|
|
@ -29,19 +29,21 @@
|
|||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" $Id: msgctl.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/libc/gen/msgctl.3,v 1.8.2.6 2001/12/14 18:33:51 ru Exp %
|
||||
.\"/
|
||||
.\" $FreeBSD$
|
||||
.Dd November 24, 1997
|
||||
.Dt MSGCTL 3
|
||||
.Os FreeBSD
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm msgctl
|
||||
.Nd メッセージ制御オペレーション
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/types.h>
|
||||
.Fd #include <sys/ipc.h>
|
||||
.Fd #include <sys/msg.h>
|
||||
.In sys/types.h
|
||||
.In sys/ipc.h
|
||||
.In sys/msg.h
|
||||
.Ft int
|
||||
.Fn msgctl "int msqid" "int cmd" "struct msqid_ds *buf"
|
||||
.Sh 解説
|
||||
|
@ -49,7 +51,7 @@
|
|||
システムコールは、
|
||||
.Fa msqid
|
||||
が指定するメッセージキューに対して制御オペレーションを実行します。
|
||||
|
||||
.Pp
|
||||
各メッセージキューには、それに関連したデータ構造体があります。
|
||||
その一部は
|
||||
.Fn msgctl
|
||||
|
@ -79,13 +81,9 @@ struct msqid_ds {
|
|||
};
|
||||
.Ed
|
||||
.Pp
|
||||
.Bf -literal
|
||||
shmid_ds
|
||||
.Ef
|
||||
.Vt shmid_ds
|
||||
構造体の中で使用される
|
||||
.Bf -literal
|
||||
ipc_perm
|
||||
.Ef
|
||||
.Vt ipc_perm
|
||||
構造体は、
|
||||
.Aq Pa sys/ipc.h
|
||||
で以下のように定義されています。
|
||||
|
@ -148,7 +146,7 @@ struct ipc_perm {
|
|||
.Va msg_perm.uid
|
||||
の値が、実効ユーザ ID に等しいプロセスのみが、これを実行できます。
|
||||
.El
|
||||
|
||||
.Pp
|
||||
メッセージキューからの読込み権かメッセージキューへの書込み権 (
|
||||
.Xr msgsnd 3
|
||||
と
|
||||
|
@ -167,10 +165,7 @@ struct ipc_perm {
|
|||
.Va msg_perm.gid
|
||||
と一致します。
|
||||
.Sh 戻り値
|
||||
問題なく終了すると 0 が戻されます。問題なく終了しないと -1 が戻され、
|
||||
グローバル変数
|
||||
.Va errno
|
||||
がそのエラーを示すように設定されます。
|
||||
.Rv -std msgctl
|
||||
.Sh エラー
|
||||
.Fn msgctl
|
||||
は、以下のような場合にエラーとなります。
|
||||
|
@ -183,7 +178,7 @@ struct ipc_perm {
|
|||
フィールドか
|
||||
.Va msg_perm.cuid
|
||||
フィールドと一致しない場合。
|
||||
|
||||
.Pp
|
||||
IPC_SET を用いて
|
||||
.Va msg_qbytes
|
||||
の値を上げようとしたが、呼出し側がスーパユーザでない場合。
|
||||
|
@ -193,7 +188,7 @@ IPC_SET
|
|||
.It Bq Er EINVAL
|
||||
.Fa msqid
|
||||
が正しいメッセージキュー ID でない場合。
|
||||
|
||||
.Pp
|
||||
.Va cmd
|
||||
が正しいコマンドでない場合。
|
||||
.It Bq Er EFAULT
|
||||
|
@ -206,6 +201,6 @@ IPC_SET
|
|||
.Xr msgsnd 3
|
||||
.Sh 歴史
|
||||
メッセージキューは、
|
||||
AT&T Unix System V
|
||||
.At V
|
||||
の最初のリリースに追加されました。
|
||||
.\"kuma 1999-11-12
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
.\" $NetBSD: msgget.2,v 1.1 1995/10/16 23:49:19 jtc Exp $
|
||||
.\" $NetBSD: msgget.2,v 1.1 1995/10/16 23:49:19 jtc Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 1995 Frank van der Linden
|
||||
.\" All rights reserved.
|
||||
|
@ -28,18 +28,22 @@
|
|||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\" %FreeBSD: src/lib/libc/gen/msgget.3,v 1.7.2.4 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\"/
|
||||
.\" $FreeBSD$
|
||||
.Dd August 17, 1995
|
||||
.Dt MSGGET 3
|
||||
.Os FreeBSD
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm msgget
|
||||
.Nd メッセージキューの取得
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/types.h>
|
||||
.Fd #include <sys/ipc.h>
|
||||
.Fd #include <sys/msg.h>
|
||||
.In sys/types.h
|
||||
.In sys/ipc.h
|
||||
.In sys/msg.h
|
||||
.Ft int
|
||||
.Fn msgget "key_t key" "int msgflg"
|
||||
.Sh 解説
|
||||
|
@ -98,6 +102,7 @@
|
|||
.It
|
||||
.Va msg_ctime
|
||||
は、現在の時刻に設定されます。
|
||||
.El
|
||||
.Sh 戻り値
|
||||
問題なく終了すると、正のメッセージキュー ID が戻されます。問題なく
|
||||
終了しないと -1 が戻され、グローバル変数
|
||||
|
@ -128,6 +133,7 @@
|
|||
が設定されていない状況で、
|
||||
.Fa key
|
||||
に関連するメッセージキューが見つかりません。
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr msgctl 3 ,
|
||||
.Xr msgrcv 3 ,
|
||||
|
@ -135,6 +141,6 @@
|
|||
.Pp
|
||||
.Sh 歴史
|
||||
メッセージキューは、
|
||||
AT&T Unix System V
|
||||
.At V
|
||||
の最初のリリースに追加されました。
|
||||
.\"kuma 1999-11-12
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
.\" $NetBSD: msgrcv.2,v 1.1 1995/10/16 23:49:20 jtc Exp $
|
||||
.\" $NetBSD: msgrcv.2,v 1.1 1995/10/16 23:49:20 jtc Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 1995 Frank van der Linden
|
||||
.\" All rights reserved.
|
||||
|
@ -28,20 +28,22 @@
|
|||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\" $Id: msgrcv.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" %FreeBSD: src/lib/libc/gen/msgrcv.3,v 1.8.2.6 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\"/
|
||||
.\" $FreeBSD$
|
||||
.Dd November 24, 1997
|
||||
.Dt MSGRCV 3
|
||||
.Os FreeBSD
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm msgrcv
|
||||
.Nd メッセージキューからメッセージを受信
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <sys/types.h>
|
||||
.Fd #include <sys/ipc.h>
|
||||
.Fd #include <sys/msg.h>
|
||||
.In sys/types.h
|
||||
.In sys/ipc.h
|
||||
.In sys/msg.h
|
||||
.Ft int
|
||||
.Fn msgrcv "int msqid" "void *msgp" "size_t msgsz" "long msgtyp" "int msgflg"
|
||||
.Sh 解説
|
||||
|
@ -193,6 +195,7 @@
|
|||
で
|
||||
.Dv IPC_NOWAIT
|
||||
が設定されている場合。
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr msgctl 3 ,
|
||||
.Xr msgget 3 ,
|
||||
|
@ -200,7 +203,7 @@
|
|||
.Sh バグ
|
||||
.Tn NetBSD
|
||||
と
|
||||
.Tn FreeBSD
|
||||
.Fx
|
||||
では、メッセージキューが削除された場合に使用すべきエラー値
|
||||
.Er EIDRM
|
||||
が定義されていません。また、利用可能なメッセージがない状態で
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
.\" $NetBSD: msgsnd.2,v 1.1 1995/10/16 23:49:24 jtc Exp $
|
||||
.\" $NetBSD: msgsnd.2,v 1.1 1995/10/16 23:49:24 jtc Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 1995 Frank van der Linden
|
||||
.\" All rights reserved.
|
||||
|
@ -28,27 +28,29 @@
|
|||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\" $Id: msgsnd.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\"
|
||||
.\"/
|
||||
.\" %FreeBSD: src/lib/libc/gen/msgsnd.3,v 1.9.2.5 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd November 24, 1997
|
||||
.Dt MSGSND 3
|
||||
.Os FreeBSD
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm msgsnd
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Nd メッセージキューにメッセージを送信
|
||||
.Sh 書式
|
||||
.Fd #include <sys/types.h>
|
||||
.Fd #include <sys/ipc.h>
|
||||
.Fd #include <sys/msg.h>
|
||||
.In sys/types.h
|
||||
.In sys/ipc.h
|
||||
.In sys/msg.h
|
||||
.Ft int
|
||||
.Fn msgsnd "int msqid" "void *msgp" "size_t msgsz" "int msgflg"
|
||||
.Sh 解説
|
||||
.Fn msgsnd
|
||||
関数は、
|
||||
.Fa msqid
|
||||
で指定されているメッセージキューからメッセージ
|
||||
で指定されているメッセージキューへメッセージ
|
||||
を送信します。
|
||||
.Fa msgp
|
||||
は、メッセージを含む構造体を指します。この構造体は、
|
||||
|
@ -122,9 +124,7 @@
|
|||
が現在の時刻に設定されます。
|
||||
.El
|
||||
.Sh 戻り値
|
||||
問題なく終了すると 0 が戻されます。問題が発生すると -1 が戻され、
|
||||
.Va errno
|
||||
がそのエラーを示すように設定されます。
|
||||
.Rv -std msgsnd
|
||||
.Sh エラー
|
||||
.Fn msgsnd
|
||||
は、以下のような場合にエラーとなります。
|
||||
|
@ -142,6 +142,9 @@
|
|||
が 0 より小さいか、
|
||||
.Va msg_qbytes
|
||||
より大きい場合。
|
||||
.Pp
|
||||
.Fa mtype
|
||||
が 0 より大きくない場合。
|
||||
.It Bq Er EACCES
|
||||
呼出しプロセスにメッセージキューの書込み権がない場合。
|
||||
.It Bq Er EAGAIN
|
||||
|
@ -155,10 +158,11 @@
|
|||
が正しいアドレスを指していない場合。
|
||||
.It Bq Er EINTR
|
||||
システムコールが、シグナルの配送によって割り込まれた場合。
|
||||
.El
|
||||
.Sh バグ
|
||||
.Tn NetBSD
|
||||
.Nx
|
||||
と
|
||||
.Tn FreeBSD
|
||||
.Fx
|
||||
は、メッセージキューが削除された場合に使用すべきエラー値
|
||||
.Er EIDRM
|
||||
を定義していません。
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)nice.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/nice.3,v 1.6.2.4 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
|
@ -38,13 +39,16 @@
|
|||
.Sh 名称
|
||||
.Nm nice
|
||||
.Nd プログラムのスケジューリング優先度の設定
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <unistd.h>
|
||||
.In unistd.h
|
||||
.Ft int
|
||||
.Fn nice "int incr"
|
||||
.Sh 解説
|
||||
.Bf -symbolic
|
||||
このインタフェースは、setpriority(2)
|
||||
このインタフェースは、
|
||||
.Xr setpriority 2
|
||||
で置き換えられました。
|
||||
.Ef
|
||||
.Pp
|
||||
|
@ -67,5 +71,4 @@
|
|||
.Fn nice
|
||||
は、
|
||||
.At v6
|
||||
で追加されました。
|
||||
.\"kuma 1999-11-12
|
||||
で登場しました。
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
.\" Hey Emacs! This file is -*- nroff -*- source.
|
||||
.\" $Id: pam_authenticate.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" $Id: pam_authenticate.3,v 1.5 2002-11-03 06:38:28 horikawa Exp $
|
||||
.\" %FreeBSD: src/contrib/libpam/doc/man/Attic/pam_authenticate.3,v 1.2.6.2 2001/06/11 15:28:11 markm Exp %
|
||||
.\" Copyright (c) Andrew G. Morgan 1996-7 <morgan@parc.power.net>
|
||||
.\" $FreeBSD$
|
||||
.TH PAM_AUTHENTICATE 3 "1996 Dec 9" "PAM 0.55" "App. Programmers' Manual"
|
||||
|
@ -37,13 +38,13 @@ pam_authenticate \-
|
|||
を呼び出して取得できます。
|
||||
|
||||
.br
|
||||
アプリケーション開発者は、認証モジュールが対話メカニズム(
|
||||
アプリケーション開発者は、認証モジュールが対話メカニズム (
|
||||
.BR pam_start "(3)"
|
||||
参照)
|
||||
でユーザにユーザ名を入力させることがあることに注意する必要があります。
|
||||
この場合は、ユーザプロンプトストリングを
|
||||
.BR PAM_USER_PROMPT
|
||||
アイテム(
|
||||
アイテム (
|
||||
.BR pam_set_item "(3)"
|
||||
参照)
|
||||
で設定できます。
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
.\" Hey Emacs! This file is -*- nroff -*- source.
|
||||
.\" $Id: pam_chauthtok.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" $Id: pam_chauthtok.3,v 1.5 2002-11-03 06:38:28 horikawa Exp $
|
||||
.\" %FreeBSD: src/contrib/libpam/doc/man/Attic/pam_chauthtok.3,v 1.2.6.2 2001/06/11 15:28:11 markm Exp %
|
||||
.\" Copyright (c) Andrew G. Morgan 1997 <morgan@parc.power.net>
|
||||
.\" $FreeBSD$
|
||||
.TH PAM_CHAUTHTOK 3 "1997 Jan 4" "PAM 0.55" "App. Programmers' Manual"
|
||||
|
@ -16,11 +17,12 @@ pam_chauthtok \- ǧ
|
|||
.B pam_chauthtok
|
||||
|
||||
.br
|
||||
この関数を使用すると、申請ユーザの認証トークン(パスワードなど)を
|
||||
この関数を使用すると、申請ユーザの認証トークン (パスワードなど) を
|
||||
更新できます。
|
||||
|
||||
.br
|
||||
アプリケーションでユーザをあらかじめ認証する必要はありません。認証は
|
||||
アプリケーションでユーザをあらかじめ認証すべきではありません。
|
||||
認証は
|
||||
.BR PAM
|
||||
フレームワークで必要に応じて実行されます。
|
||||
|
||||
|
@ -30,10 +32,11 @@ pam_chauthtok \- ǧ
|
|||
.BR PAM_CHANGE_EXPIRED_AUTHTOK
|
||||
を取ることが
|
||||
.I あります。
|
||||
この場合は、期限が切れた認証トークンの更新をフレームワークで行なう
|
||||
必要があります。この引数がないと、フレームワークはすべての設定済み認証
|
||||
メカニズムで新しいトークンを取得しようとします。呼び出しアプリケーション
|
||||
で、このようなスキームのタイプと番号の詳細に関わる必要はありません。
|
||||
この場合、期限が切れた認証トークンのみを、
|
||||
フレームワークが更新する必要があります。
|
||||
この引数がないと、フレームワークはすべての設定済み認証
|
||||
メカニズムに対し、新しいトークンを取得しようとします。
|
||||
型の詳細やスキーム数は、呼び出しアプリケーションに無関係であるべきです。
|
||||
|
||||
.SH 戻り値
|
||||
この関数から問題なく戻ると、
|
||||
|
@ -58,11 +61,11 @@ pam_chauthtok \- ǧ
|
|||
|
||||
.br
|
||||
.BR PAM_AUTHTOK_DISABLE_AGING
|
||||
- 1 つ以上の認証モジュールが、認証トークンの期限切れを認めませんでした。
|
||||
- 1 つ以上の認証モジュールが、認証トークンのエージングを認めませんでした。
|
||||
|
||||
.br
|
||||
.BR PAM_TRY_AGAIN
|
||||
- 1 つ以上の認証メカニズムで、今回のトークンの更新準備が整っていません。
|
||||
- 1 つ以上の認証メカニズムで、トークンの更新のための準備が今できていません。
|
||||
|
||||
.br
|
||||
一般的にはその他の戻り値も戻されます。エラーを示しているものとして
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
.\" Hey Emacs! This file is -*- nroff -*- source.
|
||||
.\" $Id: pam_fail_delay.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" $Id: pam_fail_delay.3,v 1.5 2002-11-03 06:38:28 horikawa Exp $
|
||||
.\" %FreeBSD: src/contrib/libpam/doc/man/Attic/pam_fail_delay.3,v 1.2.6.2 2001/06/11 15:28:11 markm Exp %
|
||||
.\" Copyright (c) Andrew G. Morgan 1997 <morgan@parc.power.net>
|
||||
.\" $FreeBSD$
|
||||
.TH PAM_FAIL_DELAY 3 "1997 Jan 12" "PAM 0.56" "Programmers' Manual"
|
||||
|
@ -10,7 +11,7 @@ pam_fail_delay \-
|
|||
.SH 書式
|
||||
.B #include <security/pam_appl.h>
|
||||
.br
|
||||
or,
|
||||
または
|
||||
.br
|
||||
.B #include <security/pam_modules.h>
|
||||
.sp
|
||||
|
@ -18,21 +19,23 @@ or,
|
|||
.sp 2
|
||||
.SH 解説
|
||||
.br
|
||||
申請ユーザのアクセスをスキームが拒否する場合にかかる時間を悪用し、
|
||||
認証スキームにアタックできることがあります。タイムアウトが
|
||||
申請ユーザのアクセスをスキームが拒否する場合にかかる時間を悪用することで、
|
||||
しばしば認証スキームに攻撃可能です。
|
||||
タイムアウトが
|
||||
.I 短い
|
||||
場合でも、ディクショナリを
|
||||
.I 乱用
|
||||
してアタックすることが可能なことがあります。アタッカが
|
||||
自動化されたプロセスを使用し、考えられるパスワードをすべて試してシステムに
|
||||
アクセスしようとするのです。それぞれのエラーにかかる時間を計測できる場合
|
||||
(エラーの本質を示す)、アタッカは認証プロセスに関する重要な情報を
|
||||
入手できます。後者のアタックでは、重要な情報の
|
||||
.I 保護チャンネル
|
||||
を構成する手続き型遅延が利用されます。
|
||||
場合、
|
||||
.I 腕力による
|
||||
辞書攻撃が可能な場合があります。
|
||||
自動処理により考えられるパスワードをすべて試して、攻撃者がシステムに
|
||||
アクセスしようとするのです。
|
||||
一方、個々の失敗が (失敗の性質を示すような) 計測可能な時間を費す場合、
|
||||
認証処理に関する有用な情報を攻撃者が取得可能です。
|
||||
後者の攻撃は、重要な情報の
|
||||
.I 隠れ通信路 (covert channel)
|
||||
である、手続き遅延を使用することです。
|
||||
|
||||
.br
|
||||
このようなアタックを最低限に抑えるには、エラーとなった認証プロセスで
|
||||
このような攻撃の効果を最低限に抑えるには、エラーとなった認証プロセスで
|
||||
ランダムな遅延を導入することが有効です。
|
||||
.B PAM
|
||||
には、ランダムな遅延を導入する機能があります。遅延は、
|
||||
|
@ -52,9 +55,10 @@ or,
|
|||
.I usec
|
||||
引数) を指定できます。この関数は、ユーザによるサービスの再申請を
|
||||
遅らせることが重要となるサービスアプリケーションや認証モジュールから呼び
|
||||
出せます。遅延の長さは必要なときに算出され、
|
||||
出せます。遅延の長さは必要なときに算出されます。
|
||||
長さは、
|
||||
.I 最大
|
||||
要求値からランダムに分散されます。
|
||||
要求値に対する擬似ガウシアン分布になります。
|
||||
最大要求値の上下 25% までに分散されるのです。
|
||||
|
||||
.br
|
||||
|
@ -62,13 +66,13 @@ or,
|
|||
や
|
||||
.BR pam_chauthtok "(3)"
|
||||
から戻る場合、問題の有無に関係なく、新しい要求遅延は
|
||||
デフォルト値のゼロにリセットされます。
|
||||
デフォルト値の 0 にリセットされます。
|
||||
|
||||
.SH 例
|
||||
.br
|
||||
.B ログイン
|
||||
アプリケーションで約 3 秒間のエラー遅延が必要となる場合、
|
||||
このアプリケーションには以下のようなコードが含まれます。
|
||||
このアプリケーションには以下のコードが含まれます。
|
||||
.sp
|
||||
.br
|
||||
.B " pam_fail_delay(pamh, 3000000 /* micro-seconds */ );"
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
.\" Hey Emacs! This file is -*- nroff -*- source.
|
||||
.\" $Id: pam_open_session.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" $Id: pam_open_session.3,v 1.5 2002-11-03 06:38:28 horikawa Exp $
|
||||
.\" %FreeBSD: src/contrib/libpam/doc/man/Attic/pam_open_session.3,v 1.2.6.2 2001/06/11 15:28:11 markm Exp %
|
||||
.\" Copyright (c) Andrew G. Morgan 1997 <morgan@parc.power.net>
|
||||
.\" $FreeBSD$
|
||||
.TH PAM_OPEN_SESSION 3 "1997 Jan 4" "PAM 0.55" "App. Programmers' Manual"
|
||||
|
@ -29,15 +30,15 @@ PAM
|
|||
で証明書を与えられた後で呼び出してください。
|
||||
|
||||
.br
|
||||
セッションの初期化に関連した関数には、システムを監視するための
|
||||
ログ作成とディレクトリ(ユーザのホームディレクトリなど)の
|
||||
セッションの初期化に関連した関数には、システム監視のための
|
||||
ログ作成とディレクトリ (ユーザのホームディレクトリなど) の
|
||||
マウントがあります。アプリケーションでこれに関わることはありません。
|
||||
アプリケーションの
|
||||
.I 有効な
|
||||
.I 実効
|
||||
uid (
|
||||
.BR geteuid "(2)"
|
||||
)
|
||||
に、このようなタスクを実行する権利が必要であることに注意してください。
|
||||
に、このような処理に十分な権限を持つことが必要であることに注意してください。
|
||||
|
||||
.TP
|
||||
.B pam_close_session
|
||||
|
@ -50,14 +51,15 @@ uid (
|
|||
と同じアプリケーションにこの関数を配置する必要はありません。
|
||||
|
||||
.br
|
||||
この関数は、
|
||||
典型的には、この関数は、
|
||||
.BR pam_open_session
|
||||
のアクションを取り消します。
|
||||
つまり、ユーザセッションの終了に関わる監視情報を記録し、ユーザの
|
||||
ホームディレクトリのマウントを解除します。十分な権利があることは別にして、
|
||||
ホームディレクトリのマウントを解除します。
|
||||
十分な権限があることは別にして、
|
||||
セッションの終了の詳細に呼び出しアプリケーションが関わるこはありません。
|
||||
しかし、この呼び出しから戻るときにユーザのためにアクションを起こすことは
|
||||
止めてください。
|
||||
一方、この呼び出しから戻り次第、当該ユーザの権限での動作を止めることは、
|
||||
良いプログラミングスタイルです。
|
||||
|
||||
.SH 戻り値
|
||||
このセッション管理関数で問題が発生しなかった場合は、
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
.\" Hey Emacs! This file is -*- nroff -*- source.
|
||||
.\" $Id: pam_setcred.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" $Id: pam_setcred.3,v 1.5 2002-11-03 06:38:28 horikawa Exp $
|
||||
.\" %FreeBSD: src/contrib/libpam/doc/man/Attic/pam_setcred.3,v 1.2.6.2 2001/06/11 15:28:11 markm Exp %
|
||||
.\" Copyright (c) Andrew G. Morgan 1996,1997 <morgan@parc.power.net>
|
||||
.\" $FreeBSD$
|
||||
.TH PAM_SETCRED 3 "1997 July 6" "PAM 0.58" "App. Programmers' Manual"
|
||||
|
@ -20,7 +21,7 @@ pam_setcred \-
|
|||
.BR pam_open_session "(3)"
|
||||
で開く前に呼び出してください。
|
||||
|
||||
証明書には、グループメンバーシップ、チケットファイル、PAM 環境変数など、
|
||||
証明書には、グループメンバシップ、チケットファイル、PAM 環境変数など、
|
||||
多くの形式があることに注意してください。このため、この関数を
|
||||
呼び出す前にユーザの基本的な ID をアプリケーションで確立することが
|
||||
重要になります。デフォルトの
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
.\" Hey Emacs! This file is -*- nroff -*- source.
|
||||
.\" $Id: pam_start.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" $Id: pam_start.3,v 1.5 2002-11-03 06:38:28 horikawa Exp $
|
||||
.\" %FreeBSD: src/contrib/libpam/doc/man/Attic/pam_start.3,v 1.2.6.2 2001/06/11 15:28:11 markm Exp %
|
||||
.\" Copyright (c) Andrew G. Morgan 1996-7 <morgan@parc.power.net>
|
||||
.\" $FreeBSD$
|
||||
.TH PAM_START 3 "1997 Feb 15" "PAM 0.56" "Application Programmers' Manual"
|
||||
|
@ -21,14 +22,14 @@ pam_start, pam_end \- PAM
|
|||
ライブラリを初期化し、特定の
|
||||
.IR サービス
|
||||
名でアプリケーション
|
||||
を確認します。インタフェースを初期化するときにユーザ名が分かっていない
|
||||
を識別します。インタフェースを初期化するときにユーザ名が分かっていない
|
||||
場合は、
|
||||
.IR ユーザ
|
||||
名を
|
||||
.IR NULL
|
||||
にできます。
|
||||
.IR conv
|
||||
引数では、対話構造をライブラリに渡せます
|
||||
引数で、対話構造をライブラリに渡せます
|
||||
(これとその他の構造の詳細については、
|
||||
.IR PAM
|
||||
アプリケーションの
|
||||
|
@ -47,12 +48,12 @@ pam_start, pam_end \- PAM
|
|||
引数は、ライブラリからアプリケーションに戻された最新の値を渡します。
|
||||
これは、ライブラリの終了方法を示します。この引数は戻り値を運ぶ他に、
|
||||
.IR PAM_DATA_SILENT
|
||||
と論理和を取り、モジュールがこの呼び出しを重大に扱わないことを
|
||||
示すことがあります。
|
||||
と論理和を取ることで、
|
||||
モジュールがこの呼び出しをあまり重大に扱わないよう指示可能です。
|
||||
一般的には、現在のライブラリの終了処理が
|
||||
.IR fork "(2)"
|
||||
を実行したプロセスで実行されること、
|
||||
および現行プロセスのスペース以外に存在するもの(ファイルなど)
|
||||
および現行プロセスの空間外に存在するもの (ファイルなど)
|
||||
を親がクリーンアップすることを示します。
|
||||
|
||||
.SH 戻り値
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
.\" Hey Emacs! This file is -*- nroff -*- source.
|
||||
.\" ripped off from Rick Faith's getgroups man page
|
||||
.\" $Id: pam_strerror.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
|
||||
.\" $Id: pam_strerror.3,v 1.5 2002-11-03 06:38:28 horikawa Exp $
|
||||
.\" %FreeBSD: src/contrib/libpam/doc/man/Attic/pam_strerror.3,v 1.2.6.2 2001/06/11 15:28:11 markm Exp %
|
||||
.\" Copyright (c) Andrew G. Morgan 1996-7 <morgan@parc.power.net>
|
||||
.\" $FreeBSD$
|
||||
.TH PAM_STRERROR 3 "1997 Feb 15" "PAM 0.56" "Programmers' Manual"
|
||||
|
|
|
@ -30,38 +30,57 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)psignal.3 8.2 (Berkeley) 2/27/95
|
||||
.\" %FreeBSD: src/lib/libc/gen/psignal.3,v 1.10.2.4 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd February 27, 1995
|
||||
.Dt PSIGNAL 3
|
||||
.Os BSD 4.2
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm psignal ,
|
||||
.Nm strsignal ,
|
||||
.Nm sys_siglist ,
|
||||
.Nm sys_signame
|
||||
.Nd システムシグナルメッセージ
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <signal.h>
|
||||
.In signal.h
|
||||
.Ft void
|
||||
.Fn psignal "unsigned sig" "const char *s"
|
||||
.Vt extern const char * const sys_siglist[];
|
||||
.Vt extern const char * const sys_signame[];
|
||||
.Vt extern const char * const sys_siglist[] ;
|
||||
.Vt extern const char * const sys_signame[] ;
|
||||
.In string.h
|
||||
.Ft "char *"
|
||||
.Fn strsignal "int sig"
|
||||
.Sh 解説
|
||||
関数
|
||||
.Fn psignal
|
||||
関数は、シグナル番号
|
||||
.Fa sig
|
||||
の説明メッセージ文字列を特定し、標準エラーに書き込みます。
|
||||
と
|
||||
.Fn strsignal
|
||||
は指定されたシグナル番号の説明メッセージ文字列を特定します。
|
||||
.Pp
|
||||
.Fn strsignal
|
||||
関数は、シグナル番号引数
|
||||
.Fa sig
|
||||
を取り、対応するメッセージ文字列へのポインタを返します。
|
||||
.Pp
|
||||
.Fn psignal
|
||||
関数は、シグナル番号引数
|
||||
.Fa sig
|
||||
を取り、標準エラーへ書き込みます。
|
||||
引数
|
||||
.Fa s
|
||||
がヌルではなく、ナル文字を指していない場合、
|
||||
が
|
||||
.Dv NULL
|
||||
ではなく、ヌル文字を指していない場合、
|
||||
メッセージ文字列の前に
|
||||
.Fa s
|
||||
が標準エラーファイル記述子に書き込まれ、
|
||||
その直後にコロンとスペースが続きます。
|
||||
シグナル番号が認識されない場合
|
||||
.Pq Xr sigaction 2 ,
|
||||
.Pq Xr sigaction 2
|
||||
文字列
|
||||
.Dq "Unknown signal
|
||||
が書き込まれます。
|
||||
|
@ -83,7 +102,8 @@
|
|||
の文字列数が含まれています。
|
||||
.Sh 関連項目
|
||||
.Xr sigaction 2 ,
|
||||
.Xr perror 3
|
||||
.Xr perror 3 ,
|
||||
.Xr strerror 3
|
||||
.Sh 歴史
|
||||
.Fn psignal
|
||||
関数は、
|
||||
|
|
|
@ -30,16 +30,19 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)siginterrupt.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/siginterrupt.3,v 1.6.2.4 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
.Dt SIGINTERRUPT 3
|
||||
.Os BSD 4.3
|
||||
.Os
|
||||
.Sh 名称
|
||||
.Nm siginterrupt
|
||||
.Nd シグナルがシステムコールを中断できるようにする
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <signal.h>
|
||||
.In signal.h
|
||||
.Ft int
|
||||
.Fn siginterrupt "int sig" "int flag"
|
||||
.Sh 解説
|
||||
|
@ -51,7 +54,7 @@
|
|||
システムコールの再開始は、
|
||||
.Bx 4.2
|
||||
以降のデフォルトの動作であり、
|
||||
.Tn FreeBSD
|
||||
.Fx
|
||||
での
|
||||
.Xr signal 3
|
||||
のデフォルトの
|
||||
|
@ -64,7 +67,7 @@
|
|||
システムコールは \-1 で返り、グローバル変数
|
||||
.Va errno
|
||||
は
|
||||
.Dv EINTR
|
||||
.Er EINTR
|
||||
に設定されます。
|
||||
データの転送を開始した中断されたシステムコールは、
|
||||
実際に転送されたデータの量を返します。
|
||||
|
@ -98,8 +101,15 @@
|
|||
システムコールの拡張を使用しています。
|
||||
ですから、後方互換性が必要な場合、これは使用しないでください。
|
||||
.Sh 戻り値
|
||||
値 0 は、呼び出しが成功したことを示します。
|
||||
値 \-1 は無効なシグナル番号が与えられたことを示します。
|
||||
.Rv -std siginterrupt
|
||||
.Sh エラー
|
||||
.Fn siginterrupt
|
||||
呼び出しは、次の場合に失敗します:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa sig
|
||||
は有効なシグナル番号ではありません。
|
||||
.El
|
||||
.Sh 関連項目
|
||||
.Xr sigaction 2 ,
|
||||
.Xr sigblock 2 ,
|
||||
|
@ -110,4 +120,4 @@
|
|||
.Fn siginterrupt
|
||||
関数は
|
||||
.Bx 4.3
|
||||
で現れました。
|
||||
で登場しました。
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" @(#)sigsetops.3 8.1 (Berkeley) 6/4/93
|
||||
.\" %FreeBSD: src/lib/libc/gen/sigsetops.3,v 1.4.2.2 2001/12/14 18:33:51 ru Exp %
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.Dd June 4, 1993
|
||||
|
@ -42,8 +43,10 @@
|
|||
.Nm sigdelset ,
|
||||
.Nm sigismember
|
||||
.Nd シグナルセットを操作
|
||||
.Sh ライブラリ
|
||||
.Lb libc
|
||||
.Sh 書式
|
||||
.Fd #include <signal.h>
|
||||
.In signal.h
|
||||
.Ft int
|
||||
.Fn sigemptyset "sigset_t *set"
|
||||
.Ft int
|
||||
|
|
Loading…
Reference in a new issue