0
|
1 dblist(8) Distributed Checksum Clearinghouse dblist(8)
|
|
2
|
|
3 NNAAMMEE
|
|
4 ddbblliisstt -- Database List Distributed Checksum Clearinghouse
|
|
5
|
|
6 SSYYNNOOPPSSIISS
|
|
7 ddbblliisstt [--vvVVHHDD] [--GG _o_n | _o_f_f] [--hh _h_o_m_e_d_i_r]
|
|
8 [--ss [_s_e_r_v_e_r_-_I_D][_,_s_e_r_v_e_r_-_a_d_d_r][_,_s_e_r_v_e_r_-_p_o_r_t]]
|
|
9 [--CC _'_t_y_p_e _h_1 _h_2 _h_3 _h_4_'] [--II _s_e_r_v_e_r_-_I_D] [--AA _d_b_a_d_d_r] [--LL _p_a_t_h_l_e_n]
|
|
10 [--PP _p_a_g_e_s] [--TT _t_i_m_e_s_t_a_m_p] [_f_i_l_e_1 _f_i_l_e_2 _._._.]
|
|
11
|
|
12 DDEESSCCRRIIPPTTIIOONN
|
|
13 DDbblliisstt lists the contents of a DCC database as it does some consistency
|
|
14 checking.
|
|
15
|
|
16 --vv lists more of the database. Additional information is produced with
|
|
17 additional --vv arguments.
|
|
18
|
|
19 --VV displays the version of the DCC database lister.
|
|
20
|
|
21 --HH turns off the listing of the hash table as well as the analysis of
|
|
22 the hash table. Determining the worst case and average lengths of
|
|
23 chains in the hash table can take a long time for a large database
|
|
24 on a small computer.
|
|
25
|
|
26 --DD turns off the listing of the data or checksum records.
|
|
27
|
|
28 --GG _o_n
|
|
29 lists a greylist database.
|
|
30
|
|
31 --hh _h_o_m_e_d_i_r
|
|
32 overrides the default DCC home directory, _/_v_a_r_/_d_c_c.
|
|
33
|
|
34 --ss [_s_e_r_v_e_r_-_I_D][_,_s_e_r_v_e_r_-_a_d_d_r][_,_s_e_r_v_e_r_-_p_o_r_t]
|
|
35 somewhat quiets the DCC server process, dccd(8), to get somewhat
|
|
36 more consistent results. _s_e_r_v_e_r_-_I_D must be in the _i_d_s file.
|
|
37 _s_e_r_v_e_r_-_a_d_d_r and _s_e_r_v_e_r_-_p_o_r_t are the IP address and UDP port at which
|
|
38 the server process listens.
|
|
39
|
|
40 --CC _'_t_y_p_e _h_1 _h_2 _h_3 _h_4_'
|
|
41 limits the listing to records containing that checksum or one of the
|
|
42 other checksums specified with --CC. If the four hexadecimal values
|
|
43 _h_1 _h_2 _h_3 _h_4 are absent, records with the matching _t_y_p_e will be
|
|
44 listed. If _t_y_p_e is absent, any checksum with the four hexadecimal
|
|
45 values will be listed. As many as 16 checksums can be specified.
|
|
46
|
|
47 --II _s_e_r_v_e_r_-_I_D
|
|
48 limits the listing to records with that server-ID or one of the
|
|
49 other server-IDs specified with --II. As many as 16 server-IDs can be
|
|
50 specified.
|
|
51
|
|
52 --AA _d_b_a_d_d_r
|
|
53 excludes database records before _d_b_a_d_d_r.
|
|
54
|
|
55 --LL _p_a_t_h_l_e_n
|
|
56 excludes records with path lengths shorter than _p_a_t_h_l_e_n.
|
|
57
|
|
58 --PP _p_a_g_e_s
|
|
59 ignores all but the last _p_a_g_e_s of the database.
|
|
60
|
|
61 --TT _t_i_m_e_t_a_m_p
|
|
62 excludes records with other timestamps. A timestamp with a missing
|
|
63 microsecond value matches any record with that second. As many as
|
|
64 16 timestamps can be specified.
|
|
65
|
|
66 _f_i_l_e_1 _f_i_l_e_2 _._._.
|
|
67 are names of databases to be listed. The default is _d_c_c___d_b and its
|
|
68 companion, _d_c_c___d_b_._h_a_s_h in the DCC home directory.
|
|
69
|
|
70 By default, the sizes of the main file and the hash table as well as how
|
|
71 much they contain and values related to the performance of the hash are
|
|
72 displayed.
|
|
73
|
|
74 With a single --vv, most of the mail database file and the contents of mem-
|
|
75 ory mapped server flooding positions in the _f_l_o_d_._m_a_p file are listed.
|
|
76 The listing starts with the serial number of the database file which is
|
|
77 when old entries were last removed from it by dbclean(8) That is followed
|
|
78 by similar lines showing the oldest timestamp of checksums not expired by
|
|
79 dbclean and of mail that is not "spam."
|
|
80
|
|
81 The flooding positions from the _f_l_o_d_._m_a_p file are record offsets or
|
|
82 addresses in the main database file.
|
|
83
|
|
84 A typical record in the main database file looks like:
|
|
85
|
|
86 02/07/02 20:25:12.497032 5 auth 1601 2fe5b94
|
|
87 path: 103<-101<-1601
|
|
88 Body 6 e2d3f96a c65aea01 3fece361 edff9ecf 2f21364 772d2
|
|
89 Fuz1 many 6ff56fe8 ffc312d7 a5fe8f13 12a537ae 2f21364 200a9
|
|
90 Fuz2 many fac882b8 03eea34f bd792c40 2fe6fd54 2f21364 72816
|
|
91
|
|
92 That example was received by a DCC server with server-ID _1_6_0_1 at about
|
|
93 8:25 UTC on the evening of February 7, 2000. The report was about a mail
|
|
94 message set to _5 addressees. The report was from a client that presented
|
|
95 a client-ID and matching password that the server recognized or authenti-
|
|
96 cated. The report was then sent or `flooded' to the server with server-
|
|
97 ID _1_0_1 which in turn sent it to a server with server-ID _1_0_3. That server
|
|
98 sent it to the local DCC server. The record is at the address _0_x_2_f_e_5_b_9_4
|
|
99 in the database. The record contains 3 checksums. The simple checksum
|
|
100 of the body of the message was _e_2_d_3_f_9_6_a _c_6_5_a_e_a_0_1 _3_f_e_c_e_3_6_1 _e_d_f_f_9_e_c_f The
|
|
101 total number of recipients of messages with this body checksum known in
|
|
102 the database is _6, which implies this checksum had been previously
|
|
103 reported with a target count of 1. The previous report in the database
|
|
104 of a message with this body checksum is at _0_x_2_f_2_1_3_6_4. The hash table
|
|
105 entry for this body checksum is at _0_x_7_7_2_d_2. This report included two
|
|
106 fuzzy checksums. Both have been previously reported as having been sent
|
|
107 to _m_a_n_y targets.
|
|
108
|
|
109 An asterisk (*) before the name of the checksum would indicate that a
|
|
110 later record in the database makes this checksum redundant. A report of
|
|
111 _m_a_n_y addressees makes all preceding reports redundant.
|
|
112
|
|
113 The string _t_r_i_m_m_e_d after the server-ID marks older reports that have had
|
|
114 uninteresting checksums removed. The string _c_o_m_p_r_e_s_s_e_d after the server-
|
|
115 ID would indicate that this older report has been trimmed and compressed
|
|
116 with older reports.
|
|
117
|
|
118 With two --vv arguments, records added to the database by dbclean(8) from
|
|
119 the server whitelist are also displayed.
|
|
120
|
|
121 Three --vv arguments cause the hash table to be displayed. Three typical
|
|
122 hash table entries look like:
|
|
123
|
|
124 19b8: 19ee 19b7
|
|
125 19b9: 19c0 0 90120 Fuz1
|
|
126 19ba: 0 0 1b72300 Fuz1
|
|
127
|
|
128 The entry in slot number _0_x_1_9_b_8 is unused or free. Slot number _0_x_1_9_b_9 is
|
|
129 the start of a chain of collisions or entries with the same hash value of
|
|
130 0x19b9. The next slot in this chain is at _0_x_1_9_c_0. The corresponding
|
|
131 _F_u_z_1
|
|
132 checksum is at _0_x_9_0_1_2 in the database. The third slot at _0_x_1_9_b_a is also
|
|
133 that of a _F_u_z_1 checksum, but it is not part of a hash chain and its data-
|
|
134 base record is at _0_x_1_b_7_2_3_0_0.
|
|
135
|
|
136 FFIILLEESS
|
|
137 /var/dcc is the DCC home directory containing data and control files.
|
|
138 dcc_db grey_dcc_db
|
|
139 main file of checksums.
|
|
140 dcc_db.hash grey_dcc_db.hash
|
|
141 database hash table.
|
|
142 flod.map grey_flod.map
|
|
143 memory mapped flooding positions.
|
|
144
|
|
145 SSEEEE AALLSSOO
|
|
146 cdcc(8), dcc(8), dbclean(8), dccd(8), dccifd(8), dccm(8), dccproc(8).
|
|
147
|
|
148 HHIISSTTOORRYY
|
|
149 Implementation of ddbblliisstt was started at Rhyolite Software, in 2000. This
|
|
150 document describes version 1.3.103.
|
|
151
|
|
152 February 26, 2009
|