1 %define _oracle_support 0
3 %define distroversion generic
4 %{!?suse_version:%define suse_version 0}
5 %{!?sles_version:%define sles_version 0}
7 %define distroversion suse%{suse_version}
10 %define distroversion sles%{sles_version}
15 Group: Productivity/Networking/Radius/Servers
17 Conflicts: radiusd-livingston radiusd-cistron icradius
19 Release: 0.%{distroversion}
20 URL: http://www.freeradius.org/
21 Summary: Very highly Configurable Radius-Server
22 Conflicts: freeradius-snapshot
23 Source: %{name}-%{version}.tar.bz2
25 %if 0%{?suse_version} > 800
26 PreReq: /usr/sbin/useradd /usr/sbin/groupadd
27 PreReq: %insserv_prereq %fillup_prereq
30 BuildRoot: %{_tmppath}/%{name}-%{version}-build
32 %define apxs2 /usr/sbin/apxs2-prefork
33 %define apache2_sysconfdir %(%{apxs2} -q SYSCONFDIR)
35 %if %{?suse_version:1}0
36 BuildRequires: apache2-devel
38 BuildRequires: httpd-devel
41 %if 0%{?sles_version} < 10
43 BuildRequires: bind-libs
45 BuildRequires: cyrus-sasl-devel
46 BuildRequires: db-devel
47 BuildRequires: e2fsprogs-devel
48 BuildRequires: gcc-c++
49 BuildRequires: gdbm-devel
50 BuildRequires: gettext-devel
51 BuildRequires: glibc-devel
52 BuildRequires: libtool
53 BuildRequires: mysql-devel
54 BuildRequires: ncurses-devel
55 BuildRequires: net-snmp-devel
56 BuildRequires: openldap2-devel
57 BuildRequires: openssl-devel
58 BuildRequires: pam-devel
60 BuildRequires: postgresql-devel
61 BuildRequires: python-devel
63 BuildRequires: unixODBC-devel
64 BuildRequires: zlib-devel
66 %if 0%{?suse_version} > 910
67 BuildRequires: krb5-devel
70 %if 0%{?suse_version} > 930
72 BuildRequires: libcom_err
73 %if %suse_version > 1000
74 BuildRequires: libapr1-devel
76 #BuildRequires: libapr0-devel
81 %if 0%{?fedora_version} > 4
82 BuildRequires: syslog-ng
87 The FreeRADIUS server has a number of features found in other servers,
88 and additional features not found in any other server. Rather than
89 doing a feature by feature comparison, we will simply list the features
90 of the server, and let you decide if they satisfy your needs.
92 Support for RFC and VSA Attributes Additional server configuration
93 attributes Selecting a particular configuration Authentication methods
99 Miquel van Smoorenburg <miquels@cistron.nl>
100 Alan DeKok <aland@ox.org>
101 Mike Machado <mike@innercite.com>
105 %if %_oracle_support == 1
107 BuildRequires: oracle-instantclient-basic oracle-instantclient-devel
108 Group: Productivity/Networking/Radius/Servers
109 Summary: FreeRADIUS Oracle database support
110 Requires: oracle-instantclient-basic
114 The FreeRADIUS server has a number of features found in other servers,
115 and additional features not found in any other server. Rather than
116 doing a feature by feature comparison, we will simply list the features
117 of the server, and let you decide if they satisfy your needs.
119 Support for RFC and VSA Attributes Additional server configuration
120 attributes Selecting a particular configuration Authentication methods
124 Group: Productivity/Networking/Radius/Servers
125 Summary: Web management for FreeRADIUS
126 Requires: http_daemon
127 Requires: perl-DateManip
128 %if 0%{?suse_version} > 1000
129 Requires: apache2-mod_php5
135 Requires: apache2-mod_php4
140 Requires: php4-session
144 %description dialupadmin
145 Dialup Admin supports users either in SQL (MySQL or PostgreSQL are
146 supported) or in LDAP. Apart from the web pages, it also includes a
147 number of scripts to make the administrator's life a lot easier.
153 Kostas Kalevras <kkalev at noc.ntua.gr>
154 Basilis Pappas <vpappas at noc.ntua.gr>
155 Panagiotis Christias <christia at noc.ntua.gr>
156 Thanasis Duitsis <aduitsis at noc.ntua.gr>
159 Group: Development/Libraries/C and C++
160 Summary: FreeRADIUS Development Files (static libs)
164 These are the static libraries for the FreeRADIUS package.
170 Miquel van Smoorenburg <miquels@cistron.nl>
171 Alan DeKok <aland@ox.org>
172 Mike Machado <mike@innercite.com>
178 rm -rf `find . -name CVS`
182 export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -DLDAP_DEPRECATED"
184 export CFLAGS="$CFLAGS -fPIC"
186 %if 0%{?suse_version} > 1000
187 export CFLAGS="$CFLAGS -fstack-protector"
190 --prefix=%{_prefix} \
191 --sysconfdir=%{_sysconfdir} \
192 --infodir=%{_infodir} \
193 --mandir=%{_mandir} \
194 --localstatedir=/var \
195 --libdir=%{_libdir}/freeradius \
199 %if 0%{?suse_version} <= 920
200 --without-rlm_sql_mysql \
202 %if %{?suse_version:1}0
203 %if %suse_version > 910
204 %if %suse_version <= 920
205 --enable-heimdal-krb5 \
206 --with-rlm-krb5-include-dir=/usr/include/heimdal/ \
208 --with-rlm-krb5-lib-dir=%{_libdir} \
213 %if %_oracle_support == 1
214 --with-rlm_sql_oracle \
215 --with-oracle-lib-dir=%{_libdir}/oracle/10.1.0.3/client/lib/ \
217 --without-rlm_sql_oracle \
219 --enable-strict-dependencies \
221 --with-modules="rlm_sqlippool" \
222 --disable-ltdl-install \
228 rm -rf $RPM_BUILD_ROOT
229 mkdir -p $RPM_BUILD_ROOT
230 mkdir -p $RPM_BUILD_ROOT/var/lib/radiusd
231 make install R=$RPM_BUILD_ROOT
232 # modify default configuration
233 RADDB=$RPM_BUILD_ROOT%{_sysconfdir}/raddb
234 perl -i -pe 's/^#user =.*$/user = radiusd/' $RADDB/radiusd.conf
235 perl -i -pe 's/^#group =.*$/group = radiusd/' $RADDB/radiusd.conf
237 touch $RPM_BUILD_ROOT/var/log/radius/radutmp
239 install -d $RPM_BUILD_ROOT/etc/pam.d
240 install -d $RPM_BUILD_ROOT/etc/logrotate.d
241 %if 0%{?suse_version} > 920
242 install -m 644 suse/radiusd-pam $RPM_BUILD_ROOT/etc/pam.d/radiusd
244 install -m 644 suse/radiusd-pam-old $RPM_BUILD_ROOT/etc/pam.d/radiusd
246 install -m 644 suse/radiusd-logrotate $RPM_BUILD_ROOT/etc/logrotate.d/radiusd
247 install -d -m 755 $RPM_BUILD_ROOT/etc/init.d
248 install -m 744 suse/rcradiusd $RPM_BUILD_ROOT/etc/init.d/radiusd
249 ln -sf ../../etc/init.d/radiusd $RPM_BUILD_ROOT/usr/sbin/rcradiusd
250 mv -v doc/README doc/README.doc
251 # install dialup_admin
252 DIALUPADMIN=$RPM_BUILD_ROOT%{_datadir}/dialup_admin
253 mkdir -p $DIALUPADMIN
254 cp -r dialup_admin/* $RPM_BUILD_ROOT%{_datadir}/dialup_admin
255 perl -i -pe 's/^#general_base_dir\:.*$/general_base_dir\: \/usr\/share\/freeradius-dialupadmin/' $DIALUPADMIN/conf/admin.conf
256 perl -i -pe 's/^#general_radiusd_base_dir\:.*$/general_radiusd_base_dir\: \//' $DIALUPADMIN/conf/admin.conf
257 perl -i -pe 's/^#general_snmpwalk_command\:.*$/general_snmpwalk_command\: \/usr\/bin\/snmpwalk/' $DIALUPADMIN/conf/admin.conf
258 perl -i -pe 's/^#general_snmpget_command\:.*$/general_snmpget_command\: \/usr\/bin\/snmpget/' $DIALUPADMIN/conf/admin.conf
260 install -d -m 755 $RPM_BUILD_ROOT%{apache2_sysconfdir}/conf.d
261 install -m 644 suse/admin-httpd.conf $RPM_BUILD_ROOT%{apache2_sysconfdir}/conf.d/radius.conf
262 # remove unneeded stuff
264 rm -f $RPM_BUILD_ROOT/etc/raddb/experimental.conf $RPM_BUILD_ROOT/usr/sbin/radwatch $RPM_BUILD_ROOT/usr/sbin/rc.radiusd
265 rm -rf $RPM_BUILD_ROOT/usr/share/doc/freeradius*
266 rm -rf $RPM_BUILD_ROOT/%{_libdir}/freeradius/*.la
269 /usr/sbin/groupadd -r radiusd 2> /dev/null || :
270 /usr/sbin/useradd -r -g radiusd -s /bin/false -c "Radius daemon" -d \
271 /var/lib/radiusd radiusd 2> /dev/null || :
275 # Modify old installs to look for /usr/lib64/freeradius
276 #libdir32=${%{_libdir}%%64}/freeradius
277 /usr/bin/perl -i -pe "s:/usr/lib/freeradius:/usr/lib64/freeradius:" /etc/raddb/radiusd.conf
280 %{fillup_and_insserv -s radiusd START_RADIUSD }
281 %if 0%{?suse_version} > 820
284 %stop_on_removal radiusd
288 %if 0%{?suse_version} > 820
289 %restart_on_update radiusd
294 rm -rf $RPM_BUILD_ROOT
297 %defattr(-,root,root)
299 %doc suse/README.SuSE
300 %doc doc/* LICENSE COPYRIGHT CREDITS README
302 %doc scripts/create-users.pl scripts/CA.* scripts/certs.sh
303 %doc scripts/users2mysql.pl scripts/xpextensions
304 %doc scripts/cryptpasswd scripts/exec-program-wait scripts/radiusd2ldif.pl
306 %config /etc/init.d/radiusd
307 %config /etc/pam.d/radiusd
308 %config /etc/logrotate.d/radiusd
310 %dir %attr(755,radiusd,radiusd) /var/lib/radiusd
313 %defattr(-,root,radiusd)
314 %config /etc/raddb/dictionary
315 %config(noreplace) /etc/raddb/acct_users
316 %config(noreplace) /etc/raddb/attrs
317 %attr(640,-,radiusd) %ghost %config(noreplace) /etc/raddb/clients
318 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/clients.conf
319 %config(noreplace) /etc/raddb/hints
320 %config(noreplace) /etc/raddb/huntgroups
321 %config(noreplace) /etc/raddb/ldap.attrmap
322 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/mssql.conf
323 %ghost %config(noreplace) /etc/raddb/naslist
324 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/naspasswd
325 %attr(640,-,radiusd) %ghost %config(noreplace) /etc/raddb/oraclesql.conf
326 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/postgresql.conf
327 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/sqlippool.conf
328 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/preproxy_users
329 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/proxy.conf
330 %config(noreplace) /etc/raddb/radiusd.conf
331 %ghost %config(noreplace) /etc/raddb/realms
332 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/snmp.conf
333 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/sql.conf
334 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/users
335 %config(noreplace) /etc/raddb/otp.conf
336 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/certs
337 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/eap.conf
338 %attr(640,-,radiusd) /etc/raddb/example.pl
339 %attr(700,radiusd,radiusd) %dir /var/run/radiusd/
341 %defattr(-,root,root)
343 /usr/sbin/check-radiusd-config
347 %attr(755,root,root) %dir %{_libdir}/freeradius
348 %attr(755,root,root) %{_libdir}/freeradius/*.so*
350 %doc %{_mandir}/man1/*
351 %doc %{_mandir}/man5/*
352 %doc %{_mandir}/man8/*
354 %attr(755,root,root) %dir /usr/share/freeradius
355 /usr/share/freeradius/*
357 %attr(700,radiusd,radiusd) %dir /var/log/radius/
358 %attr(700,radiusd,radiusd) %dir /var/log/radius/radacct/
359 %attr(644,radiusd,radiusd) /var/log/radius/radutmp
361 %if %_oracle_support == 1
363 %defattr(-,root,root)
364 %attr(755,root,root) %dir %{_libdir}/freeradius
365 %attr(755,root,root) %{_libdir}/freeradius/rlm_sql_oracle*.so*
369 %defattr(-,root,root)
370 %dir %{_datadir}/dialup_admin/
371 %{_datadir}/dialup_admin/bin/
372 %{_datadir}/dialup_admin/doc/
373 %{_datadir}/dialup_admin/htdocs/
374 %{_datadir}/dialup_admin/html/
375 %{_datadir}/dialup_admin/lib/
376 %{_datadir}/dialup_admin/sql/
377 %dir %{_datadir}/dialup_admin/conf/
378 %config(noreplace) %{_datadir}/dialup_admin/conf/*
379 %config(noreplace) %{apache2_sysconfdir}/conf.d/radius.conf
380 %{_datadir}/dialup_admin/Changelog
381 %{_datadir}/dialup_admin/README
384 %defattr(-,root,root)
385 %{_libdir}/freeradius/*.a
386 #%attr(644,root,root) %{_libdir}/freeradius/*.la