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