'\" te
.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH CONTENTS 4 "Dec 20, 2007"
.SH NAME
contents \- list of files and associated packages
.SH SYNOPSIS
.LP
.nf
\fB/var/sadm/install/contents\fR
.fi

.SH DESCRIPTION
.sp
.LP
The file \fB/var/sadm/install/contents\fR is a source of information about the
packages installed on the system. This file must never be edited directly.
Always use the package commands (see SEE ALSO) to make changes to the
\fBcontents\fR file.
.sp
.LP
Each entry in the \fBcontents\fR file is a single line. Fields in each entry
are separated by a single space character.
.sp
.LP
Two major styles of entries exist, old style and new style. The following is
the format of an old-style entry:
.sp
.in +2
.nf
\fIftype\fR \fIclass\fR \fIpath\fR \fIpackage(s)\fR
.fi
.in -2

.sp
.LP
The following is the general format of a new-style entry:
.sp
.in +2
.nf
\fIpath\fR[=\fIrpath\fR] \fIftype\fR \fIclass\fR [\fIftype-optional-fields\fR] \fIpackage(s)\fR
.fi
.in -2

.sp
.LP
New-style entries differ for each \fBftype\fR. The \fBftype\fR designates the
entry type, as specified in \fBpkgmap\fR(4). The format for new-style entries,
for each \fBftype\fR, is as follows:
.sp
.in +2
.nf
ftype s: \fIpath\fR=\fIrpath\fR s \fIclass\fR \fIpackage\fR
ftype l: \fIpath\fR l \fIclass\fR \fIpackage\fR
ftype d: \fIpath\fR d \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage(s)\fR
ftype b: \fIpath\fR b \fIclass\fR \fImajor\fR \fIminor\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
ftype c: \fIpath\fR c \fIclass\fR \fImajor\fR \fIminor\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
ftype f: \fIpath\fR f \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
ftype x: \fIpath\fR x \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
ftype v: \fIpath\fR v \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
ftype e: \fIpath\fR e \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
.fi
.in -2

.sp
.LP
A significant distinction between old- and new-style entries is that the former
do not begin with a slash (/) character, while the latter (new-style) always
do. For example, the following are old-style entries:
.sp
.in +2
.nf
d none /dev SUNWcsd
e passwd /etc/passwd SUNWcsr
.fi
.in -2

.sp
.LP
The following are new-style entries:
.sp
.in +2
.nf
/dev d none 0755 root sys SUNWcsr SUNWcsd
/etc/passwd e passwd 0644 root sys 580 48299 1077177419 SUNWcsr
.fi
.in -2

.sp
.LP
The following are the descriptions of the fields in both old- and new-style
entries.
.sp
.ne 2
.na
\fB\fIpath\fR\fR
.ad
.RS 11n
The absolute path of the node being described. For \fBftype\fR \fBs\fR
(indicating a symbolic link) this is the indirect pointer (link) name.
.RE

.sp
.ne 2
.na
\fB\fIrpath\fR\fR
.ad
.RS 11n
The relative path to the real file or linked-to directory name.
.RE

.sp
.ne 2
.na
\fB\fIftype\fR\fR
.ad
.RS 11n
A one-character field that indicates the entry type (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fIclass\fR\fR
.ad
.RS 11n
The installation class to which the file belongs (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fIpackage\fR\fR
.ad
.RS 11n
The package associated with this entry. For \fBftype\fR \fBd\fR (directory)
more than one package can be present.
.RE

.sp
.ne 2
.na
\fB\fImode\fR\fR
.ad
.RS 11n
The octal mode of the file (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fIowner\fR\fR
.ad
.RS 11n
The owner of the file (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fIgroup\fR\fR
.ad
.RS 11n
The group to which the file belongs (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fImajor\fR\fR
.ad
.RS 11n
The major device number (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fIminor\fR\fR
.ad
.RS 11n
The minor device number (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fIsize\fR\fR
.ad
.RS 11n
The actual size of the file in bytes as reported by sum (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fIcksum\fR\fR
.ad
.RS 11n
The checksum of the file contents (see \fBpkgmap\fR(4)).
.RE

.sp
.ne 2
.na
\fB\fImodtime\fR\fR
.ad
.RS 11n
The time of last modification (see \fBpkgmap\fR(4)).
.RE

.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(5) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
Interface Stability	Unstable
.TE

.SH SEE ALSO
.sp
.LP
\fBpkgadd\fR(1M), \fBpkgadm\fR(1M), \fBpkgchk\fR(1M), \fBpkgmap\fR(4),
\fBattributes\fR(5)
.SH NOTES
.sp
.LP
As shown above, the interface stability of \fB/var/sadm/install/contents\fR is
Unstable (see \fBattributes\fR(5)). It is common practice to use this file in a
read-only manner to determine which files belong to which packages installed on
a system. While this file has been present for many releases of the Solaris
operating system, it might not be present in future releases. The fully
supported way to obtain information from the installed package database is
through \fBpkgchk\fR(1M). It is highly recommended that you use \fBpkgchk\fR
rather than relying on the \fBcontents\fR file.