| SCBD_OPEN_FILE(3) | SCBD_OPEN_FILE(3) |
#include <scboard.h>
int scbd_open_file( char *name, char *attr, int *fd );
scbd_open_file() は scoreboard プロセスが実行されているホストに
もともと位置していたファイルを開こうと試みます。
そのファイル名は name 引数で指定された名前と attr
引数で指定された属性を持つレコードの値です。
レコード内に二つ以上の値がある場合は、最初の値だけがファイル名とします。
scbd_open_file() はファイルをキャッシュとしてローカルディスク
(/var/tmp/score) にコピーします。
そしてファイルへの最初のアクセスの際にはキャッシュファイルを開き、
fd 引数にそのファイル デスクリプタを返します。
元のファイルが変更された場合、キャッシュファイルは再度コピーされます。
キャッシュファイルの正当性を立証するのに必要な情報はキャッシュファイル名に
エンコードされます。
キャッシュファイル作成日付と時間は stat(2) UNIX システムコールを
用いて得られるので、scoreboard サーバホストとローカルホストの時計が
同期されていなければなりません。
scbd_open_file() は成功した場合は0を返し、あるいは
以下のエラーを返します:
open(2) UNIX システムコールと同様です。
scoreboard(8)
データベースプロセスのホスト名 (およびポート番号)
scoreboard(8),
scorehosts.db(5)