NAME
fwtmp, wtmpfix — manipulate connect accounting records
SYNOPSIS
/usr/sbin/acct/fwtmp
[-icX]
/usr/sbin/acct/wtmpfix
[files]
DESCRIPTION
fwtmp
fwtmp
reads from the standard input and writes to the standard output,
converting binary records of the type found in
wtmps
to formatted ASCII records.
The ASCII version is useful to enable editing, via
ed(1),
bad records or for general purpose maintenance of the file.
The argument
-ic
is used to denote that input is in ASCII
form, and output is to be written in binary form.
The arguments
i
and
c
are independent, respectively specifying ASCII
input and binary output.
Therefor,
-i
is an ASCII to ASCII copy and
-c
is a binary to binary copy.
-X
should be used for reading
wtmps-likerecords.
If
-X
is not used,
utmp-like
structure is read.
wtmpfix
wtmpfix
examines the standard input or named files in
wtmps
format, corrects the time/date stamps to make the
entries consistent, and writes to the standard output.
A
-
can be used in place of
files
to indicate the standard input.
If time/date corrections are not performed,
acctcon1
will fault when it encounters certain date-change records.
Each time the date is set,
a pair of date change records is written to
WTMPS_FILE.
The first record is the old date denoted by the string
old time
placed in the line field and the flag
OLD_TIME
placed in the type field of the
utmps
structure.
The second record specifies the new date,
and is denoted by the string
new time
placed in the line field and the flag
NEW_TIME
placed in the type field.
wtmpfix
uses these records to synchronize all time stamps in the file.
wtmpfix
nullifies date change records when writing to the standard output
by setting the time field of the
utmps
structure in the old date change record
equal to the time field in the new date change record.
This prevents
wtmpfix
and
acctcon1
from factoring in a date change record pair more than once.
In addition to correcting time/date stamps,
wtmpfix
checks the validity of the name field to ensure that it consists
solely of alphanumeric characters or spaces.
If it encounters a name that is considered invalid,
it changes the login name to
INVALID
and writes a diagnostic to the standard error.
This minimizes the risk that
acctcon1
will fail when processing connect accounting records.
DIAGNOSTICS
wtmpfix
generates the following diagnostics messages:
Cannot make temporary: xxx failed to make temp file
Input truncated at offset: xxx missing half of date pair
New date expected at offset: xxx missing half of date pair
Cannot read from temp: xxx some error reading
Bad file at offset: xxx ut_line entry not digit, alpha, nor | or {
(First character only checked.)
Out of core: malloc fails. (Saves table of date changes.)
No dtab: software error (Rarely seen, if ever.)
WARNINGS
fwtmp
generates no errors, even on garbage input.
FILES
/usr/include/utmp.h
/var/adm/wtmp
/var/adm/wtmps
SEE ALSO
ed(1),
acct(1M),
acctcms(1M),
acctcom(1M),
acctcon(1M),
acctmerg(1M),
acctprc(1M),
acctsh(1M),
runacct(1M),
acct(2),
acct(4),
utmp(4),
wtmps(4).
STANDARDS CONFORMANCE
fwtmp: SVID2, SVID3
wtmpfix: SVID2, SVID3