CPIO(4) — HP-UX
NAME
cpio − format of cpio archive
DESCRIPTION
The header structure, when the −c option of cpio(1) is not used, is:
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;
When the −c option is used, the header information is described by:
sscanf(Chdr,"%6ho%6ho%6ho%6ho%6ho%6ho%6ho%6ho%11lo%6ho%11lo",
&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);
Longtime and Longfile are equivalent to Hdr.h_mtime and Hdr.h_filesize, respectively. The contents of each file are recorded together with other items describing the file. Every instance of h_magic contains the constant 070707 (octal). The items h_dev through h_mtime have meanings explained in stat(2). The length of the null-terminated path name h_name, including the null byte, is given by h_namesize.
The last record of the archive always contains the name TRAILER!!!. Directories and the trailer are recorded with h_filesize equal to zero.
It will not always be the case that h_dev and h_ino correspond to the results of stat(2), but the values are always sufficient to tell whether two files in the archive are linked to each other.
When a device special file is archived by HP-UX cpio (using -x), h_rdev will contain a magic constant which is dependent upon the implementation which is doing the writing. H_rdev flags the device file as an HP-UX 32-bit device specifier, and h_filesize will contain the 32-bit device specifier (see stat(2)). If the -x option is not present, special files are not archived or restored. Non-HP-UX device special files are never restored.
SEE ALSO
Hewlett-Packard Company — Version B.1, May 11, 2021