]> git.pld-linux.org Git - packages/dcc-dccd.git/blob - dcc-dccd.spec
- dropped pre-cvs changelog
[packages/dcc-dccd.git] / dcc-dccd.spec
1 Summary:        Distributed Checksum Clearinghouse, anti-spam tool
2 Summary(pl.UTF-8):      Narzędzie anty-spamowe bazujące na sumach kontrolnych (DCC)
3 Name:           dcc-dccd
4 Version:        1.2.50
5 Release:        1
6 License:        BSD-like
7 Group:          Networking
8 Source0:        http://www.dcc-servers.net/dcc/source/%{name}-%{version}.tar.Z
9 # Source0-md5:  676b17dca43a3dabe22c057a6cfdde77
10 URL:            http://www.dcc-servers.net/
11 BuildRequires:  fhs-compliance
12 BuildRequires:  rpmbuild(macros) >= 1.202
13 BuildRequires:  using-special-registered-not-regular-user
14 Requires(post,preun):   /sbin/chkconfig
15 Requires(postun):       /usr/sbin/userdel
16 Requires(pre):  /usr/sbin/useradd
17 Provides:       user(dcc)
18 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
19
20 %define         dccdir  /var/lib/dcc
21 %define         cgidir  /srv/httpd/cgi-bin
22
23 %description
24 Distributed Checksum Clearinghouse or DCC is a cooperative,
25 distributed system intended to detect "bulk" mail or mail sent to many
26 people. It allows individuals receiving a single mail message to
27 determine that many other people have been sent essentially identical
28 copies of the message and so reject the message. It can identify some
29 unsolicited bulk mail using "spam traps" and other detectors, but that
30 is not its focus.
31
32 The DCC can be viewed as a tool for end users to enforce their right
33 to "opt-in" to streams of bulk mail by refusing all bulk mail except
34 from sources in a "white list." White lists are generally the
35 responsibility of DCC clients, since only they know which bulk mail
36 they solicited.
37
38 %description -l pl.UTF-8
39 DCC (Distributed Checksum Clearinghouse) jest kooperatywnym,
40 rozproszonym systemem mającym na celu wykrywanie masowej poczty lub
41 poczty wysłanej do wielu ludzi. Pozwala jednostkom otrzymującym
42 pojedynczy list określić, jak wielu innych otrzymało dokładnie
43 identyczne kopie tej wiadomości i na tej podstawie odrzucić ją. Może
44 zidentyfikować niechcianą masową pocztę przy użyciu "pułapek
45 antyspamowych" i innych wykrywaczy, ale to nie jest podstawowym celem.
46
47 DCC można odbierać jako narzędzie dla użytkowników końcowych,
48 zapewniające im prawo do przeciwstawienia się zalewowi masowej poczty
49 przez odrzucenie wszystkich śmieci oprócz źródeł z "białej listy". Za
50 białe listy odpowiadają klienci DCC, jako że tylko oni wiedzą, jaką
51 masową pocztę zamawiali.
52
53 %package client
54 Summary:        Tools to access a DCC server
55 Summary(pl.UTF-8):      Narzędzia dostępowe dla serwera DCC
56 Group:          Networking
57 Requires:       %{name} = %{version}-%{release}
58
59 %description client
60 Distributed Checksum Clearinghouse or DCC is a cooperative,
61 distributed system intended to detect "bulk" mail or mail sent to many
62 people. It allows individuals receiving a single mail message to
63 determine that many other people have been sent essentially identical
64 copies of the message and so reject the message. It can identify some
65 unsolicited bulk mail using "spam traps" and other detectors, but that
66 is not its focus.
67
68 The DCC can be viewed as a tool for end users to enforce their right
69 to "opt-in" to streams of bulk mail by refusing all bulk mail except
70 from sources in a "white list." White lists are generally the
71 responsibility of DCC clients, since only they know which bulk mail
72 they solicited.
73
74 %description client -l pl.UTF-8
75 DCC (Distributed Checksum Clearinghouse) jest kooperatywnym,
76 rozproszonym systemem mającym na celu wykrywanie masowej poczty lub
77 poczty wysłanej do wielu ludzi. Pozwala jednostkom otrzymującym
78 pojedynczy list określić, jak wielu innych otrzymało dokładnie
79 identyczne kopie tej wiadomości i na tej podstawie odrzucić ją. Może
80 zidentyfikować niechcianą masową pocztę przy użyciu "pułapek
81 antyspamowych" i innych wykrywaczy, ale to nie jest podstawowym celem.
82
83 DCC można odbierać jako narzędzie dla użytkowników końcowych,
84 zapewniające im prawo do przeciwstawienia się zalewowi masowej poczty
85 przez odrzucenie wszystkich śmieci oprócz źródeł z "białej listy". Za
86 białe listy odpowiadają klienci DCC, jako że tylko oni wiedzą, jaką
87 masową pocztę zamawiali.
88
89 %package server
90 Summary:        DCC Server
91 Summary(pl.UTF-8):      Serwer DCC
92 Group:          Networking
93 Requires:       %{name} = %{version}-%{release}
94
95 %description server
96 Distributed Checksum Clearinghouse or DCC is a cooperative,
97 distributed system intended to detect "bulk" mail or mail sent to many
98 people. It allows individuals receiving a single mail message to
99 determine that many other people have been sent essentially identical
100 copies of the message and so reject the message. It can identify some
101 unsolicited bulk mail using "spam traps" and other detectors, but that
102 is not its focus.
103
104 The DCC can be viewed as a tool for end users to enforce their right
105 to "opt-in" to streams of bulk mail by refusing all bulk mail except
106 from sources in a "white list." White lists are generally the
107 responsibility of DCC clients, since only they know which bulk mail
108 they solicited.
109
110 %description server -l pl.UTF-8
111 DCC (Distributed Checksum Clearinghouse) jest kooperatywnym,
112 rozproszonym systemem mającym na celu wykrywanie masowej poczty lub
113 poczty wysłanej do wielu ludzi. Pozwala jednostkom otrzymującym
114 pojedynczy list określić, jak wielu innych otrzymało dokładnie
115 identyczne kopie tej wiadomości i na tej podstawie odrzucić ją. Może
116 zidentyfikować niechcianą masową pocztę przy użyciu "pułapek
117 antyspamowych" i innych wykrywaczy, ale to nie jest podstawowym celem.
118
119 DCC można odbierać jako narzędzie dla użytkowników końcowych,
120 zapewniające im prawo do przeciwstawienia się zalewowi masowej poczty
121 przez odrzucenie wszystkich śmieci oprócz źródeł z "białej listy". Za
122 białe listy odpowiadają klienci DCC, jako że tylko oni wiedzą, jaką
123 masową pocztę zamawiali.
124
125 %package cgi
126 Summary:        CGI scripts for managing mail delivery on a DCC enabled server
127 Summary(pl.UTF-8):      Skrypty CGI do obsługi dostarczania poczty na serwerze DCC
128 Group:          Networking
129 Requires:       %{name} = %{version}-%{release}
130
131 %description cgi
132 Example set of CGI scripts to allow users to point-and-click manage
133 their own DCC whitelists and thus what is delivered to them. Allows
134 overriding of site level lists. The scripts give controlled access to
135 the whitelists which are otherwise in protected directory space (owned
136 by dcc).
137
138 NB these scripts need configured after installation.
139
140 %description cgi -l pl.UTF-8
141 Przykładowy zestaw skryptów CGI pozwalających użytkownikom na klikane
142 zarządzenie ich białymi listami DCC, a więc i tym, co dostają. Pozwala
143 przykrywać listy dotyczące serwera. Skrypty dają dostęp do białych
144 list, które normalnie są w zabezpieczonym katalogu (którego
145 właścicielem jest DCC).
146
147 Te skrypty wymagają konfiguracji po zainstalowaniu.
148
149 %prep
150 %setup -q
151
152 %build
153 CFLAGS="%{rpmcflags}"; export CFLAGS
154 LDFLAGS="%{rpmldflags}"; export LDFLAGS
155 ./configure \
156         --bindir=%{_bindir} \
157         --libexecdir=%{_libexecdir} \
158         --mandir=%{_mandir} \
159         --homedir=%{dccdir} \
160         --with-uid=99 \
161         --with-cgibin=%{cgidir} \
162         --with-rundir=%{_var}/run \
163         --with-db-memory=32
164
165 %{__make}
166 %{__make} -C dccifd/dccif-test
167
168 %install
169 rm -rf $RPM_BUILD_ROOT
170
171 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
172 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{cron.daily,httpd}
173 install -d $RPM_BUILD_ROOT/var/run/dcc
174 install -d $RPM_BUILD_ROOT%{dccdir}/{log,userdirs/{local,esmtp,cyrus,procmail}}
175 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_mandir},%{_libdir}}
176 install -d $RPM_BUILD_ROOT%{_includedir}/dcc
177
178 INST_UID="$( id -u )" INST_GID="$( id -g )"; export INST_UID INST_GID
179
180 %{makeinstall} \
181         MANOWN=$INST_UID \
182         MANGRP=$INST_GID \
183         DCC_SUID=$INST_UID \
184         DCC_OWN=$INST_UID \
185         DCC_GRP=$INST_GID \
186         BINOWN=$INST_UID \
187         GRP=$INST_GID \
188         INSTALL="install -C" \
189         INST_BINDIR=$RPM_BUILD_ROOT%{cgidir} \
190         DCC_HOMEDIR=$RPM_BUILD_ROOT%{dccdir} \
191         DCC_CGIBINDIR=$RPM_BUILD_ROOT%{cgidir} \
192         DCC_LIBEXECDIR=$RPM_BUILD_ROOT%{_sbindir} \
193         DCC_BINDIR=$RPM_BUILD_ROOT%{_sbindir} \
194         BINDIR=$RPM_BUILD_ROOT%{_bindir} \
195         MANDIR=$RPM_BUILD_ROOT%{_mandir}/man
196
197 install misc/cron-dccd $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/dccd
198 install misc/rcDCC $RPM_BUILD_ROOT/etc/rc.d/init.d/dccd
199 install homedir/flod $RPM_BUILD_ROOT%{dccdir}/flod
200
201 # move some binaries in place, wierd stuff...
202 for i in dbclean dblist dccd dccifd dccsight wlist; do
203         mv -f $RPM_BUILD_ROOT%{_bindir}/$i $RPM_BUILD_ROOT%{_sbindir}
204 done
205
206 # install extras
207 install dccifd/dccif-test/dccif-test $RPM_BUILD_ROOT%{_sbindir}
208 install dccifd/dccif-test/dccif-test.pl $RPM_BUILD_ROOT%{_sbindir}
209 install dccifd/dccif.pl $RPM_BUILD_ROOT%{_sbindir}
210
211 # Set some initial logging, but no rejections
212 perl -p -i -e "s/BRAND=\$/BRAND=%{version}-%{release}/ ; s/DCCM_LOG_AT=\$/\$&10/ ; " \
213         $RPM_BUILD_ROOT%{dccdir}/dcc_conf
214
215 # prepare for docs inclusion
216 cp misc/README README.misc
217 cp homedir/README README.homedir
218 cp cgi-bin/README README.cgi-bin
219
220 # install devel files
221 install dccd/*.h $RPM_BUILD_ROOT%{_includedir}/dcc
222 install dcclib/*.h $RPM_BUILD_ROOT%{_includedir}/dcc
223 install include/*.h $RPM_BUILD_ROOT%{_includedir}/dcc
224 install srvrlib/*.h $RPM_BUILD_ROOT%{_includedir}/dcc
225 install dcclib/libdcc.a $RPM_BUILD_ROOT%{_libdir}
226 install srvrlib/libsrvr.a $RPM_BUILD_ROOT%{_libdir}
227 install thrlib/libthr.a $RPM_BUILD_ROOT%{_libdir}
228
229 # house cleaning
230 rm -f $RPM_BUILD_ROOT/var/www/dcc-bin/README
231 rm -f $RPM_BUILD_ROOT%{_sbindir}/rcDCC
232 rm -f $RPM_BUILD_ROOT%{_sbindir}/cron-dccd
233 rm -f $RPM_BUILD_ROOT%{_sbindir}/logger
234 rm -f $RPM_BUILD_ROOT%{_sbindir}/updatedcc
235
236 %clean
237 rm -rf $RPM_BUILD_ROOT
238
239 %pre
240 # TODO register userid in uid_gid.db.txt
241 %useradd -u XXX -d %{dccdir} -r dcc
242
243 %postun
244 if [ $1 = 0 ]; then
245         %userremove dcc
246 fi
247
248 %post
249 /sbin/chkconfig --add dccd
250 umask 022
251 /usr/bin/cdcc info > %{dccdir}/map.txt
252
253 %post cgi
254 echo The scripts need configured and added into your web configuration.
255 echo see %{dccdir}/cgi-bin/README
256
257 %preun
258 if [ $1 = 0 ]; then
259         /sbin/chkconfig --del dccd || :
260         /etc/rc.d/init.d/dccd stop || :
261 fi
262
263 %files
264 %defattr(644,root,root,755)
265 %doc CHANGES FAQ.html FAQ.txt INSTALL.html INSTALL.txt LICENSE cdcc.html
266 %doc dbclean.html dblist.html dccd.html dcc.html dccproc.html
267 %doc dccsight.html homedir/flod homedir/ids homedir/map.txt homedir/README
268 %doc misc/dcc.m4 misc/dccdnsbl.m4 misc/hackmc
269 #%doc dccm.html
270 %dir %{dccdir}
271 %dir %{dccdir}/log
272 %dir %{dccdir}/userdirs/local
273 %dir %{dccdir}/userdirs/cyrus
274 %dir %{dccdir}/userdirs/procmail
275 %dir %{dccdir}/userdirs/esmtp
276 %dir /var/run/dcc
277 %config(noreplace) %verify(not md5 mtime size) %{dccdir}/dcc_conf
278 %config(noreplace) %verify(not md5 mtime size) %{dccdir}/whiteclnt
279 %config(noreplace) %verify(not md5 mtime size) %{dccdir}/whitecommon
280 %config(noreplace) %verify(not md5 mtime size) %{dccdir}/whitelist
281 %config(noreplace) %verify(not md5 mtime size) %{dccdir}/ids
282 %config(noreplace) %verify(not md5 mtime size) %{dccdir}/flod
283 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{dccdir}/map
284 #%config(noreplace) %verify(not size mtime md5) %{dccdir}/dcc_db
285 #%config(noreplace) %verify(not size mtime md5) %{dccdir}/dcc_db.hash
286 %{dccdir}/map.txt
287 %{dccdir}/grey_flod
288 %{dccdir}/grey_whitelist
289
290 %files client
291 %defattr(644,root,root,755)
292 %attr(4755,root,root) %{_bindir}/cdcc
293 %attr(4755,root,root) %{_bindir}/dccproc
294 %{_mandir}/man8/cdcc.8*
295 %{_mandir}/man8/dccproc.8*
296
297 %files server
298 %defattr(644,root,root,755)
299 %attr(754,root,root) /etc/rc.d/init.d/dccd
300 %attr(750,root,root) /etc/cron.daily/dccd
301 %attr(4755,root,root) %{_sbindir}/dccsight
302 %attr(755,root,root) %{_sbindir}/dbclean
303 %attr(755,root,root) %{_sbindir}/dblist
304 %attr(755,root,root) %{_sbindir}/dcc-stats-collect
305 %attr(755,root,root) %{_sbindir}/dcc-stats-graph
306 %attr(755,root,root) %{_sbindir}/dcc-stats-init
307 %attr(755,root,root) %{_sbindir}/dccd
308 %attr(755,root,root) %{_sbindir}/dccif-test
309 %attr(755,root,root) %{_sbindir}/dccif-test.pl
310 %attr(755,root,root) %{_sbindir}/dccif.pl
311 %attr(755,root,root) %{_sbindir}/dccifd
312 %attr(755,root,root) %{_sbindir}/fetch-testmsg-whitelist
313 %attr(755,root,root) %{_sbindir}/hackmc
314 %attr(755,root,root) %{_sbindir}/newwebuser
315 %attr(755,root,root) %{_sbindir}/wlist
316 # sendmail stuff
317 #%attr(755,root,root) %{_sbindir}/dccm
318 #%{_datadir}/sendmail-cf/feature/dcc.m4
319 #%{_datadir}/sendmail-cf/feature/dccdnsbl.m4
320 %attr(755,root,root) %{_sbindir}/start-dccd
321 %attr(755,root,root) %{_sbindir}/start-dccifd
322 %attr(755,root,root) %{_sbindir}/start-dccm
323 %attr(755,root,root) %{_sbindir}/start-grey
324 %attr(755,root,root) %{_sbindir}/stats-get
325 %attr(755,root,root) %{_sbindir}/stop-dccd
326 %{_mandir}/man8/dbclean.8*
327 %{_mandir}/man8/dblist.8*
328 %{_mandir}/man8/dcc.8*
329 %{_mandir}/man8/dccd.8*
330 %{_mandir}/man8/dccifd.8*
331 %{_mandir}/man8/dccm.8*
332 %{_mandir}/man8/dccsight.8*
333
334 %files cgi
335 %defattr(644,root,root,755)
336 %{cgidir}/chgpasswd
337 %{cgidir}/common
338 %{cgidir}/edit-whiteclnt
339 %{cgidir}/http2https
340 %{cgidir}/list-log
341 %{cgidir}/list-msg
342 %{cgidir}/README
343 %{cgidir}/webuser-notify
This page took 0.080493 seconds and 3 git commands to generate.