2 # spec file for package freeradius
5 %define _oracle_support 0
7 %define distroversion generic
8 %{!?suse_version:%define suse_version 0}
9 %{!?sles_version:%define sles_version 0}
11 %define distroversion suse%{suse_version}
14 %define distroversion sles%{sles_version}
17 # neededforbuild apache2-devel-packages cyrus-sasl-devel db-devel kerberos-devel-packages mysql-devel mysql-shared openldap2 openldap2-client openldap2-devel openssl openssl-devel pam-devel postgresql-devel postgresql-libs python python-devel unixODBC unixODBC-devel
19 BuildRequires: aaa_base acl attr bash bind-utils bison bzip2 coreutils cpio cpp cracklib cvs cyrus-sasl db diffutils e2fsprogs file filesystem fillup findutils flex gawk gdbm-devel gettext-devel glibc glibc-devel glibc-locale gpm grep groff gzip info insserv klogd less libacl libattr libcom_err libgcc libnscd libstdc++ libxcrypt libzio m4 make man mktemp module-init-tools ncurses ncurses-devel net-tools netcfg openldap2-client openssl pam pam-modules patch permissions popt procinfo procps psmisc pwdutils rcs readline sed strace sysvinit tar tcpd texinfo timezone unzip util-linux vim zlib zlib-devel apache2 apache2-devel apache2-prefork autoconf automake binutils cyrus-sasl-devel db-devel e2fsprogs-devel expat gcc gdbm gettext krb5 krb5-devel libapr0 libtool mysql-devel mysql-shared openldap2 openldap2-devel openssl-devel pam-devel perl postgresql postgresql-devel postgresql-libs python python-devel rpm unixODBC unixODBC-devel
23 Group: Productivity/Networking/Radius/Servers
25 Conflicts: radiusd-livingston radiusd-cistron icradius
27 Release: 0.%{distroversion}
28 URL: http://www.freeradius.org/
29 Summary: Very highly Configurable Radius-Server
30 Source0: %{name}-%{version}.tar.gz
31 %if %suse_version > 800
32 PreReq: /usr/sbin/useradd /usr/sbin/groupadd
33 PreReq: %insserv_prereq %fillup_prereq
35 BuildRoot: %{_tmppath}/%{name}-%{version}-build
37 %define apxs2 apxs2-prefork
38 %define apache2_sysconfdir %(%{apxs2} -q SYSCONFDIR)
41 The FreeRADIUS server has a number of features found in other servers,
42 and additional features not found in any other server. Rather than
43 doing a feature by feature comparison, we will simply list the features
44 of the server, and let you decide if they satisfy your needs.
46 Support for RFC and VSA Attributes Additional server configuration
47 attributes Selecting a particular configuration Authentication methods
54 Miquel van Smoorenburg <miquels@cistron.nl>
55 Alan DeKok <aland@ox.org>
56 Mike Machado <mike@innercite.com>
60 %if %_oracle_support == 1
62 BuildRequires: oracle-instantclient-basic oracle-instantclient-devel
63 Group: Productivity/Networking/Radius/Servers
64 Summary: FreeRADIUS Oracle database support
65 Requires: oracle-instantclient-basic
69 The FreeRADIUS server has a number of features found in other servers,
70 and additional features not found in any other server. Rather than
71 doing a feature by feature comparison, we will simply list the features
72 of the server, and let you decide if they satisfy your needs.
74 Support for RFC and VSA Attributes Additional server configuration
75 attributes Selecting a particular configuration Authentication methods
79 Group: Productivity/Networking/Radius/Servers
80 Summary: Web management for FreeRADIUS
81 Requires: http_daemon apache2-mod_php4 php4
82 Requires: php4-ldap php4-mysql perl-DateManip
83 Requires: php4-pgsql php4-session
86 %description dialupadmin
87 Dialup Admin supports users either in SQL (MySQL or PostgreSQL are
88 supported) or in LDAP. Apart from the web pages, it also includes a
89 number of scripts to make the administrator's life a lot easier.
95 Kostas Kalevras <kkalev at noc.ntua.gr>
96 Basilis Pappas <vpappas at noc.ntua.gr>
97 Panagiotis Christias <christia at noc.ntua.gr>
98 Thanasis Duitsis <aduitsis at noc.ntua.gr>
101 Group: Development/Libraries/C and C++
102 Summary: FreeRADIUS Development Files (static libs)
106 These are the static libraries for the FreeRADIUS package.
112 Miquel van Smoorenburg <miquels@cistron.nl>
113 Alan DeKok <aland@ox.org>
114 Mike Machado <mike@innercite.com>
120 rm -rf `find . -name CVS`
123 export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -DLDAP_DEPRECATED"
125 export CFLAGS="$CFLAGS -fPIC"
127 %if %suse_version > 1000
128 export CFLAGS="$CFLAGS -fstack-protector"
130 # workaround for SLES9
131 %if %suse_version < 920
132 ln -sf %{_libdir}/libmysqlclient_r.so.12 %{_libdir}/libmysqlclient_r.so
133 ln -sf %{_libdir}/libmysqlclient_r.so.12 %{_libdir}/mysql/libmysqlclient_r.so
136 --prefix=%{_prefix} \
137 --sysconfdir=%{_sysconfdir} \
138 --infodir=%{_infodir} \
139 --mandir=%{_mandir} \
140 --localstatedir=/var \
141 --libdir=/usr/lib/freeradius \
145 --disable-ltdl-install \
147 %if %suse_version <= 920
148 --enable-heimdal-krb5 \
149 --with-rlm-krb5-include-dir=/usr/include/heimdal/ \
151 --with-rlm-krb5-lib-dir=%{_libdir} \
152 %if %_oracle_support == 1
153 --with-rlm_sql_oracle \
154 --with-oracle-lib-dir=/usr/lib/oracle/10.1.0.3/client/lib/ \
156 --without-rlm_sql_oracle \
158 --enable-strict-dependencies \
161 # no parallel build possible
165 rm -rf $RPM_BUILD_ROOT
166 mkdir -p $RPM_BUILD_ROOT
167 mkdir -p $RPM_BUILD_ROOT/var/lib/radiusd
168 make install R=$RPM_BUILD_ROOT
169 # modify default configuration
170 RADDB=$RPM_BUILD_ROOT%{_sysconfdir}/raddb
171 perl -i -pe 's/^#user =.*$/user = radiusd/' $RADDB/radiusd.conf
172 perl -i -pe 's/^#group =.*$/group = radiusd/' $RADDB/radiusd.conf
173 ldconfig -n $RPM_BUILD_ROOT/usr/lib/freeradius
175 touch $RPM_BUILD_ROOT/var/log/radius/radutmp
177 install -d $RPM_BUILD_ROOT/etc/pam.d
178 install -d $RPM_BUILD_ROOT/etc/logrotate.d
179 %if %suse_version > 920
180 install -m 644 suse/radiusd-pam $RPM_BUILD_ROOT/etc/pam.d/radiusd
182 install -m 644 suse/radiusd-pam-old $RPM_BUILD_ROOT/etc/pam.d/radiusd
184 install -m 644 suse/radiusd-logrotate $RPM_BUILD_ROOT/etc/logrotate.d/radiusd
185 install -d -m 755 $RPM_BUILD_ROOT/etc/init.d
186 install -m 744 suse/rcradiusd $RPM_BUILD_ROOT/etc/init.d/radiusd
187 ln -sf ../../etc/init.d/radiusd $RPM_BUILD_ROOT/usr/sbin/rcradiusd
188 mv -v doc/README doc/README.doc
189 # install dialup_admin
190 DIALUPADMIN=$RPM_BUILD_ROOT%{_datadir}/dialup_admin
191 mkdir -p $DIALUPADMIN
192 cp -r dialup_admin/* $RPM_BUILD_ROOT%{_datadir}/dialup_admin
193 perl -i -pe 's/^#general_base_dir\:.*$/general_base_dir\: \/usr\/share\/freeradius-dialupadmin/' $DIALUPADMIN/conf/admin.conf
194 perl -i -pe 's/^#general_radiusd_base_dir\:.*$/general_radiusd_base_dir\: \//' $DIALUPADMIN/conf/admin.conf
195 perl -i -pe 's/^#general_snmpwalk_command\:.*$/general_snmpwalk_command\: \/usr\/bin\/snmpwalk/' $DIALUPADMIN/conf/admin.conf
196 perl -i -pe 's/^#general_snmpget_command\:.*$/general_snmpget_command\: \/usr\/bin\/snmpget/' $DIALUPADMIN/conf/admin.conf
198 install -d -m 755 $RPM_BUILD_ROOT%{apache2_sysconfdir}/conf.d
199 install -m 644 suse/admin-httpd.conf $RPM_BUILD_ROOT%{apache2_sysconfdir}/conf.d/radius.conf
200 # remove unneeded stuff
202 rm -f $RPM_BUILD_ROOT/etc/raddb/experimental.conf $RPM_BUILD_ROOT/usr/sbin/radwatch $RPM_BUILD_ROOT/usr/sbin/rc.radiusd
203 rm -rf $RPM_BUILD_ROOT/usr/share/doc/freeradius*
204 rm -rf $RPM_BUILD_ROOT/usr/lib/freeradius/*.la
207 /usr/sbin/groupadd -r radiusd 2> /dev/null || :
208 /usr/sbin/useradd -r -g radiusd -s /bin/false -c "Radius daemon" -d \
209 /var/lib/radiusd radiusd 2> /dev/null || :
212 %{fillup_and_insserv -s radiusd START_RADIUSD }
213 %if %suse_version > 820
216 %stop_on_removal radiusd
220 %if %suse_version > 820
221 %restart_on_update radiusd
226 rm -rf $RPM_BUILD_ROOT
229 %defattr(-,root,root)
231 %doc suse/README.SuSE
232 %doc doc/* LICENSE COPYRIGHT CREDITS README
234 %doc scripts/create-users.pl scripts/CA.* scripts/certs.sh
235 %doc scripts/users2mysql.pl scripts/xpextensions
236 %doc scripts/cryptpasswd scripts/exec-program-wait scripts/radiusd2ldif.pl
238 %config /etc/init.d/radiusd
239 %config /etc/pam.d/radiusd
240 %config /etc/logrotate.d/radiusd
242 %dir %attr(755,radiusd,radiusd) /var/lib/radiusd
245 %defattr(-,root,radiusd)
246 %config /etc/raddb/dictionary
247 %config(noreplace) /etc/raddb/acct_users
248 %config(noreplace) /etc/raddb/attrs
249 %attr(640,-,radiusd) %ghost %config(noreplace) /etc/raddb/clients
250 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/clients.conf
251 %config(noreplace) /etc/raddb/hints
252 %config(noreplace) /etc/raddb/huntgroups
253 %config(noreplace) /etc/raddb/ldap.attrmap
254 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/mssql.conf
255 %ghost %config(noreplace) /etc/raddb/naslist
256 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/naspasswd
257 %attr(640,-,radiusd) %ghost %config(noreplace) /etc/raddb/oraclesql.conf
258 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/postgresql.conf
259 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/sqlippool.conf
260 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/preproxy_users
261 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/proxy.conf
262 %config(noreplace) /etc/raddb/radiusd.conf
263 %ghost %config(noreplace) /etc/raddb/realms
264 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/snmp.conf
265 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/sql.conf
266 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/users
267 %config(noreplace) /etc/raddb/otp.conf
268 %attr(640,-,radiusd) /etc/raddb/otppasswd.sample
269 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/certs
270 %attr(640,-,radiusd) %config(noreplace) /etc/raddb/eap.conf
271 %attr(640,-,radiusd) /etc/raddb/example.pl
272 %attr(700,radiusd,radiusd) %dir /var/run/radiusd/
274 %defattr(-,root,root)
276 /usr/sbin/check-radiusd-config
280 %attr(755,root,root) %dir /usr/lib/freeradius
281 %attr(755,root,root) /usr/lib/freeradius/*.so*
283 %doc %{_mandir}/man1/*
284 %doc %{_mandir}/man5/*
285 %doc %{_mandir}/man8/*
287 %attr(755,root,root) %dir /usr/share/freeradius
288 /usr/share/freeradius/*
290 %attr(700,radiusd,radiusd) %dir /var/log/radius/
291 %attr(700,radiusd,radiusd) %dir /var/log/radius/radacct/
292 %attr(644,radiusd,radiusd) /var/log/radius/radutmp
294 %if %_oracle_support == 1
296 %defattr(-,root,root)
297 %attr(755,root,root) %dir /usr/lib/freeradius
298 %attr(755,root,root) /usr/lib/freeradius/rlm_sql_oracle*.so*
302 %defattr(-,root,root)
303 %dir %{_datadir}/dialup_admin/
304 %{_datadir}/dialup_admin/bin/
305 %{_datadir}/dialup_admin/doc/
306 %{_datadir}/dialup_admin/htdocs/
307 %{_datadir}/dialup_admin/html/
308 %{_datadir}/dialup_admin/lib/
309 %{_datadir}/dialup_admin/sql/
310 %dir %{_datadir}/dialup_admin/conf/
311 %config(noreplace) %{_datadir}/dialup_admin/conf/*
312 %config(noreplace) %{apache2_sysconfdir}/conf.d/radius.conf
313 %{_datadir}/dialup_admin/Changelog
314 %{_datadir}/dialup_admin/README
317 %defattr(-,root,root)
318 /usr/lib/freeradius/*.a
319 #%attr(644,root,root) /usr/lib/freeradius/*.la