remaining updates to 4.2-20010112-STABLE

Submitted by:SUZUKI Koichi <metal@vc-net.ne.jp>
Reviewed by:HIRATA Tadashi <heita@mb.infoweb.ne.jp>
This commit is contained in:
Kazuo Horikawa 2001-03-23 21:32:34 +00:00
parent c9c0c2bc1e
commit 475f484887
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=9055
13 changed files with 272 additions and 261 deletions

View file

@ -36,7 +36,7 @@
.Os BSD 4
.Sh 名称
.Nm open
.Nd 読取りまたは書込み用にファイルを開くかまたは作成する
.Nd 読取りまたは書込み用にファイルをオープンする、または作成する
.Sh ライブラリ
.Lb libc
.Sh 書式
@ -45,18 +45,20 @@
.Fn open "const char *path" "int flags" "..."
.Sh 解説
.Fa path
によって指定されるファイル、引数
によって指定されるファイル、引数
.Fa flags
によって指定されたように読取りまたは書込み (またはその両方) 用に開かれ、
そのファイル記述子は呼び出し元プロセスに返されます。
によって指定されたように読取りまたは書込み
(またはその両方) 用にオープンし、
そのファイル記述子を呼び出し元プロセスに返します。
ファイルが存在しない場合にはファイルを
作成するように、
.Fa flags
引数で、
引数で指示できます
.Dv ( O_CREAT
フラグを指定することによって) ファイルが存在しない場合にファイルを
作成するように指示できます。
フラグを指定する)。
この場合、
.Nm
は 3 番目の引数
は 3 番目の引数
.Fa "mode_t mode"
が必要であり、ファイルは
.Xr chmod 2
@ -72,20 +74,21 @@
で作成されます。
.Pp
.Bd -literal -offset indent -compact
O_RDONLY 読取り専用で開く
O_WRONLY 書込み専用で開く
O_RDWR 読取りと書込み用に開く
O_NONBLOCK 開くときにブロックしない
O_RDONLY 読取り専用でオープン
O_WRONLY 書込み専用でオープン
O_RDWR 読取りと書込み用にオープン
O_NONBLOCK オープンするときにブロックしない
O_APPEND 書込みのたびに末尾に追加する
O_CREAT ファイルが存在しない場合、作成する
O_TRUNC サイズを 0 に切り捨てる
O_EXCL ファイルを作成し、存在する場合はエラー
O_EXCL 作成するファイルが既に存在した場合、エラーとする
O_SHLOCK 共有ロックを自動的に取得する
O_EXLOCK 排他的ロックを自動的に取得する
.Ed
.Pp
.Dv O_APPEND
を設定してファイルを開くと、ファイルへ書込むごとに末尾に追加されます。
を設定してファイルをオープンすると、
ファイルへの書込みはすべてファイルの末尾に追加されます。
.Dv O_TRUNC
が指定されていてファイルが存在する場合、ファイルは長さ 0 に
切り捨てられます。
@ -99,29 +102,28 @@ O_EXLOCK
実現できます。
.Dv O_EXCL
が設定されていてパス名の最後の構成要素がシンボリックリンクの場合、
シンボリックリンクが存在しない名前を指していても
たとえシンボリックリンクが存在しない名前を指していたとしても
.Fn open
は処理に失敗します。
.Dv O_NONBLOCK
フラグが指定されていて
.Fn open
呼び出しの結果が何らかの理由でプロセスがブロックされると (たとえば、
ダイアルアップ回線でのキャリアの待機)、
呼び出しの結果、プロセスが何らかの理由でブロックされると (たとえば、
ダイアルアップ回線でキャリアを待っている場合)、
.Fn open
は即座に戻ります。プロセスが開いたファイルに
は即座に戻ります。プロセスがオープンしたファイルに
最初に入出力しようとしたとき、プロセスはブロックします
(現時点では実装されていません)。
.Pp
ファイルを開くときに、共有ロックについては
ファイルをオープンするときに、
.Xr flock 2
を使ったロックを得るには、共有ロックについては
.Dv O_SHLOCK
排他的ロックについては
.Dv O_EXLOCK
設定することによって
.Xr flock 2
によってロックが得られます。
を設定します。
.Dv O_CREAT
でファイルを作成する場合、ロックについての要求は処理に失敗すること
でファイルを作成する場合、ロック要求が失敗すること
はありません (ただし、下層にあるファイルシステムが
ロックをサポートしている場合に限ります)。
.Pp
@ -131,19 +133,19 @@ O_EXLOCK
処理に失敗すると -1 を返します。ファイル内の現在の位置をマークする
ファイルポインタはファイルの先頭に設定されます。
.Pp
新しいファイルが作成されるとき、そのファイルにはそれが含まれている
ディレクトリのグループが与えられます。
新しいファイルが作成される場合、そのグループは
ファイルが含まれるディレクトリのグループに設定されます。
.Pp
新しい記述子は
.Xr execve 2
システムコールを通じて開いたままに設定されます。
システムコールを通じてオープンされたままであるように設定されます。
.Xr close 2
.Xr fcntl 2
を参照してください。
.Pp
システムには、1 つのプロセスによって同時に開けるファイル記述子数に
制限があります。
システムには、1 つのプロセスによって同時にオープンできる
ファイル記述子数に制限があります。
.Xr getdtablesize 2
は現在のシステム制限を返します。
.Pp
@ -174,7 +176,7 @@ O_EXLOCK
.Va errno
が設定されます。
.Sh エラー
指定のファイルは次の場合を除いて開かれます。
指定のファイルは次の場合を除いてオープンされます。
.Bl -tag -width Er
.It Bq Er ENOTDIR
パスの構成要素中にディレクトリ以外のものが含まれています。
@ -182,12 +184,13 @@ O_EXLOCK
パス名の構成要素が 255 文字を越えているか、
またはパス名全体が 1023 文字を越えています。
.It Bq Er ENOENT
指定されたファイルが存在せず、
.Dv O_CREAT
が設定されてなく、指定されたファイルが存在しません。
も設定されていません。
.It Bq Er ENOENT
存在しなければならないパス名の構成要素が存在しません。
.It Bq Er EACCES
前置パス名の構成要素について検索許可が拒否されています。
指定されたパスには、検索が許可されていないディレクトリが含まれています。
.It Bq Er EACCES
要求されたパーミッション (読取りまたは書込み用、または両方) が
指定のフラグに拒否されています。
@ -198,22 +201,24 @@ O_EXLOCK
.It Bq Er ELOOP
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
.It Bq Er EISDIR
指定のファイルがディレクトリであり、引数が書込み用に開くことを
指定しています。
指定のファイルがディレクトリであり、これを書込み用に
オープンするように引数が指定されています。
.It Bq Er EROFS
指定されたファイルは読取り専用ファイルシステム上にあり、
そのファイルを修正しようとしています。
.It Bq Er EMFILE
プロセスは、開いたファイル記述子に関する制限に達しています。
プロセスは、すでにオープンできるファイル記述子に関する
制限に達しています。
.It Bq Er ENFILE
システムファイルテーブルが満杯です。
.It Bq Er ENXIO
指定のファイルはキャラクタ型特殊ファイルまたはブロック型特殊
ファイルであり、この特殊ファイルに対応するデバイスは存在していません。
ファイルであり、この特殊ファイルに結び付けられたデバイスは
存在していません。
.It Bq Er ENXIO
指定されたファイルは FIFO パイプで、どのプロセスからも
読取り用にオープンされていないにも関らず、
書込み用にオープンしようとしました。
これを書込み用にオープンしようとしました。
.It Bq Er EINTR
.Fn open
操作がシグナルによって割り込みされました。
@ -254,9 +259,9 @@ O_EXLOCK
.Dv O_CREAT
用の inode を割当て中に入出力エラーが発生しました。
.It Bq Er ETXTBSY
ファイルは実行中の純粋な手続き (共有テキスト) ファイルであり
ファイルは純粋な手続き (共有テキスト) ファイルで、
.Fn open
呼び出しは書込みアクセスを要求しています。
が書込みアクセスを要求しましたが、ファイルは実行中です。
.It Bq Er EFAULT
.Fa path
は、プロセスに割り当てられたアドレス空間の範囲外を指しています。
@ -266,13 +271,13 @@ O_EXLOCK
.Dv O_EXCL
が指定されていて、ファイルが存在します。
.It Bq Er EOPNOTSUPP
ソケットを開こうとしました (現時点では実装されていません)。
ソケットをオープンしようとしました (現時点では実装されていません)。
.It Bq Er EINVAL
.Dv O_RDONLY ,
.Dv O_WRONLY
および
.Dv O_RDWR
の不正な組合わせで記述子を開こうとしました。
の不正な組合わせで記述子をオープンしようとしました。
.El
.Sh 関連項目
.Xr chmod 2 ,

View file

@ -51,7 +51,7 @@
.Fn pathconf
関数と
.Fn fpathconf
関数は、構成可能なシステム限界の現在値、またはパス名または
関数は、構成可能なシステム限界の現在値、またはパス名
ファイル記述子に対応するオプション変数を
アプリケーションが判定する方法を提供します。
.Pp
@ -76,9 +76,9 @@
.It Li _PC_LINK_MAX
最大のファイルリンクカウント。
.It Li _PC_MAX_CANON
端末標準入力回線の最大バイト数。
端末の標準モード入力待ち行列の最大バイト数。
.It Li _PC_MAX_INPUT
端末入力待ち行列内空間で利用できる最小の最大バイト数。
端末入力待ち行列内空間で利用できる最大バイト数の最小値
.It Li _PC_NAME_MAX
ファイル名の最大バイト数。
.It Li _PC_PATH_MAX
@ -86,14 +86,13 @@
.It Li _PC_PIPE_BUF
パイプに自動的に書込まれる最大バイト数。
.It Li _PC_CHOWN_RESTRICTED
該当する特権が
.Xr chown 2
システムコールについて要求される場合は 1 を
システムコールを実行するのに、適切な特権が必要な場合は 1 を
返し、そうでない場合は 0 を返します。
.It Li _PC_NO_TRUNC
KERN_NAME_MAX より長いファイル名切り捨てられる場合は 1 を返します。
KERN_NAME_MAX より長いファイル名切り捨てられる場合は 1 を返します。
.It Li _PC_VDISABLE
値を無効にする終了文字を返します。
端末制御文字を無効にするための値を返します。
.El
.Sh 戻り値
.Fn pathconf
@ -101,8 +100,9 @@ KERN_NAME_MAX
.Fn fpathconf
の呼び出しが正常に完了しない場合は -1 が返され、
.Va errno
が適宜設定されます。
変数がシステム内に限界のない機能に対応していると、-1 が返され、
が適切な値に設定されます。
変数に結び付けられた機能がシステム内に限界を持たないとき、
-1 が返され、
.Va errno
は修正されません。
それ以外の場合、現在の変数値が返されます。
@ -119,7 +119,7 @@ KERN_NAME_MAX
.Fa name
引数の値が無効です。
.It Bq Er EINVAL
対応するファイルと変数名の対応付けは実装されていません。
このファイルとこの変数との結び付きは、実装されていません。
.El
.Pp
.Fn pathconf
@ -133,7 +133,7 @@ KERN_NAME_MAX
.It Bq Er ENOENT
指定されたファイルが存在しません。
.It Bq Er EACCES
前置パス名の構成要素について検索許可が拒否されています。
指定されたパスには、検索が許可されていないディレクトリが含まれています。
.It Bq Er ELOOP
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
.It Bq Er EIO

View file

@ -37,7 +37,7 @@
.Os BSD 4
.Sh 名称
.Nm pipe
.Nd プロセス間通信について記述子のペアを作成する
.Nd プロセス間通信のための記述子のペアを作成する
.Sh ライブラリ
.Lb libc
.Sh 書式
@ -51,35 +51,36 @@
.Em pipe
を作成し、ペアのファイル記述子を割り当てます。
.Pp
慣習により 1 番めの記述子が通常、パイプの
.Em read end
として使用され、2 番めの記述子が通常、
.Em write end
ので、
慣習により、通常は 1 番めの記述子がパイプの
.Em 読取り側
として使用され、2 番めの記述子が
.Em 書込み側
として使用されます。ですので、
.Fa fildes[1]
に書込まれたデータが
.Fa fildes[0]
に現れます (すなわち、
.Fa fildes[0]
から読取れます)。
これによって 1 つのプログラムの出力が別のプログラムに送信できます。
ソースの標準出力はパイプの書込み終端であるようにセットアップされ
シンクの標準入力はパイプの読取り終端であるようにセットアップされます
パイプ自体は、すべての対応する記述子が閉じるまで持続します。
これを使えば 1 つのプログラムの出力を別のプログラムに送信できます。
送信側の標準出力をパイプの書込み側としてセットアップし
受信側の標準入力をパイプの読取り側としてセットアップしてください
パイプ自体は、すべての対応する記述子がクローズされるまで持続します。
.Pp
1 端が閉じているパイプは
端が閉じているパイプは
.Em widowed
(相手を失った) と見なされます。このようなパイプに書込みをすると、
書込みプロセスは
.Dv SIGPIPE
信号を受信します。読取り側にファイルの終了を伝える方法は、
書込み側のパイプを閉じてしまうしかありません。
読取り側がバッファに入っているデータを使用した後、相手を失ったパイプを
シグナルを受信します。読取り側にファイルの終了を伝える方法は、
書込み側のパイプをクローズするしかありません。
読取り側がバッファに入っているデータを使い切った後、相手を失ったパイプを
読取ると 0 カウントが返されます。
.Pp
実装したパイプのこの双方向という性質は古いシステムには移植できないので、
一方向にパイプを使用する
ときは、従来の方法で端点を使用する慣習を使用することをお勧めします。
このパイプの実装における双方向という性質は、
古いシステムと互換性がありません。
ですので、パイプを一方向にしか使用しないときには、
従来の方法で端点を使用するこの慣習に従うことをお勧めします。
.Sh 戻り値
パイプの作成が正常に完了すると、0 を返します。そうでない場合は -1 が返され、
エラーを示すために変数

View file

@ -44,11 +44,11 @@
.Sh 解説
.Fn poll
はファイル記述子の集合を調査して、
それらのいずれか入出力の準備ができているか否かを調べます。
それらのいずれか入出力の準備ができているか否かを調べます。
.Fa fds
引数は
.Aq Pa poll.h
定義された pollfd 配列を指す
定義された pollfd 配列を指す
ポインタ (後述) です。
.Fa nfds
引数は
@ -66,11 +66,11 @@ struct pollfd {
構造体のフィールドは次のとおりです:
.Bl -tag -width XXXrevents
.It fd
ポールするファイル記述子。もし fd が -1 なら
調査するファイル記述子。もし fd が -1 なら
.Fa revents
はクリアされ (0 に設定)、pollfd はチェックされません。
.It events
ポールするイベント (後述)。
調査するイベント (後述)。
.It revents
発生したイベント (後述)。
.El
@ -118,10 +118,12 @@ POLLOUT
.Pp
.Fa timeout
が 0 でも INFTIM (-1) でもない場合、
いずれかのファイル記述子が準備完了になるのを
待機する最大インターバル (ミリ秒単位) を指定します。
この値はいずれかのファイル記述子が準備完了になるのを
待機する最大インターバル (ミリ秒単位) す。
.Fa timeout
が INFTIM (-1) の場合、ポールは永久にブロックします。
が INFTIM (-1) の場合、
.Fn poll
は永久にブロックします。
.Fa timeout
が 0 の場合
.Fn poll
@ -138,14 +140,14 @@ POLLOUT
.Fa fds
配列は変更されません。
.Sh 互換性
この実装は、ある指定のファイル記述子においては
この実装は、ファイル記述子によって
.Fn poll
がエラー付きで戻らない場合があるという点で、
がエラーにならないという点で、
過去のものと異なっています。
過去の実装ではこのようなエラー付きで戻るであろう場合
過去の実装においてエラーになるであろう場合
(たとえば
.Xr revoke 2
された記述子を検査しようとした場合)では、この実装は代わりに
された記述子を検査しようとした場合)、この実装は代わりに
.Fa events
ビットマスクを
.Fa revents
@ -161,9 +163,9 @@ POLLOUT
は、プロセスに割り当てられたアドレス空間の範囲外を指しています。
.It Bq Er EINTR
時間切れになる前に、そして選択されたイベントが発生する前に
シグナルが配信されました。
シグナルを受信しました。
.It Bq Er EINVAL
指定の時間制限が負です
時間制限として負の値が指定されました
.El
.Sh 関連項目
.Xr accept 2 ,

View file

@ -89,15 +89,15 @@
.Fa samples
に不正なアドレスが入っている場合、
.Fn profil
は -1 を返し、プロファイルは終了し
は -1 を返し、プロファイルは終了し
.Va errno
は適宜設定されます。そうでない場合、
設定されます。そうでない場合、
.Fn profil
は 0 を返します。
.Sh ファイル
.Bl -tag -width /usr/lib/gcrt0.o -compact
.It Pa /usr/lib/gcrt0.o
プロファイ C ランタイムスタートアップファイル
プロファイリング用の C ランタイムスタートアップファイル
.It Pa gmon.out
プロファイル出力ファイルの従来の名前
.El

View file

@ -24,45 +24,45 @@
他のプロセス
.\".Em traced
(トレース
されるプロセス)を制御できます。
ほとんどの場合、トレースされるプロセスは正常に実行されますが、
シグナルを受信すると
されるプロセス) を制御できます。
ほとんどの場合、トレースされるプロセスは正常に実行されます
ただし、トレースされるプロセスはシグナルを受信すると
.Po
.Xr sigaction 2
を参照
.Pc
停止します。トレースプロセスは、
.Pc
停止します。トレースするプロセスは、
.Xr wait 2
または
.Dv SIGCHLD
シグナルの配信によって認識し、停止されたプロセスの状態を調査し、
適宜それが終了するかまたは継続するようにします。
シグナルによってこれを検知し、停止されたプロセスの状態を調査し
それを終了させるか、または適切な形で実行を継続させます。
.Fn ptrace
は、これらすべてが行なわれるメカニズムです。
は、これらすべてを制御するメカニズムです。
.Pp
.Fa request
引数は、どの操作が実行中であるかを指定します。
残りの引数の意味は操作で決まりますが、
引数は、どの操作を実行するかを指定します。
残りの引数の意味は操作によって異なります。
後述する 1 つの特殊なケースを除いて、
.Fn ptrace
呼び出しはすべてトレースするプロセスによって行われ、
.Fa pid
引数トレースされるプロセスのプロセス ID を指定します。
引数トレースされるプロセスのプロセス ID を指定します。
.Fa request
は次のものにできます。
.Bl -tag -width 12n
.It Dv PT_TRACE_ME
この要求は、トレースされているプロセスが使用する唯一の要求です。
この要求は、トレースされるプロセスが使用する唯一の要求です。
この要求は、
プロセスがその親によってトレースされると予想されることを宣言します。
プロセスがその親によってトレースされることを宣言します。
他の引数はすべて無視され
ます (親プロセスが子プロセスをトレースすると予想できない場合は、
それはおそらく結果によって
混乱されています。トレースされているプロセスが停止すると、このプロセスは、
ます (親プロセスが子プロセスをトレースない場合は、
かなり混乱した結果になります。
トレースされるプロセスが停止すると、このプロセスは、
.Eo \&
.Fn ptrace
.Ec \&
によってしか継続するようにできません)。プロセスがこの要求を使用し、
によってしか実行を継続できません)。プロセスがこの要求を使用し、
.Xr execve 2
またはそれに組み込まれているルーチン
.Po
@ -70,11 +70,11 @@
.Xr execv 3
.Pc
を呼び出した場合、
そのプロセスは新しいイメージの最初の指示を実行する前に停止します。
また、実行中の実行可能モジュールについて
そのプロセスは新しいイメージの最初の命令を実行する前に停止します。
また、実行される実行可能モジュールの
setuid または setgid ビットは無視されます。
.It Dv PT_READ_I , Dv PT_READ_D
これらの要求は、トレースされプロセスのアドレス空間から 1 つの
これらの要求は、トレースされプロセスのアドレス空間から 1 つの
.Li int
データを読み取ります。従来、
.Fn ptrace
@ -87,9 +87,10 @@ setuid
.Fx
システムでは、これらの 2 つの要求は完全に同一です。
.Fa addr
引数が、読み取りが行われる (トレースされプロセスの仮想アドレス空間内の)
引数が、読み取りが行われる (トレースされプロセスの仮想アドレス空間内の)
アドレスを指定します。
このアドレスはどのような整列制約を満たす必要はありません。読み取られた値は
このアドレスはどのような境界調整制約も満たす必要はありません。
読み取られた値は
.Eo \&
.Fn ptrace
.Ec
@ -100,22 +101,22 @@ setuid
.Dv PT_READ_I
および
.Dv PT_READ_D
平行しますが、読取るのでは
なく書き込むところが異なります。
同様ですが、読み取るのではなく
書き込むところが異なります。
.Fa data
引数書き込まれる値を指定します。
引数書き込まれる値を指定します。
.It Dv PT_READ_U
この要求は、トレースされるプロセスのユーザ構造体から 1 つの
.Li int
を読み取ります。
.Fa addr
引数は、
ユーザ構造体のベースに相対的に
int の位置を指定します。この引数は通常、明示的または
ユーザ構造体のベースから相対的な
int の位置を指定します。この引数は通常、明示的または
.Eo \&
.Fn ptrace
.Ec
のプロトタイプの存在のどちらかによって
のプロトタイプの存在によって
.Li caddr_t
にキャストされる整数値です。
.Dv PT_READ_I
@ -125,7 +126,7 @@ int
.Fa addr
.Li int
境界に整されている必要があります。読取られた値は
境界に調整されている必要があります。読取られた値は
.Eo \&
.Fn ptrace
.Ec
@ -135,25 +136,25 @@ int
.Li int
を書き込みます。
.Fa addr
.Dv PT_READ_U
についてとまったく同じようにオフセットを指定し、
同じようにオフセットを指定し、
.Fa data
.Dv PT_WRITE_I
および
.Dv PT_WRITE_D
まったく同じように書き込まれる値を指定します。
と同じように書き込まれる値を指定します。
.It Dv PT_CONTINUE
トレースされるプロセスは実行を継続します。
.Fa addr
は、実行が再開される場所 (プログラムカウンタには新しい値)、
は、実行が再開される場所 (プログラムカウンタ新しい値)、
または実行が停止されたところで再開されることを示す
.Li (caddr_t)1
を指定します。
.Fa data
は、実行を再開するときにトレースされるプロセスに配信されるシグナル番号、
またはシグナルが送信されない場合は 0 を提供します。
には、トレースされるプロセスが実行を再開するときに受信するシグナル番号、
またはシグナルを送信しない場合には 0 を指定します。
.It Dv PT_STEP
トレースされるプロセスは 1 命令ずつステップ実行されます。
.Fa addr
@ -161,37 +162,37 @@ int
.Fa data
フィールドは使用されません。
.It Dv PT_KILL
トレースされるプロセスは、
.Dv PT_CONTINUE
が、配信されるシグナルとして与えられた
トレースされるプロセスは、あたかも
.Dv SIGKILL
とともに使用されたかのように終了します。
を配信シグナルとして
.Dv PT_CONTINUE
が使用されたかのように、終了します。
.It Dv PT_ATTACH
この要求は、さもなければ無関係のプロセスの制御を取得し、
れをトレース開始するように
します。トレースされるプロセスからの協力は必要としません。このケースでは、
この要求は、他の無関係なプロセスの制御を取得し、
のトレースを開始します。
トレースされるプロセスからの協力は必要としません。このケースでは、
.Fa pid
トレースされるプロセスのプロセス ID を指定し、
トレースされるプロセスのプロセス ID を指定し、
他の 2 つの引数は無視されます。
この要求では、ターゲットプロセストレースする
プロセスと同じリアル UID があること、
それが setuid または setgid 実行可能モジュールを実行している必要が
あることが要求されます (トレースしているプロセスがルートとして実行されている
場合、これらの制約は該当しません)。
トレースしているプロセスは、新たにトレースされるプロセスが停止させ、
次に、これがずっとトレースされているかのように制御できます。
この要求では、ターゲットプロセストレースする
プロセスと同じ実 UID を持つこと、
それが setuid または setgid された実行可能モジュールでないこと
が要求されます (トレースするプロセスが root として実行されている
場合、これらの制約は適用されません)。
トレースするプロセスは、新たにトレースされるプロセスを停止させ、
あたかも最初からずっとトレースしていたかのように制御できます。
.It Dv PT_DETACH
この要求は PT_CONTINUE と類似していますが、実行を継続する別の場所を
指定できないこと、
およびそれが継続した後、トレースされたプロセスがトレースされなくなり、
通常どおり実行を継続することが異なります。
および要求が成功した後、トレースされていたプロセスはもはや
トレースされず、通常どおり実行を継続することが異なります。
.El
.Pp
さらにマシンに固有の要求が存在することがあります。i386
では、これらは次のとおりです。
.Bl -tag -width 12n
.It Dv PT_GETREGS
この要求は、トレースされプロセスのマシンレジスタを、
この要求は、トレースされプロセスのマシンレジスタを、
.Fa addr
が指す
.Dq Li "struct reg"
@ -206,7 +207,7 @@ int
.Dq Li "struct reg"
.Pf ( Aq Pa machine/reg.h
内に定義されています)
からトレースされプロセスのマシンレジスタをロードします。
からトレースされプロセスのマシンレジスタをロードします。
.It Dv PT_GETFPREGS
この要求はトレースされるプロセスの浮動小数点レジスタを
.Fa addr
@ -223,7 +224,7 @@ int
.Dq Li "struct fpreg"
.Pf ( Aq Pa machine/reg.h
内に定義されています)
からトレースされプロセスの浮動小数点レジスタをロードします。
からトレースされプロセスの浮動小数点レジスタをロードします。
.It Dv PT_GETDBREGS
この要求はトレースされるプロセスのデバッグレジスタを
.Fa addr
@ -231,7 +232,7 @@ int
.Dq Li "struct dbreg"
.Pf ( Aq Pa machine/reg.h
内に定義されています)
に読みります。
に読みります。
.It Dv PT_SETDBREGS
この要求は
.Dv PT_GETDBREGS
@ -241,35 +242,35 @@ int
.Dq Li "struct dbreg"
.Pf ( Aq Pa machine/reg.h
内に定義されています)
からトレースされプロセスのデバッグレジスタにロードします。
からトレースされプロセスのデバッグレジスタにロードします。
.El
.Sh 戻り値
要求にはエラーでない値として
.Li -1
いくつかの要求で
.Fn ptrace
に返させるものもあります。
曖昧さをなくすために、呼び出しの前に
はエラー以外の場合にも
.Li -1
を返します。
曖昧さをなくすためには、呼び出しの前に
.Va errno
を 0 に設定し、後でチェックできます。
を 0 に設定し、後でチェックます。
.Sh エラー
.Fn ptrace
関数は次の場合に処理に失敗することがあります。
関数は次の場合に処理に失敗ます。
.Bl -tag -width Er
.It Bq Er ESRCH
.Bl -bullet -compact
.It
指定のプロセス ID があるプロセスが存在しません。
指定されたプロセス ID を持つプロセスが存在しません。
.El
.It Bq Er EINVAL
.Bl -bullet -compact
.It
プロセスが自身の上に
プロセスが自分自身に対して
.Dv PT_ATTACH
を使おうとしました。
.It
.Fa request
正しい要求の 1 つではありませんでした。
正しい要求の 1 つではありませんでした。
.It
.Dv PT_READ_U
または
@ -279,12 +280,12 @@ int
.\".Li int Ns \&-aligned.
.Li int
で整列していませんでした。
境界に調節されていませんでした。
.It
.Dv PT_CONTINUE
へのシグナル番号
.Fa ( data
内) が、0 ではないか、または正しいシグナル番号ではありませんでした。
.Fa ( data )
が 0 でないか、または正しいシグナル番号ではありませんでした。
.It
.Dv PT_GETREGS ,
.Dv PT_SETREGS ,
@ -293,17 +294,16 @@ int
.Dv PT_GETDBREGS
または
.Dv PT_SETDBREGS
が、有効なレジスタを設定せずに
プロセスについて試みられました
(これは通常、システムプロセスについてだけ真です)。
が、有効なレジスタを設定せずに使用されました
(これらは通常、システムプロセスについてのみ使用されます)。
.El
.It Bq Er EBUSY
.Bl -bullet -compact
.It
.Dv PT_ATTACH
が既にトレース中のプロセスについて試みられました。
が既にトレース中のプロセスについて使用されました。
.It
要求をしているプロセス以外のプロセスによってトレースされているプロセスを
要求をしているプロセス以外のプロセスによってトレースされるプロセスを
操作しようとする要求が試みられました。
.It
要求
@ -319,7 +319,7 @@ int
.It
前述の
.Dv PT_ATTACH
リストした要求を侵犯してプロセスについて
説明した条件を満たさないプロセスについて
.Dv PT_ATTACH
を使おうとしました。
.El

View file

@ -58,11 +58,11 @@
システムコールは、
ファイルシステムの割り当て制限を有効や無効にしたり、操作します。
.Fa cmd
で与えられた割り当て制限制御コマンドは、指定のユーザ
で与えられた割り当て制限制御コマンドは、
.Fa id
に対して
で指定されたユーザと
.Fa path
で指定されたファイルを操作します (注釈:
で指定されたファイルに対して動作します (注:
.Fa cmd
の値を明確に表すために、
.Ao Pa ufs/ufs/quota.h Ac
@ -77,18 +77,20 @@ QCMD
.Dq ufs
ファイルシステムについてのみサポートされています。
.Dq ufs
の場合、コマンドは主たるコマンド (後述) および
の場合、コマンドは主たるコマンド (後述) および
.Fa id
引数の解釈方法を指示するコマンドタイプで構成されます。
コマンドタイプは、ユーザ識別子 (USRQUOTA) と
グループ識別子 (GRPQUOTA) を解釈するものがサポートされています。
コマンドタイプは、
.Fa id
をユーザ識別子として解釈する (USRQUOTA) と、
グループ識別子として解釈する (GRPQUOTA) がサポートされています。
.Dq ufs
固有のコマンドは次のとおりです。
.Bl -tag -width Q_QUOTAOFFxx
.It Dv Q_QUOTAON
.Fa path
で指定されるファイルシステム用のディスク割り当て制限を有効にします。
コマンドタイプには有効になっている割り当て制限の種類を指定します。
コマンドタイプには有効にる割り当て制限の種類を指定します。
.Fa addr
引数には、割り当て制限情報を取り出すファイルを指定します。
割り当て制限を記録したファイルが存在している必要があります。
@ -157,10 +159,10 @@ QCMD
パラメータは無視されます。
.El
.Sh 戻り値
処理が正常に完了すると 0 を返します。
そうでない場合は、値 -1 が返され、グローバル変数
処理が正常に完了すると、値 0 が返されます。
そうでない場合は -1 が返され、エラーを示すためにグローバル変数
.Va errno
失敗の理由を示します。
設定されます。
.Sh エラー
.Fn quotactl
呼び出しは次の場合に失敗します。
@ -178,14 +180,14 @@ QCMD
.Dv Q_QUOTAON
において、割り当て制限情報ファイルがプレーンファイルではありません。
.It Bq Er EACCES
前置パス名の構成要素について検索許可が拒否されています。
指定されたパスには、検索が許可されていないディレクトリが含まれています。
.It Bq Er ENOTDIR
前置パス名の構成要素がディレクトリではありません
パスの構成要素中にディレクトリ以外のものが含まれています
.It Bq Er ENAMETOOLONG
パス名の構成要素が 255 文字を越えているか、
またはパス名全体が 1023 文字を越えています。
.It Bq Er ENOENT
ファイルが存在しません。
指定されたファイルが存在しません。
.It Bq Er ELOOP
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
.It Bq Er EROFS
@ -200,13 +202,13 @@ QCMD
無効な
.Fa addr
が指定されました。
対応する構造体を、カーネル内またはカーネル外にコピーできませんでした。
対応する構造体をカーネルに、またはカーネルからコピーできませんでした。
.It Bq Er EFAULT
.Fa path
が、プロセスに割り当てられたアドレス空間の範囲外を指しています。
.It Bq Er EPERM
特権が必要な呼び出しであったにも関わらず、
スーパユーザでないユーザによって呼ばれました。
スーパユーザ以外のユーザによって呼び出されました。
.El
.Sh 関連項目
.Xr quota 1 ,

View file

@ -61,7 +61,7 @@
.Fa nbytes
のデータを読取ろうとします。
.Fn readv
は同様の処理を実行しようとしますが、配列
は同様の処理を実行しますが、配列
.Fa iov
: iov[0], iov[1], ..., iov[iovcnt\|\-\|1]
のメンバで指定される
@ -69,8 +69,8 @@
個のバッファに入力データを分散
させます。
.Fn pread
は同様の機能を果たしますが、ファイルポインタを変更せずに
ファイル内の指定の位置から読取ります
は同様の機能を実行しますが、ファイル内の指定の位置から読取った後、
ファイルポインタを変更しません
.Pp
.Fn readv
に対する
@ -94,16 +94,16 @@ struct iovec {
.Fn read
.Fa d
対応するポインタが指定する位置から開始
結び付けられたポインタが指定する位置から開始
します
.Pf ( Xr lseek 2
を参照)。
.Fn read
からの戻り時に、ポインタは実際に読取られたバイト数
からの戻り時に、ポインタは実際に読取られたバイト数
だけ増加させられます。
.Pp
シークできないオブジェクトは必ず現在の位置から読取られます。
そのようなオブジェクトに対応するポインタの値は未定義です。
そのようなオブジェクトに結び付けられたポインタの値は未定義です。
.Pp
処理が成功すると、
.Fn read ,
@ -118,13 +118,13 @@ struct iovec {
.Pp
.Sh システムの注意事項
.Pp
非スレッドライブラリ
非スレッドライブラリでは、
.Fn read
.Va read
システムコールとして実装されています。
.Pp
スレッドライブラリの場合
スレッドライブラリでは
.Va read
システムコールは
.Fn _thread_sys_read
@ -143,13 +143,13 @@ struct iovec {
.Fa d
をアンロックします。
.Pp
非スレッドライブラリ
非スレッドライブラリでは、
.Fn readv
.Va readv
システムコールとして実装されています。
.Pp
スレッドライブラリの場合
スレッドライブラリでは
.Va readv
システムコールは
.Fn _thread_sys_readv
@ -194,7 +194,7 @@ struct iovec {
割り込まれました。
.It Bq Er EINVAL
.Fa d
対応するポインタが負でした。
結び付けられたポインタが負でした。
.It Bq Er EAGAIN
ファイルは非ブロッキング入出力とマークされており、
読取りの準備ができたデータがありません。
@ -206,7 +206,7 @@ struct iovec {
.Bl -tag -width Er
.It Bq Er EINVAL
.Fa iovcnt
が 0 に等しいかまたは 0 未満であるか、または 16 より大きくなっています。
が 0 以下であるか、または 16 より大きくなっています。
.It Bq Er EINVAL
.Fa iov
配列の中の
@ -228,7 +228,7 @@ struct iovec {
.It Bq Er EINVAL
指定のファイルオフセットが有効ではありません。
.It Bq Er ESPIPE
ファイル記述子がパイプ、ソケット、または FIFO に対応しています。
ファイル記述子がパイプ、ソケット、または FIFO に結び付けられています。
.El
.Sh 関連項目
.Xr dup 2 ,

View file

@ -60,7 +60,7 @@
.Dv NUL
文字を追加しません。
.Sh 戻り値
呼び出しは正常に完了すると文字のカウントをバッファ内に配置して戻ります。
呼び出しが正常に完了した場合、バッファ内に配置した文字数を返します。
エラーが起きた場合は -1 を返し、エラーコードがグローバル変数
.Va errno
に設定されます。
@ -76,7 +76,7 @@
.It Bq Er ENOENT
指定されたファイルが存在しません。
.It Bq Er EACCES
前置パス名の構成要素について検索許可が拒否されています。
指定されたパスには、検索が許可されていないディレクトリが含まれています。
.It Bq Er ELOOP
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
.It Bq Er EINVAL

View file

@ -47,7 +47,7 @@
.Fn reboot "int howto"
.Sh 解説
.Fn reboot
システムをリブートします。スーパユーザだけが必要に応じてマシンを
はシステムをリブートします。スーパユーザだけが必要に応じてマシンを
リブートできます。しかし、回復不可能なシステム障害の場合は、
リブートは自動的に起動されます。
.Pp
@ -92,7 +92,7 @@ init
.Pa /sbin/init
以外の init プログラム
.Pf ( Xr init 8
を参照) が実行されるよう指定するオプション。
を参照) が実行されるよう指定するオプションです
このスイッチは現時点では無効です。
.It Dv RB_KDB
シンボルテーブルをロードし、システム内の組み込みデバッガを有効にします。

View file

@ -55,13 +55,13 @@
.Fn recvfrom
.Fn recvmsg
は、ソケットからのメッセージを受信するのに使用され
ソケットが接続指向であるかどうかと無関係にソケット上のデータを
は、ソケットからのメッセージを受信するのに使用されます。
ソケットが接続指向であるかどうかにかかわらず、ソケット上のデータを
受信するのに使用できます。
.Pp
.Fa from
が nil でなく、ソケットが接続指向でない場合、
メッセージのソースアドレスが記入されます。
ここにはメッセージのソースアドレスが保存されます。
.Fa fromlen
は「値-結果」パラメータであり、
.Fa from
@ -81,32 +81,32 @@
と同一です。これは冗長なので、将来のリリースでは
サポートされない可能性があります。
.Pp
これら 3 つのルーチンは正常に完了するとメッセージの長さを返してきます。
メッセージが長すぎて指定のバッファに入らない場合は
これら 3 つのルーチンは正常に完了するとメッセージの長さを返します。
メッセージが長すぎて指定のバッファに収まらない場合
メッセージを受信したソケットのタイプによっては
超過分のバイトは破棄されるでしょう
超過分のバイトが破棄されることがあります
.Pf ( Xr socket 2
を参照)。
.Pp
ソケットにメッセージが無い場合は、ソケットがノンブロッキング
ソケットにメッセージが無い場合は、ソケットがブロッキング
.Pf ( Xr fcntl 2
を参照) の場合を除き、呼出しはメッセージが到着するのを待ちます。
ソケットがノンブロッキングの場合、値 -1 が返され、外部変数
ソケットがブロッキングの場合、値 -1 が返され、外部変数
.Va errno
.Er EAGAIN
に設定されます。通常受信呼出しは要求された量を受信するまで待たずに、
得られたデータを要求された量を上限として返します。この動作は、
に設定されます。通常受信呼出しは要求された量を受信するまで待たずに、
要求された量を上限として得られたデータを返します。この動作は、
.Xr getsockopt 2
で説明したソケットレベルの
オプション
で解説されているソケットレベルのオプション
.Dv SO_RCVLOWAT
および
.Dv SO_RCVTIMEO
によって影響を受けます。
.Pp
次のデータがいつ到着するかを判定するには
.Xr select 2
呼出しは、さらなるデータがいつ到着するかを判定するのに使うことができます。
呼出し使うことができます。
.Pp
recv 呼出しへの
.Fa flags
@ -117,20 +117,21 @@ recv
.Bl -column MSG_WAITALL -offset indent
.It Dv MSG_OOB プロセス帯域外データ
.It Dv MSG_PEEK 着信メッセージの覗き見 (peek)
.It Dv MSG_WAITALL 完全な要求またはエラーを待つ
.It Dv MSG_WAITALL 要求の完全な実行、またはエラーを待つ
.El
.Pp
.Dv MSG_OOB
フラグは帯域外データの受信を要求し、
通常のデータストリームは受信されません。
フラグは帯域外データの受信を要求し、
通常のデータストリームからは受信しません。
急送データを通常のデータ待ち行列の先頭に配置するプロトコルもありますが、
このフラグはそのようなプロトコルでは使用できません。MSG_PEEK フラグは、
受信操作が、データを待ち行列から除去せずにそのデータを受信待ち行列の先頭から
返すようにします。したがって、後続の受信呼出しは同じデータ
を返します。MSG_WAITALL フラグは、完全な要求が満たされるまで操作のブロックを
要求します。しかし、シグナルが補足された場合、エラーまたは切断が発生した場合、
または受信する次のデータが返されたものと異なるタイプ
である場合、呼出しは要求されたより少ないデータを返す可能性があります。
このフラグはそのようなプロトコルでは使用できません。MSG_PEEK フラグは
受信待ち行列の先頭からデータを除去することなく、そのデータを
返します。したがって、後続の受信呼出しは同じデータ
を返します。MSG_WAITALL フラグは要求が完全に満たされるまで
ブロックするように要求します。
しかし、シグナルが補足された場合、エラーまたは切断が発生した場合、
または受信する次のデータが返されたタイプと異なる
場合、呼出しは要求されたより少ないデータを返す可能性があります。
.Pp
.Fn recvmsg
呼び出しは、
@ -142,11 +143,11 @@ recv
.Pp
.Bd -literal
struct msghdr {
caddr_t msg_name; /* オプションのアドレス */
caddr_t msg_name; /* アドレス(オプション) */
u_int msg_namelen; /* アドレスのサイズ */
struct iovec *msg_iov; /* スキャッタ/ギャザー配列 */
u_int msg_iovlen; /* msg_iov の要素数 */
caddr_t msg_control; /* 補助データ、後述 */
caddr_t msg_control; /* 補助データ、後述 */
u_int msg_controllen; /* 補助データのバッファ長 */
int msg_flags; /* 受信されたメッセージ上のフラグ */
};
@ -157,7 +158,7 @@ struct msghdr {
.Fa msg_namelen
は、ソケットが接続されていない場合に、宛先アドレスを指定します。
名前が望まれない場合や必要でない場合、
名前を要求しない場合や必要でない場合、
.Fa msg_name
は NULL ポインタとして指定できます。
.Fa msg_iov
@ -165,11 +166,11 @@ struct msghdr {
.Fa msg_iovlen
.Xr read 2
で説明されているようにスキャッタ/ギャザの場所を記述します。
で説明されているようにスキャッタ/ギャザの場所を記述します。
.Fa msg_control
は、長さが
.Fa msg_controllen
、他のプロトコル制御に関連するメッセージまたはその他の
、他のプロトコル制御に関連するメッセージまたはその他の
各種補助データ用のバッファを指しています。メッセージは次の形式です。
.Bd -literal
struct cmsghdr {
@ -186,7 +187,7 @@ struct cmsghdr {
呼び出しの直後に、データバッファを伴わずに recvmsg を要求して、
ユーザ接続要求を得ることができるでしょう。
.Pp
開いたファイル記述子はこれで
オープンされたファイル記述子はこれで
.Dv AF_UNIX
ドメインソケット用の補助データとして引き渡され、その際、
.Fa cmsg_level
@ -201,7 +202,7 @@ struct cmsghdr {
.Dv SCM_CREDS
.Fa cmsg_type
を使用して、プロセスのクレデンシャル
を使用して、プロセスの認証情報
.Dv AF_UNIX
ドメインソケット用の補助データとして
渡すこともできます。このケースでは、
@ -224,13 +225,13 @@ struct cmsgcred {
};
.Ed
.Pp
カーネルは送信プロセスのクレデンシャル情報を記入し、それを受信側へ配信します。
カーネルは送信プロセスの認証情報を記入し、それを受信側へ配信します。
.Pp
.Fa msg_flags
フィールドは受信済みメッセージに従って戻り時に設定されます。
.Dv MSG_EOR
レコードの終了を示します: 返されたデータがレコードを完了しました (一般には、
タイプ
end-of-record、つまり返されたデータでレコードが
完結していることを示します (一般には、タイプ
.Dv SOCK_SEQPACKET
のソケットとともに使用されます)。
.Dv MSG_TRUNC
@ -252,7 +253,7 @@ struct cmsgcred {
.Fa s
が有効な記述子ではありません。
.It Bq Er ENOTCONN
ソケットは接続指向プロトコルと関係付けられていますが、接続されていません
ソケットは接続指向プロトコルと結び付けられていますが、接続されていません
.Pf ( Xr connect 2
.Xr accept 2
@ -262,12 +263,12 @@ struct cmsgcred {
.Fa s
はソケットを参照していません。
.It Bq Er EAGAIN
ソケットはノンブロッキングとマークされており
受信操作はブロックするでしょう
あるいは、受信時間切れが設定されていて、
データが受信される前に時間切れになりました。
ソケットが非ブロッキングとマークされているとき
受信操作でブロックしました
あるいは、受信タイムアウトが設定されていて、
データが受信される前にタイムアウトになりました。
.It Bq Er EINTR
データが得られるようになる前にシグナルの配信によって受信は割込まれました。
データが受信可能になる前に、受信がシグナルによって割込まれました。
.It Bq Er EFAULT
受信バッファポインタが、プロセスに割り当てられたアドレス空間の
範囲外を指しています。

View file

@ -52,7 +52,7 @@
.Fa to
に変更します。
.Fa to
が存在する場合は、先に削除します。
すでに存在する場合は、先にこれを削除します。
.Fa from
.Fa to
@ -66,8 +66,9 @@
のインスタンスが必ず存在することを保証します。
.Pp
.Fa from
の最終構成要素がシンボリックリンクの場合、指しているファイルまたは
ディレクトリではなく、そのシンボリックリンクの名前を変更します。
の最後の構成要素がシンボリックリンクの場合、それが指している
ファイルまたはディレクトリではなく、
そのシンボリックリンクの名前が変更されます。
.\".Sh CAVEAT
.\"The system can deadlock if a loop in the file system graph is present.
.\"This loop takes the form of an entry in directory
@ -97,12 +98,12 @@
.Sh 戻り値
操作が正常に完了すると値 0 が返されます。そうでない場合、
.Fn rename
は -1 を返し、グローバル変数
は -1 を返し、エラーを示すためにグローバル変数
.Va errno
は失敗の理由を示します。
が設定されます。
.Sh エラー
.Fn rename
は次の場合、処理に失敗し、いずれの引数ファイルも影響を受けません。
は次の場合に失敗し、いずれの引数ファイルも影響を受けません。
.Bl -tag -width Er
.It Bq Er ENAMETOOLONG
いずれかのパス名の構成要素が 255 文字を越えているか、またはいずれかの
@ -113,10 +114,10 @@
.Fa to
の前置パス名が存在しません。
.It Bq Er EACCES
いずれかの前置パス名の構成要素について検索許可が拒否されています。
指定されたパスには、検索が許可されていないディレクトリが含まれています。
.It Bq Er EACCES
要求されたリンクは、書込み許可を拒否するモードの
ディレクトリに書込みすることを要求しています。
指定されたリンクは、書込みが許可されていない
ディレクトリへの書込みを要求しています。
.It Bq Er EPERM
.Fa from
ファイルを含むディレクトリにスティッキービットが設定されており、
@ -134,7 +135,7 @@
.It Bq Er ELOOP
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
.It Bq Er ENOTDIR
いずれかの前置パス名の構成要素がディレクトリではありません
パスの構成要素中にディレクトリ以外のものが含まれています
.It Bq Er ENOTDIR
.Fa from
はディレクトリですが、
@ -155,16 +156,16 @@
返らないことに注意してください。
.It Bq Er ENOSPC
ディレクトリを格納しているファイルシステム上の空間が枯渇したため、
新しい名前を入れるエントリが置かれるディレクトリを拡張できません。
新しい名前のためのエントリを置くディレクトリを拡張できません。
.It Bq Er EDQUOT
ディレクトリを格納しているファイルシステム上のディスクブロックのユーザの
クォータが枯渇したため、
新しい名前を入れるエントリが置かれるディレクトリを拡張できません。
新しい名前のためのエントリを置くディレクトリを拡張できません。
.It Bq Er EIO
ディレクトリエントリを作成または更新している間に入出力エラーが発生しました。
.It Bq Er EROFS
要求されたリンクは、読取り専用ファイルシステム上のディレクトリに
書込みすることを要求しています。
指定されたリンクは、読取り専用ファイルシステム上のディレクトリへの
書込みを要求しています。
.It Bq Er EFAULT
.Em path
は、プロセスに割り当てられたアドレス空間の範囲外を指しています。

View file

@ -50,27 +50,26 @@
.Fn revoke
関数は、
.Fa path
によって指定されたファイルについて、システム内の現在の開いているすべての
によって指定されたファイルの、システム内に現在オープンされているすべての
ファイル記述子を無効にします。
そのような記述子についての後続の操作は、
解除されたキャラクタ型デバイスファイルから
そのような記述子についての後続の操作は全て失敗します。ただし
キャラクタ型デバイスファイルへ
.Fn read
がカウント 0 (ファイルの終了) を返して、後続する
がカウント 0 (ファイルの終了) を返すのと、
.Fn close
呼び出しが成功する場合を例外として、
処理を失敗します。
ただし、ファイルが開かれたデバイスについての特殊ファイルである場合、
デバイスを閉じる関数は、ファイルへのすべての開かれていた参照が
閉じられたものであったかのように呼び出されます。
呼び出しが成功するのは例外です。
指定されたファイルが
あるデバイスについてのオープンされた特殊ファイルであった場合、
そのファイルへのすべての参照がクローズされたかのように、
デバイスをクローズする関数が呼び出されます。
.Pp
ファイルへのアクセスはその所有者または
スーパユーザによってだけ無効にされます。
.Fn revoke
関数は現時点ではブロック型およびキャラクタ型特殊ファイルについてだけ
サポートされています。
これは通常、端末の前の使用者によるアクセスを防止し、
新しいログインセッション用に端末デバイスを準備
するのに使用されます。
これは通常、新しいログインセッション用に端末デバイスを準備するとき、
以前の端末使用者によるアクセスを防止するために使用されます。
.Sh 戻り値
値 0 は呼び出しが正常に完了したことを示します。
戻り値 -1 はエラーが起こったことを示し、理由を示すために
@ -85,9 +84,9 @@
パス名の構成要素が 255 文字を越えているか、
またはパス名全体が 1024 文字を越えています。
.It Bq Er ENOENT
指定されたファイルまたはパス名の構成要素が存在しません。
指定されたファイルまたはパス名が存在しません。
.It Bq Er EACCES
前置パス名の構成要素について検索許可が拒否されています。
指定されたパスには、検索が許可されていないディレクトリが含まれています。
.It Bq Er ELOOP
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
.It Bq Er EFAULT