DragonFly On-Line Manual Pages
dblist(8) DragonFly System Manager's Manual (dcc) dblist(8)
NAME
dblist - Database List Distributed Checksum Clearinghouse
SYNOPSIS
dblist [-vVHD] [-G on | off] [-h homedir]
[-s [server-ID][,server-addr][,server-port]]
[-C 'type h1 h2 h3 h4'] [-I server-ID] [-A dbaddr] [-L pathlen]
[-P pages] [-T timestamp] [file1 file2 ...]
DESCRIPTION
Dblist lists the contents of a DCC database as it does some consistency
checking.
-v lists more of the database. Additional information is produced with
additional -v arguments.
-V displays the version of the DCC database lister. Two or more -V
options show the options with which it was built.
-H turns off the listing of the hash table as well as the analysis of
the hash table. Determining the worst case and average lengths of
chains in the hash table can take a long time for a large database
on a small computer.
-D turns off the listing of the data or checksum records.
-G on
lists a greylist database.
-h homedir
overrides the default DCC home directory, /usr/local/dcc.
-s [server-ID][,server-addr][,server-port]
somewhat quiets the DCC server process, dccd(8), to get somewhat
more consistent results. server-ID must be in the
/usr/local/dcc/ids file. server-addr and server-port are the IP
address and UDP port at which the server process listens.
-C 'type h1 h2 h3 h4'
limits the listing to records containing that checksum or one of the
other checksums specified with -C. If the four hexadecimal values
h1 h2 h3 h4 are absent, records with the matching type will be
listed. If type is absent, any checksum with the four hexadecimal
values will be listed. If the hexadecimal values h1 h2 h3 h4 are
absent, all checksums of the specified type will be listed.
The alternate form
'server-ID {simple|commercial|ignore|rogue} at ID' can be used to
select server-ID records of some types.
As many as 16 checksums can be specified.
-I server-ID
limits the listing to records with that server-ID or one of the
other server-IDs specified with -I. As many as 16 server-IDs can be
specified.
-A dbaddr
excludes database records before dbaddr.
-L pathlen
excludes records with path lengths shorter than pathlen.
-P pages
ignores all but the last pages of the database.
-T timetamp
excludes records with other timestamps. A timestamp with a missing
microsecond value matches any record with that second. As many as
16 timestamps can be specified.
file1 file2 ...
are names of databases to be listed. The default is
/usr/local/dcc/dcc_db and its companion, /usr/local/dcc/dcc_db.hash.
When -G on is used, the default files are /usr/local/dcc/grey_db and
/usr/local/dcc/grey_db.hash.
By default, the sizes of the main file and the hash table as well as how
much they contain and values related to the performance of the hash are
displayed.
With a single -v, most of the mail database file and the contents of
memory mapped server flooding positions in the /usr/local/dcc/flod.map
file are listed. The listing starts with the serial number of the
database file which is when old entries were last removed from it by
dbclean(8) That is followed by similar lines showing the oldest timestamp
of checksums not expired by dbclean and of mail that is not "spam."
The flooding positions from the /usr/local/dcc/flod.map file are record
offsets or addresses in the main database file.
A typical record in the main database file looks like:
02/07/02 20:25:12.497032 5 1601 2fe5b94
path: 103<-101<-1601
Body 6 e2d3f96a c65aea01 3fece361 edff9ecf 2f21364 772d2
Fuz1 many 6ff56fe8 ffc312d7 a5fe8f13 12a537ae 2f21364 200a9
Fuz2 many fac882b8 03eea34f bd792c40 2fe6fd54 2f21364 72816
That example was received by a DCC server with server-ID 1601 at about
8:25 UTC on the evening of February 7, 2000. The report was about a mail
message set to 5 addressees. The report was then sent or `flooded' to
the server with server-ID 101 which in turn sent it to a server with
server-ID 103. That server sent it to the local DCC server. The record
is at the address 0x2fe5b94 in the database. The record contains 3
checksums. The simple checksum of the body of the message was 0xe2d3f96a
0xc65aea01 0x3fece361 0xedff9ecf The total number of recipients of
messages with this body checksum known in the database is 6, which
implies this checksum had been previously reported with a target count of
1. The previous report in the database of a message with this body
checksum is at 0x2f21364. The hash table chain for this body checksum is
computed to start at 0x772d2. This report included two fuzzy checksums.
Both have been previously reported as having been sent to many targets.
An asterisk (*) before the type of the checksum indicates that this
checksum is redundant. A report of many addressees makes all preceding
reports redundant.
The flooding of some database records is delayed, as shown by the string
delayed after the server-ID.
The string trimmed after the server-ID marks older reports that have had
uninteresting checksums removed. The string compressed after the server-
ID would indicate that this older report has been trimmed and compressed
with older reports.
With two -v arguments, records added to the database by dbclean(8) from
the server whitelist are also displayed.
Three -v arguments cause the hash table to be displayed. Three typical
hash table entries look like:
19b8: 19ee 19b7
19b9: 19c0 0 90120 Fuz1
19ba: 0 0 1b72300 Fuz1
The entry in slot number 0x19b8 is unused or free. Slot number 0x19b9 is
the start of a chain of collisions or entries with the same hash value of
0x19b9. The next slot in this chain is at 0x19c0. The corresponding
Fuz1
checksum is at 0x9012 in the database. The third slot at 0x19ba is also
that of a Fuz1 checksum, but it is not part of a hash chain and its
database record is at 0x1b72300.
FILES
/usr/local/dcc
is the DCC home directory containing data and control files.
dcc_db main file of DCC checksums.
grey_dcc_db main file of checksums used for greylisting.
dcc_db.hash database hash table for /usr/local/dcc/dcc_db.
grey_dcc_db.hash
database hash table for /usr/local/dcc/grey_dcc.
flod.map
grey_flod.map
memory mapped flooding positions.
SEE ALSO
cdcc(8), dcc(8), dbclean(8), dccd(8), dccifd(8), dccm(8), dccproc(8).
HISTORY
Implementation of dblist was started at Rhyolite Software, in 2000. This
document describes version 1.3.158.
DragonFly 6.5-DEVELOPMENT April 3, 2015 DragonFly 6.5-DEVELOPMENT