NAME
admin — create and
administer SCCS files (DEVELOPMENT)
SYNOPSIS
admin |
-i[name]
[-n] [-a login]
[-d flag] [-e login]
[-f flag] [-m mrlist]
[-r rel] [-t[name]
[-y[comment]file ...]
newfile |
admin |
-n [-a login]
[-d flag] [-e login]
[-f flag] [-m mrlist]
[-t[name]file ...]
[-y[comment]file ...]
newfile... |
admin |
[-a login] [-d flag] [-m mrlist] [-r rel] [-t[name]file ...] file... |
admin |
-h file... |
admin |
-z file... |
DESCRIPTION
The admin utility shall create new SCCS
files or change parameters of existing ones. If a named file does not exist,
it shall be created, and its parameters shall be initialized according to
the specified options. Parameters not initialized by an option shall be
assigned a default value. If a named file does exist, parameters
corresponding to specified options shall be changed, and other parameters
shall be left as is.
All SCCS filenames supplied by the application shall be of the
form s. filename. New SCCS files shall be given read-only
permission mode. Write permission in the parent directory is required to
create a file. All writing done by admin shall be to
a temporary x-file, named x. filename
(see get(1)) created with read-only mode if
admin is creating a new SCCS file, or created with
the same mode as that of the SCCS file if the file already exists. After
successful execution of admin, the SCCS file shall
be removed (if it exists), and the x-file shall be renamed
with the name of the SCCS file. This ensures that changes are made to the
SCCS file only if no errors occur.
The admin utility shall also use a
transient lock file (named z. filename), which is used to
prevent simultaneous updates to the SCCS file; see
get(1).
OPTIONS
The admin utility shall conform to XBD
V1_chap12(7), except that the -i,
-t, and -y options have
optional option-arguments. These optional option-arguments shall not be
presented as separate arguments. The following options are supported:
-n- Create a new SCCS file. When
-nis used without-i, the SCCS file shall be created with control information but without any file data. - -i[name]
- Specify the name of a file from which the text for a new SCCS file shall
be taken. The text constitutes the first delta of the file (see the
-roption for the delta numbering scheme). If the-ioption is used, but the name option-argument is omitted, the text shall be obtained by reading the standard input. If this option is omitted, the SCCS file shall be created with control information but without any file data. The-ioption implies the-noption. - -r SID
- Specify the SID of the initial delta to be inserted. This SID shall be a trunk SID; that is, the branch and sequence numbers shall be zero or missing. The level number is optional, and defaults to 1.
- -t[name]
- Specify the name of a file from which descriptive text for the SCCS file
shall be taken. In the case of existing SCCS files (neither
-inor-nis specified):- A
-toption without a name option-argument shall cause the removal of descriptive text (if any) currently in the SCCS file. - A
-toption with a name option-argument shall cause the text (if any) in the named file to replace the descriptive text (if any) currently in the SCCS file.
- A
- -f flag
- Specify a flag , and, possibly, a value for the flag , to be placed in the
SCCS file. Several
-foptions may be supplied on a singleadmincommand line. Implementations shall recognize the following flags and associated values:- b
- Allow use of the
-boption on a get command to create branch deltas. - cceil
- Specify the highest release (that is, ceiling), a number less than or equal to 9999, which may be retrieved by a get command for editing. The default value for an unspecified c flag shall be 9999.
- ffloor
- Specify the lowest release (that is, floor), a number greater than 0 but less than 9999, which may be retrieved by a get command for editing. The default value for an unspecified f flag shall be 1.
- dSID
- Specify the default delta number (SID) to be used by a get command.
- istr
- Treat the "No ID keywords" message issued by get or delta as a fatal error. In the absence of this flag, the message is only a warning. The message is issued if no SCCS identification keywords (see get ) are found in the text retrieved or stored in the SCCS file. If a value is supplied, the application shall ensure that the keywords exactly match the given string; however, the string shall contain a keyword, and no embedded <newline> characters.
- j
- Allow concurrent get commands for editing on the same SID of an SCCS file. This allows multiple concurrent updates to the same version of the SCCS file.
- llist
- Specify a list of releases to which deltas can no longer be made (that
is, get
-eagainst one of these locked releases fails). Conforming applications shall use the following syntax to specify a list . Implementations may accept additional forms as an extension: - n
- Cause delta to create a null delta in each of those
releases (if any) being skipped when a delta is made in a new release
(for example, in making delta 5.1 after delta 2.7, releases 3 and 4
are skipped). These null deltas shall serve as anchor points so that
branch deltas may later be created from them. The absence of this flag
shall cause skipped releases to be nonexistent in the SCCS file,
preventing branch deltas from being created from them in the future.
During the initial creation of an SCCS file, the n flag may be
ignored; that is, if the
-roption is used to set the release number of the initial SID to a value greater than 1, null deltas need not be created for the "skipped" releases. - qtext
- Substitute user-definable text for all occurrences of the % Q % keyword in the SCCS file text retrieved by get .
- mmod
- Specify the module name of the SCCS file substituted for all occurrences of the % M % keyword in the SCCS file text retrieved by get . If the m flag is not specified, the value assigned shall be the name of the SCCS file with the leading '.' removed.
- ttype
- Specify the type of module in the SCCS file substituted for all occurrences of the % Y % keyword in the SCCS file text retrieved by get .
- vpgm
- Cause delta to prompt for modification request (MR) numbers as the reason for creating a delta. The optional value specifies the name of an MR number validation program. (If this flag is set when creating an SCCS file, the application shall ensure that the m option is also used even if its value is null.)
- -d flag
- Remove (delete) the specified flag from an SCCS file. Several
-doptions may be supplied on a singleadmincommand. See the-foption for allowable flag names. (The l list flag gives a list of releases to be unlocked. See the-foption for further description of the l flag and the syntax of a list .) - -a login
- Specify a login name, or numerical group ID, to be added to the list of
users who may make deltas (changes) to the SCCS file. A group ID shall be
equivalent to specifying all login names common to that group ID. Several
-aoptions may be used on a singleadmincommand line. As many login s, or numerical group IDs, as desired may be on the list simultaneously. If the list of users is empty, then anyone may add deltas. If login or group ID is preceded by a '!' , the users so specified shall be denied permission to make deltas. - -e login
- Specify a login name, or numerical group ID, to be erased from the list of
users allowed to make deltas (changes) to the SCCS file. Specifying a
group ID is equivalent to specifying all login names common to that group
ID. Several
-eoptions may be used on a singleadmincommand line. - -y[comment]
- Insert the comment text into the SCCS file as a comment for the initial
delta in a manner identical to that of delta . In the
POSIX locale, omission of the
-yoption shall result in a default comment line being inserted in the form:"date and time created %s %s by %s", <date>, <time>, <login>
where < date > is expressed in the format of the date(1) utility's
%y/%m/%dconversion specification, < time > in the format of the date(1) utility's%Tconversion specification format, and < login > is the login name of the user creating the file. - -m mrlist
- Insert the list of modification request (MR) numbers into the SCCS file as the reason for creating the initial delta in a manner identical to delta . The application shall ensure that the v flag is set and the MR numbers are validated if the v flag has a value (the name of an MR number validation program). A diagnostic message shall be written if the v flag is not set or MR validation fails.
-h- Check the structure of the SCCS file and compare the newly computed checksum with the checksum that is stored in the SCCS file. If the newly computed checksum does not match the checksum in the SCCS file, a diagnostic message shall be written.
-z- Recompute the SCCS file checksum and store it in the first line of the
SCCS file (see the
-hoption above). Note that use of this option on a truly corrupted file may prevent future detection of the corruption.
OPERANDS
The following operands shall be supported:
- file
- A pathname of an existing SCCS file or a directory. If file is a
directory, the
adminutility shall behave as though each file in the directory were specified as a named file, except that non-SCCS files (last component of the pathname does not begin with s. ) and unreadable files shall be silently ignored. - newfile
- A pathname of an SCCS file to be created.
If exactly one file or
newfile operand appears, and it is
‘-’, the standard input shall be read;
each line of the standard input shall be taken to be the name of an SCCS
file to be processed. Non-SCCS files and unreadable files shall be silently
ignored.
STDIN
The standard input shall be a text file used only if
-i is specified without an option-argument or if a
file or
newfile
operand is specified as ‘-’. If the
first character of any standard input line is <SOH> in the POSIX
locale, the results are unspecified.
INPUT FILES
The existing SCCS files shall be text files of an unspecified format.
The application shall ensure that the file named by the
-i option's name option-argument
shall be a text file; if the first character of any line in this file is
<SOH> in the POSIX locale, the results are unspecified. If this file
contains more than 99999 lines, the number of lines recorded in the header
for this file shall be 99999 for this delta.
ENVIRONMENT VARIABLES
The following environment variables shall affect the execution of
admin:
LANG- Provide a default value for the internationalization variables that are unset or null. (See XBD Internationalization Variables for the precedence of internationalization variables used to determine the values of locale categories.)
LC_ALL- If set to a non-empty string value, override the values of all the other internationalization variables.
LC_CTYPE- Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multi-byte characters in arguments and input files).
LC_MESSAGES- Determine the locale that should be used to affect the format and contents
of diagnostic messages written to standard error and the contents of the
default
-ycomment. NLSPATH- Determine the location of message catalogs for the processing of LC_MESSAGES.
ASYNCHRONOUS EVENTS
Default.
STDOUT
Not used.
STDERR
The standard error shall be used only for diagnostic messages.
OUTPUT FILES
Any SCCS files created shall be text files of an unspecified format. During processing of a file, a locking z-file, as described in get(1), may be created and deleted.
EXTENDED DESCRIPTION
None.
EXIT STATUS
The following exit values shall be returned:
CONSEQUENCES OF ERRORS
Default.
APPLICATION USAGE
It is recommended that directories containing SCCS files be writable by the owner only, and that SCCS files themselves be read-only. The mode of the directories should allow only the owner to modify SCCS files contained in the directories. The mode of the SCCS files prevents any modification at all except by SCCS commands.
EXAMPLES
None.
RATIONALE
None.
FUTURE DIRECTIONS
None.
SEE ALSO
delta(1), get(1), prs(1), what(1)
XBD V1_chap08(7), V1_chap12(7)
CHANGE HISTORY
First released in Issue 2.
Issue 6
The normative text is reworded to avoid use of the term "must" for application requirements, and to emphasize the term "shall" for implementation requirements.
The grammar is updated.
The Open Group Base Resolution bwg2001-007 is applied, adding new text to the INPUT FILES section warning that the maximum lines recorded in the file is 99999.
The Open Group Base Resolution bwg2001-009 is applied, amending
the description of the -h option.