CPIO(5V) — NEWS-OS Programmer’s Manual
名称
cpio − cpioアーカイブのファーマット。
解説
cpio(1V) の −c オプションを指定しない場合の ヘッダーの構造は以下の様になります。
struct {
shorth_magic,
h_dev;
ushorth_ino,
h_mode,
h_uid,
h_gid;
shorth_nlink,
h_rdev,
h_mtime[2],
h_namesize,
h_filesize[2];
charh_name[h_namesize rounded to word];
} Hdr;
−c オプション指定時には、 ヘッダーの情報は以下の様に 記述されます。
sscanf(Chdr,"%6o%6o%6o%6o%6o%6o%6o%6o%11lo%6o%11lo%s",
&Hdr.h_magic, &Hdr.h_dev, &Hdr.h_ino, &Hdr.h_mode,
&Hdr.h_uid, &Hdr.h_gid, &Hdr.h_nlink, &Hdr.h_rdev,
&Longtime, &Hdr.h_namesize,&Longfile,Hdr.h_name);
Longtime と Longfile はそれぞれ Hdr.h_mtime と Hdr.h_filesize に対応します。 各ファイルの内容は、 そのファイル を記述する その他の項目と共に、 可変長の構造体 archiveの配列の1要素として 記録されます。 h_magic の場合には定数070707(8進)を持ちます。 項目 h_dev から h_mtime までの意味は、 stat(2) で説明されています。 ナルで終わるパス名 h_name の長さは ナル・バイトを含み、 h_namesize で指定されます。
アーカイブの最後のレコードは、常に TRAILER!!! となります。 特殊ファイル、ディレクトリ、また トレイラは全て h_filesize をゼロにして記録されます。
関連事項
NEWS-OSRelease 4.1C