4. Filenames
Temporary files are used during normal operation of CSSC (and
SCCS). Many of these are given fixed names. The prefixes for the
various files used by CSSC are listed in the table below.
- `s.'
- The history file itself.
- `p.'
- The file containing the list of edit locks.
- `z.'
- The lock file used to arbitrate access to the history file. The running
CSSC (or SCCS) program puts its PID into this file. Some
versions of SCCS (but not CSSC) will break the lock
after 60 seconds if the specified PID is not running on the local
machine. In order to work more reliably over networked filesystems,
CSSC will not do this; stale lock files would have to be removed
manually.
- `x.'
- Temporary file into which is written the new s-file. Once processing is
complete, the old s-file is replaced by the x-file.
- `q.'
- Temporary file into which is written the new p-file
- `d.'
- Temporary file used by delta; contains the gotten body of the previous
version (which we run diff against). This filename is used by SCCS
in the same situation, but according to the SCCS manual pages, it
puts the output of
diff
in this file instead.
- `u.'
- Encoded version of the gotten file; created by delta.
All of the temporary files in the above table are created in the same
directory as the s-file, rather than in the current working directory.
Since these filenames are always fixed, it is important that the
permissions on the directory containing the SCCS file be secure;
otherwise you have a security vulnerability where a malicious user can
cause you to accidentally over-write files you own or have access to,
but they do not. If you are the super-user, they can use this feature
to overwrite any file on the system.
This document was generated
by build daemon on April, 13 2002
using texi2html