./usr/include
.x
/usr/include/rpcsvc/rquota.x
Cソースコードのように見えますが(file /usr/include/rpcsvc/rquota.x
結果はにありますC source, ASCII text
)、有効なCではありません(キーワードを参照)program
。version
正確には何ですか?拡張機能が短すぎて一部のサイトが間違っているか不完全であるため、Googleで検索するのは困難です(例:ウィキペディア「前のDirectXファイル」と言います)。
ベストアンサー1
彼らは正しいSunRPCプロトコルベース(RPCはリモートプロシージャコールを表します)。各ファイルは通常、これらのRPCとそれを実装するプログラムで使用されるデータ構造を記述します。たとえば、yppasswd.x
Yellow Pagesパスワード更新プロトコルを説明すると、理解しやすくなります。
program YPPASSWDPROG {
version YPPASSWDVERS {
/*
* Update my passwd entry
*/
int
YPPASSWDPROC_UPDATE(yppasswd) = 1;
} = 1;
} = 100009;
struct passwd {
string pw_name<>; /* username */
string pw_passwd<>; /* encrypted password */
int pw_uid; /* user id */
int pw_gid; /* group id */
string pw_gecos<>; /* in real life name */
string pw_dir<>; /* home directory */
string pw_shell<>; /* default shell */
};
struct yppasswd {
string oldpass<>; /* unencrypted old password */
passwd newpw; /* new passwd entry */
};
yppasswd
これは、構造体をパラメータとして使用し、1つを返すRPC YPパスワード更新プロシージャを宣言しますint
。このファイルにはyppasswd
構造そのものとpasswd
使用される構造も記述されています。
これらのファイルは通常、スタブサーバーとrpcgen
クライアントコードを生成するために使用され、プロトコルのRPCサーバーおよび/またはRPCクライアントを実装するために使用できます。サンプルクライアントとサーバーコードを生成することもできます。
図からわかるように先行は達成するのが難しい、これrpcgen(1)
マンページにはより多くの情報があります。