lif - logical interchange format description
LIF (Logical Interchange Format) is a Hewlett-Packard standard mass-
storage format that can be used for interchange of files among various
HP computer systems. A LIF volume contains a header (identifying it
as a LIF volume) and a directory that defines the contents (i.e.
files) of the volume. The size of the directory is fixed when the
volume is initialized (see lifinit(1)) and sets an upper bound on the
number of files that can be created on the volume.
HP-UX contains a set of utilities (referred to as lif*(1)) that can be
+ Initialize a LIF volume (i.e. create a header and an empty
+ Copy files to and from LIF volumes,
+ List the contents of LIF volumes,
+ Remove LIF files,
+ Rename LIF files.
The lif*(1) utilities are the only utilities within HP-UX where the
internal structure of a LIF volume is known. To the rest of HP-UX, a
LIF volume is simply a file containing some unspecified data. The
term LIF volume should in no way be confused with the HP-UX notion of
a file system volume or mountable volume.
LIF utilities on HP-UX currently support three file types, ASCII (1),
BINARY (-2) and BIN (-23951).
Three copying modes are associated with these file types:
ASCII If the copying mode is ASCII and an HP-UX file is being
copied to a LIF volume, the utility strips the trailing
LF (line-feed) character, and inserts two bytes of
record length in front of each record. These records
are then written to a LIF-formatted medium. When
copying a LIF ASCII file to HP-UX the two-byte record
length is stripped and a trailing LF is appended.
These records are then written to the destination. In
this mode of copying, the length of the file is
preserved. The default file type for this mode of
copying is ASCII (1).
BINARY If the copying mode is BINARY, and an HP-UX file is
being copied to a LIF volume, the utility simply
Hewlett-Packard Company - 1 - HP-UX Release 11i: November 2000
inserts two bytes for record length in front of each
1-Kbyte record. A trailing fractional block has a
count reflecting the number of bytes in that block. No
interpretation is placed on the content of the records.
These records are then written to a LIF-format medium.
When copying a LIF file to an HP-UX file in BINARY
copying mode, the record lengths are stripped and the
content of records is directly written to the
destination. In this mode of copying, the length of
the binary file is preserved. The default file type
for this mode of copying is BINARY (-2).
RAW If the copying mode is RAW, and an HP-UX file is being
copied to a LIF volume, the utility simply copies the
raw data to the destination. File sizes that are not
integer multiples of 256 bytes are padded with nulls to
the next higher multiple. Therefore, file sizes are
not preserved. When copying a LIF file to an HP-UX
file in RAW mode, the information is copied directly
without any interpretation placed on the content of the
source. The default file type for this mode of copying
is BIN (-23951).
A LIF volume can be created on any HP-UX file (either regular disk
file or device special file) that supports random access via lseek()
(see lseek(2)). Do not mount the special file before using lif*(1)
utilities. See lifinit(1) for details. Within a LIF volume,
individual files are identified by 1- to 10-character file names.
File names can consist of uppercase alphanumeric characters (A through
Z, 0 through 9) and the underscore character (_). The first character
of a LIF file name must be a letter (A through Z). The lif*(1)
utilities accept any file name (including illegal file names generated
on other systems), but can only create legal names. This means that
files whose names contain lowercase letters can be read but not
LIF file names are specified to the lif*(1) utilities by concatenating
the HP-UX path name for the LIF volume followed by the LIF file name,
separating the two with a colon (:). For example:
/dev/fd.0:ABC specifies LIF file ABC accessed via HP-UX
device special file /dev/fd.0.
myfile:ABC specifies LIF file ABC within HP-UX disk file
Note that this file-naming convention is applicable only for use as
arguments to the lif*(1) utilities, and does not constitute valid path
naming for any other use within the HP-UX operating system.
Hewlett-Packard Company - 2 - HP-UX Release 11i: November 2000
Do not mount the special file while using lif*(1) utilities.
lifcp(1), lifinit(1), lifls(1), lifrename(1), lifrm(1).
Hewlett-Packard Company - 3 - HP-UX Release 11i: November 2000