]> git.pld-linux.org Git - packages/bopm.git/blob - bopm.spec
- release 4
[packages/bopm.git] / bopm.spec
1 # TODO
2 # - ac that i don't know how to fix:
3 #+ autoconf
4 #configure.in:51: error: possibly undefined macro: AC_FUNC_SNPRINTF
5 #      If this token and others are legitimate, please use m4_pattern_allow.
6 #      See the Autoconf documentation.
7 #
8 #
9 # Conditional build:
10 %bcond_without  tests   # do not perform "make test"
11 %bcond_without  supervise       # install initscript instead of supervise
12 Summary:        Open proxy monitor and blocker, designed for use with ircds
13 Summary(pl.UTF-8):      Monitorowanie i blokowanie otwartych proxy do używania z ircd
14 Name:           bopm
15 Version:        3.1.3
16 Release:        4
17 License:        GPL
18 Group:          Applications/Communications
19 Source0:        http://static.blitzed.org/www.blitzed.org/bopm/files/%{name}-%{version}.tar.gz
20 # Source0-md5:  643c7090b32dfe09a38b5440b2c480e3
21 Source1:        %{name}.init
22 Source2:        %{name}.conf
23 Source3:        %{name}-supervise.tar.bz2
24 # Source3-md5:  247c0438a5e2860097d09a374a521151
25 Source4:        http://autoconf-archive.cryp.to/ac_func_snprintf.m4
26 # Source4-md5:  9a21dbeadbd731b324e7f740aadea697
27 Source5:        http://www.sfr-fresh.com/unix/www/cherokee-0.7.2.tar.gz:t/cherokee-0.7.2/m4/etr_socket_nsl.m4
28 # Source5-md5:  137b516e92db49874d3ed1dcf45ea4a9
29 Source6:        %{name}.tmpfiles
30 Patch0:         %{name}-DESTDIR.patch
31 Patch1:         %{name}-shared.patch
32 Patch2:         %{name}-cr-connect.patch
33 Patch3:         http://www.nedworks.org/bopm/%{name}.whitelists.3.1.2.diff
34 Patch4:         http://dgl.cx/2006/09/%{name}-conf-cmd.diff
35 URL:            http://wiki.blitzed.org/BOPM
36 BuildRequires:  autoconf
37 BuildRequires:  automake
38 BuildRequires:  bison
39 BuildRequires:  flex
40 BuildRequires:  libtool
41 BuildRequires:  rpmbuild(macros) >= 1.268
42 %{!?with_supervise:Requires(post,preun):        /sbin/chkconfig}
43 Requires(postun):       /usr/sbin/groupdel
44 Requires(postun):       /usr/sbin/userdel
45 Requires(pre):  /bin/id
46 Requires(pre):  /usr/bin/getgid
47 Requires(pre):  /usr/sbin/groupadd
48 Requires(pre):  /usr/sbin/useradd
49 Requires:       %{name}-libs = %{version}-%{release}
50 %{?with_supervise:Requires:     daemontools >= 0.76-5}
51 %{!?with_supervise:Requires:    rc-scripts >= 0.4.0.17}
52 Provides:       group(%{name})
53 Provides:       user(%{name})
54 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55
56 %undefine       __cxx
57 %define         _supervise      /etc/supervise/%{name}
58
59 %description
60 The Blitzed Open Proxy Monitor is designed to connect to an IRC server
61 and become an IRC operator. It then watches connect notices in order
62 to scan all connecting clients for open (insecure) proxies. Such
63 insecure proxies are commonly used for spamming, floods and other
64 abusive activities.
65
66 BOPM can detect WinGates, HTTP proxies, SOCKS 4/5 proxies and Cisco
67 routers with default passwords. BOPM also has support for checking
68 against a DNS-Based Blacklist (similar to MAPS RBL) and can be
69 configured to report new proxies back to the Blitzed Open Proxy
70 Monitoring project.
71
72 %description -l pl.UTF-8
73 Blitzed Open Proxy Monitor jest zaprojektowany tak, że łączy się z
74 serwerem IRC i staje operatorem. Następnie ogląda informacje o
75 połączeniach w celu skanowania wszystkich klientów pod kątem otwartych
76 (niebezpiecznych) proxy. Takie niebezpieczne proxy zwykle są używane
77 do spamowania, floodowania i innych nadużyć.
78
79 BOPM jest w stanie wykryć WinGates, proxy HTTP, proxy SOCKS 4/5 oraz
80 routery Cisco z domyślnymi hasłami. BOPM obsługuje także sprawdzanie
81 czarnych list opartych na DNS (takich jak MAPS RBL) i może być
82 skonfigurowany do zgłaszania nowych proxy z powrotem do projektu
83 Blitzed Open Proxy Monitoring.
84
85 %package libs
86 Summary:        libopm open proxy scanning library
87 Summary(pl.UTF-8):      Biblioteka libopm do szukania otwartych proxy
88 Group:          Libraries
89
90 %description libs
91 libopm open proxy scanning library.
92
93 %description libs -l pl.UTF-8
94 Biblioteka libopm do szukania otwartych proxy.
95
96 %package devel
97 Summary:        Header files for libopm library
98 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki libopm
99 Group:          Development/Libraries
100 Requires:       %{name}-libs = %{version}-%{release}
101
102 %description devel
103 This is the package containing the header files for libopm library.
104
105 %description devel -l pl.UTF-8
106 Ten pakiet zawiera pliki nagłówkowe biblioteki libopm.
107
108 %package static
109 Summary:        Static libopm library
110 Summary(pl.UTF-8):      Statyczna biblioteka libopm
111 Group:          Development/Libraries
112 Requires:       %{name}-devel = %{version}-%{release}
113
114 %description static
115 Static libopm library.
116
117 %description static -l pl.UTF-8
118 Statyczna biblioteka libopm.
119
120 %prep
121 %setup -q
122 %patch0 -p1
123 %patch1 -p1
124 %patch2 -p0
125 %patch3 -p0
126 cd src
127 %patch4 -p0
128
129 # we include contrib in %doc. cleanup it
130 find -name CVS | xargs -r rm -rf
131 rm -f contrib/bopm.spec
132
133 %build
134 install %{SOURCE4} .
135 install %{SOURCE5} .
136 %{__libtoolize}
137 %{__aclocal} -I .
138 %{__autoconf}
139 %{__autoheader}
140 %{__automake}
141 %configure \
142         --localstatedir=/var/log/%{name} \
143         --bindir=%{_sbindir}
144
145 %{__make}
146
147 %install
148 rm -rf $RPM_BUILD_ROOT
149 install -d $RPM_BUILD_ROOT/var/log/%{name}
150
151 %{__make} install \
152         DESTDIR=$RPM_BUILD_ROOT
153
154 %if %{with supervise}
155 install -d $RPM_BUILD_ROOT%{_supervise} \
156         $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
157
158 tar xf %{SOURCE3} -C $RPM_BUILD_ROOT%{_supervise}
159
160 install -d $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise
161 touch $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/lock
162 touch $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/status
163 mkfifo $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/control
164 mkfifo $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/ok
165
166 %else
167 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
168 %endif
169
170 install -d $RPM_BUILD_ROOT/var/run/%{name}
171 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
172 > $RPM_BUILD_ROOT/var/log/%{name}/bopm.log
173 > $RPM_BUILD_ROOT/var/log/%{name}/scan.log
174
175 install %{SOURCE6} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
176
177 rm $RPM_BUILD_ROOT%{_datadir}/bopm.conf.blitzed
178
179 %clean
180 rm -rf $RPM_BUILD_ROOT
181
182 %pre
183 %groupadd -g 151 %{name}
184 %useradd -u 151 -c "BOPM Daemon" -g %{name} %{name}
185
186 %post
187 %if %{with supervise}
188 if [ -d /service/%{name}/supervise ]; then
189         svc -t /service/%{name} /service/%{name}/log
190 fi
191 if [ "$1" = 1 ]; then
192         ln -snf %{_supervise} /service/%{name}
193 fi
194 %else
195 /sbin/chkconfig --add %{name}
196 %service %{name} restart "BOPM daemon"
197 %endif
198
199 %preun
200 if [ "$1" = "0" ]; then
201 %if %{with supervise}
202         if [ -d /service/%{name}/supervise ]; then
203                 cd /service/%{name}
204                 rm /service/%{name}
205                 svc -dx . log
206         fi
207 %else
208         %service %{name} stop
209         /sbin/chkconfig --del %{name}
210 %endif
211 fi
212
213 %postun
214 if [ "$1" = "0" ]; then
215         %userremove %{name}
216         %groupremove %{name}
217 fi
218
219 %post   libs -p /sbin/ldconfig
220 %postun libs -p /sbin/ldconfig
221
222 %files
223 %defattr(644,root,root,755)
224 %doc ChangeLog INSTALL README bopm.conf.sample bopm.conf.blitzed
225 %doc contrib/ network-bopm/
226 %attr(640,root,bopm) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
227 %attr(755,root,root) %{_sbindir}/%{name}
228
229 %if %{with supervise}
230 %attr(1755,root,root) %dir %{_supervise}
231 %attr(755,root,root) %{_supervise}/run
232 %attr(700,root,root) %dir %{_supervise}/supervise
233
234 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_supervise}/supervise/*
235 %attr(1755,root,root) %dir %{_supervise}/log
236 %attr(755,root,root) %{_supervise}/log/run
237 %attr(700,root,root) %dir %{_supervise}/log/supervise
238 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_supervise}/log/supervise/*
239 %else
240 %attr(754,root,root) /etc/rc.d/init.d/%{name}
241 %endif
242 /usr/lib/tmpfiles.d/%{name}.conf
243 %attr(770,root,bopm) %dir /var/run/%{name}
244 %attr(770,root,bopm) %dir /var/log/%{name}
245 %attr(640,bopm,bopm) %ghost /var/log/%{name}/bopm.log
246 %attr(640,bopm,bopm) %ghost /var/log/%{name}/scan.log
247
248 %files libs
249 %defattr(644,root,root,755)
250 %attr(755,root,root) %{_libdir}/libopm.so.*.*.*
251 %attr(755,root,root) %ghost %{_libdir}/libopm.so.0
252
253 %files devel
254 %defattr(644,root,root,755)
255 %{_includedir}/opm.h
256 %{_includedir}/opm_common.h
257 %{_includedir}/opm_error.h
258 %{_includedir}/opm_types.h
259 %{_libdir}/libopm.la
260 %{_libdir}/libopm.so
261
262 %files static
263 %defattr(644,root,root,755)
264 %{_libdir}/libopm.a
This page took 0.070302 seconds and 3 git commands to generate.