sccs-val(1)

NAME
sccs-val, val - validate an SCCS file

SYNOPSIS

/usr/ccs/bin/val -

/usr/ccs/bin/val
[-T] [-s
] [-m
name
] [-r
sid
] [-y
type] s.filename...

DESCRIPTION

The val utility determines if the specified s.files meet the characteristics specified by the indicated arguments.

val has a special argument, `-', which reads the standard input until the end-of-file condition is detected. Each line read is independently processed as if it were a command line argument list.

If a directory name is used in place of the s.filename command line argument, the val command applies to all s.files in that directory. Unreadable s.files produce an error; processing continues with the next file (if any).

val generates diagnostic messages on the standard output for each command line and file processed and also returns a single 8-bit code upon exit as described below.

The 8-bit code returned by val is a disjunction of the possible errors, that is, it can be interpreted as a bit string where (moving from left to right) the bits set are interpreted as follows:

bit 0 (value 128) = missing file argument
bit 1 (value  64) = unknown or duplicate option
bit 2 (value  32) = corrupted s.file
bit 3 (value  16) = can not open file or file not in s.file format
bit 4 (value   8) = the SCCS delta ID (SID) is invalid or ambiguous
bit 5 (value   4) = the SID does not exist
bit 6 (value   2) = mismatch between %Y% and -y argument
bit 7 (value   1) = mismatch between %M% and -m argument

val can process two or more files on a given command line, and in turn can process multiple command lines (when reading the standard input). In these cases, an aggregate code is returned which is the logical OR of the codes generated for each command line and file processed.

OPTIONS

The following options are supported:

-h  Check SID specific checksums that are available with SCCS v6 history files. This may slow down the process significantly in case that there are many deltas in a SCCS history file.

-m name
    Compares name with the %M% ID keyword in the s.file.

-rsid
    Checks to see if the indicated SID is ambiguous, invalid, or absent from the s.file.

-s  Silent. Suppresses the normal error or warning messages.

-y type
    Compares type with the %Y% ID keyword.

-T  Trace. Print extra debug messages. This disables the silent mode. When in debug mode, extra tests are enabled for:

    statistics
        The statistics line in the SCCS history file is written but not used. This is why this test is only enabled in debug mode and why a defective statistics line does not affect the exit code. The test still only checks for semantical correctness but not for correct values (e.g. whether the number of inserted lines is correct).

    time stamps
        The time stamps in the SCCS history file are only used when a cut-off time was specified. This test checks for monotonic growing time stamps. A warning is issued if time stamps go backwards, but this does not affect the exit code.

    For a complete consistency check, it is recommended to run val in debug mode to check for all problems.

-V  Prints the val version number string and exists.

ENVIRONMENT VARIABLES

See environ(5) for descriptions of the following environment variables that affect the execution of val(1): LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, and NLSPATH.

SCCS_NO_HELP
    If set, val(1) will not automatically call help(1) with the SCCS error code in order to print a more helpful error message. Scripts that depend on the exact error messages of SCCS commands should set the environment variable SCCS_NO_HELP and set LC_ALL=C.

EXIT STATUS

The following exit values are returned:

0   Successful completion.

1   An error occurred.

FILES

s.file
    SCCS history file, see sccsfile(4).

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

SEE ALSO

sccs(1), sccs-admin(1), sccs-cdc(1), sccs-comb(1), sccs-cvt(1), sccs-delta(1), sccs-get(1), sccs-help(1), sccs-log(1), sccs-prs(1), sccs-prt(1), sccs-rmdel(1), sccs-sact(1), sccs-sccsdiff(1), sccs-unget(1), bdiff(1), diff(1), what(1), sccschangeset(4), sccsfile(4), attributes(5), environ(5), standards(5).

DIAGNOSTICS

Use the SCCS help command for explanations (see sccs-help(1)).

AUTHORS
The SCCS suite was origininally written by Marc J. Rochkind at Bell Labs in 1972. Release 4.0 of SCCS, introducing new versions of the programs admin(1), get(1), prt(1), and delta(1) was published on February 18, 1977; it introduced the new text based SCCS v4 history file format (previous SCCS releases used a binary history file format). The SCCS suite was later maintained by various people at AT&T and Sun Microsystems. Since 2006, the SCCS suite is maintained by Joerg Schilling.