GETMNTENT(3) — NEWS-OS Programmer’s Manual
名称
getmntent, setmntent, addmntent, endmntent, hasmntopt − ファイルシステムのディスクリプタファイルのエントリを得る
形式
#include <stdio.h>
#include <mntent.h>
FILE ∗setmntent(filep, type)
char ∗filep;
char ∗type;
struct mntent ∗getmntent(filep)
FILE ∗filep;
int addmntent(filep, mnt)
FILE ∗filep;
struct mntent ∗mnt;
char ∗hasmntopt(mnt, opt)
struct mntent ∗mnt;
char ∗opt;
int endmntent(filep)
FILE ∗filep;
解説
これらのルーチンは、 ファイルシステム記述ファイルの /etc/fstab をアクセスするために、 getfsent() ルーチン群にとって代わります。 また、マウントされているファイルシステム記述ファイル /etc/mtab をアクセスします。 setmntent() はファイルシステム記述ファイルを オープンして、 後で getmntentまたは addmntent、 endmntent で使用できるファイルポインタを 返します。 type 引数は fopen(3) のものと同じです。 getmntent() は filep から次の行を 読み込み、 次のような構造を 持つ構造体へのポインタを 返します。 構造体は、 ファイルシステム記述ファイルの <mntent.h> の中の 1 行を いくつかに区切ったフィールドを 含んでいます。 フィールドの意味は、 fstab(5) をご覧下さい。
struct mntent{
char ∗mnt_fsname; /∗ ファイルシステム名 ∗/
char ∗mnt_dir;/∗ ファイルシステムのパスプリフィックス ∗/
char ∗mnt_type;/∗ 4.3 あるいは、nfs、cdfs、pcfs、vdd、swap、ignore ∗/
char ∗mnt_opts;/∗ ro や quota など ∗/
int mnt_freq;/∗ ダンプ頻度 (日数単位) ∗/
int mnt_passno;/∗ 並行 fsck 上のパス番号 ∗/
};
addmntent() は、 mntent 構造体の mnt をオープン中のファイル filep の最後に追加します。 ご注意: これが動作するときには、 filep が書き込み用にオープンされていなければなりません。 hasmntopt() は、 mntent 構造体の mnt の mnt_opts フィールドを走査して、 opt にマッチするサブ文字列を捜します。 マッチが見つかった場合には、 そのサブ文字列のアドレスを返します。 そうでなければ、0 を返します。 endmntent() は、ファイルをクローズします。
関連ファイル
/etc/fstab
/etc/mtab
関連事項
fopen(3S), getfsent(3), fstab(5)
診断
EOF またはエラーのときには、 NULL ポインタ(0)が返されます。
バグ
返される mntent 構造体は、 各呼び出しで上書きされる静的情報を 指します。
NEWS-OSRelease 4.2.1R