Run the tests.
[freeradius.git] / redhat / freeradius.spec
1 Summary: High-performance and highly configurable free RADIUS server
2 Name: freeradius
3 Version: 2.2.0
4 Release: 1%{?dist}
5 License: GPLv2+ and LGPLv2+
6 Group: System Environment/Daemons
7 URL: http://www.freeradius.org/
8
9 Source0: ftp://ftp.freeradius.org/pub/radius/freeradius-server-%{version}.tar.bz2
10 Source100: freeradius-radiusd-init
11 Source102: freeradius-logrotate
12 Source103: freeradius-pam-conf
13
14 Patch1: freeradius-cert-config.patch
15
16 Obsoletes: freeradius-devel
17 Obsoletes: freeradius-libs
18
19 %define docdir %{_docdir}/freeradius-%{version}
20 %define initddir %{?_initddir:%{_initddir}}%{!?_initddir:%{_initrddir}}
21
22 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
23
24 BuildRequires: autoconf
25 BuildRequires: gdbm-devel
26 BuildRequires: libtool
27 BuildRequires: libtool-ltdl-devel
28 BuildRequires: openssl-devel
29 BuildRequires: pam-devel
30 BuildRequires: zlib-devel
31 BuildRequires: net-snmp-devel
32 BuildRequires: net-snmp-utils
33 BuildRequires: readline-devel
34 BuildRequires: libpcap-devel
35
36 Requires(pre): shadow-utils glibc-common
37 Requires(post): /sbin/chkconfig
38 Requires(preun): /sbin/chkconfig
39
40 %description
41 The FreeRADIUS Server Project is a high performance and highly configurable
42 GPL'd free RADIUS server. The server is similar in some respects to
43 Livingston's 2.0 server.  While FreeRADIUS started as a variant of the
44 Cistron RADIUS server, they don't share a lot in common any more. It now has
45 many more features than Cistron or Livingston, and is much more configurable.
46
47 FreeRADIUS is an Internet authentication daemon, which implements the RADIUS
48 protocol, as defined in RFC 2865 (and others). It allows Network Access
49 Servers (NAS boxes) to perform authentication for dial-up users. There are
50 also RADIUS clients available for Web servers, firewalls, Unix logins, and
51 more.  Using RADIUS allows authentication and authorization for a network to
52 be centralized, and minimizes the amount of re-configuration which has to be
53 done when adding or deleting new users.
54
55 %package utils
56 Group: System Environment/Daemons
57 Summary: FreeRADIUS utilities
58 Requires: %{name} = %{version}-%{release}
59 Requires: libpcap >= 0.9.4
60
61 %description utils
62 The FreeRADIUS server has a number of features found in other servers,
63 and additional features not found in any other server. Rather than
64 doing a feature by feature comparison, we will simply list the features
65 of the server, and let you decide if they satisfy your needs.
66
67 Support for RFC and VSA Attributes Additional server configuration
68 attributes Selecting a particular configuration Authentication methods
69
70 %package ldap
71 Summary: LDAP support for freeradius
72 Group: System Environment/Daemons
73 Requires: %{name} = %{version}-%{release}
74 BuildRequires: openldap-devel
75
76 %description ldap
77 This plugin provides the LDAP support for the FreeRADIUS server project.
78
79 %package krb5
80 Summary: Kerberos 5 support for freeradius
81 Group: System Environment/Daemons
82 Requires: %{name} = %{version}-%{release}
83 BuildRequires: krb5-devel
84
85 %description krb5
86 This plugin provides the Kerberos 5 support for the FreeRADIUS server project.
87
88 %package perl
89 Summary: Perl support for freeradius
90 Group: System Environment/Daemons
91 Requires: %{name} = %{version}-%{release}
92 Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
93 %{?fedora:BuildRequires: perl-devel}
94 %if 0%{?rhel} <= 5
95 BuildRequires: perl
96 %endif
97 %if 0%{?rhel} >= 6
98 BuildRequires: perl-devel
99 %endif
100 BuildRequires: perl(ExtUtils::Embed)
101
102 %description perl
103 This plugin provides the Perl support for the FreeRADIUS server project.
104
105 %package python
106 Summary: Python support for freeradius
107 Group: System Environment/Daemons
108 Requires: %{name} = %{version}-%{release}
109 BuildRequires: python-devel
110
111 %description python
112 This plugin provides the Python support for the FreeRADIUS server project.
113
114 %package mysql
115 Summary: MySQL support for freeradius
116 Group: System Environment/Daemons
117 Requires: %{name} = %{version}-%{release}
118 BuildRequires: mysql-devel
119
120 %description mysql
121 This plugin provides the MySQL support for the FreeRADIUS server project.
122
123 %package postgresql
124 Summary: Postgresql support for freeradius
125 Group: System Environment/Daemons
126 Requires: %{name} = %{version}-%{release}
127 BuildRequires: postgresql-devel
128
129 %description postgresql
130 This plugin provides the postgresql support for the FreeRADIUS server project.
131
132 %package unixODBC
133 Summary: Unix ODBC support for freeradius
134 Group: System Environment/Daemons
135 Requires: %{name} = %{version}-%{release}
136 BuildRequires: unixODBC-devel
137
138 %description unixODBC
139 This plugin provides the unixODBC support for the FreeRADIUS server project.
140
141
142 %prep
143 %setup -q -n freeradius-server-%{version}
144 %patch1 -p1 -b .cert-config
145 # Some source files mistakenly have execute permissions set
146 find $RPM_BUILD_DIR/freeradius-server-%{version} \( -name '*.c' -o -name '*.h' \) -a -perm /0111 -exec chmod a-x {} +
147
148 %build
149 %ifarch s390 s390x
150 export CFLAGS="$RPM_OPT_FLAGS -fPIC"
151 %else
152 export CFLAGS="$RPM_OPT_FLAGS -fpic"
153 %endif
154
155 %configure \
156         --libdir=%{_libdir}/freeradius \
157         --with-system-libtool \
158         --disable-ltdl-install \
159         --with-gnu-ld \
160         --with-threads \
161         --with-thread-pool \
162         --with-docdir=%{docdir} \
163         --with-rlm-sql_postgresql-include-dir=/usr/include/pgsql \
164         --with-rlm-sql-postgresql-lib-dir=%{_libdir} \
165         --with-rlm-sql_mysql-include-dir=/usr/include/mysql \
166         --with-mysql-lib-dir=%{_libdir}/mysql \
167         --with-unixodbc-lib-dir=%{_libdir} \
168         --with-rlm-dbm-lib-dir=%{_libdir} \
169         --with-rlm-krb5-include-dir=/usr/kerberos/include \
170         --with-modules="rlm_wimax" \
171         --without-rlm_eap_ikev2 \
172         --without-rlm_sql_iodbc \
173         --without-rlm_sql_firebird \
174         --without-rlm_sql_db2 \
175         --without-rlm_sql_oracle
176
177 %if "%{_lib}" == "lib64"
178 perl -pi -e 's:sys_lib_search_path_spec=.*:sys_lib_search_path_spec="/lib64 /usr/lib64 /usr/local/lib64":' libtool
179 %endif
180
181 make
182
183 %install
184 rm -rf $RPM_BUILD_ROOT
185 mkdir -p $RPM_BUILD_ROOT/var/run/radiusd
186 mkdir -p $RPM_BUILD_ROOT/var/lib/radiusd
187 # fix for bad libtool bug - can not rebuild dependent libs and bins
188 #FIXME export LD_LIBRARY_PATH=$RPM_BUILD_ROOT/%{_libdir}
189 make install R=$RPM_BUILD_ROOT
190 # modify default configuration
191 RADDB=$RPM_BUILD_ROOT%{_sysconfdir}/raddb
192 perl -i -pe 's/^#user =.*$/user = radiusd/'   $RADDB/radiusd.conf
193 perl -i -pe 's/^#group =.*$/group = radiusd/' $RADDB/radiusd.conf
194 # logs
195 mkdir -p $RPM_BUILD_ROOT/var/log/radius/radacct
196 touch $RPM_BUILD_ROOT/var/log/radius/{radutmp,radius.log}
197
198 install -D -m 755 %{SOURCE100} $RPM_BUILD_ROOT/%{initddir}/radiusd
199 install -D -m 644 %{SOURCE102} $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/radiusd
200 install -D -m 644 %{SOURCE103} $RPM_BUILD_ROOT/%{_sysconfdir}/pam.d/radiusd
201
202 # remove unneeded stuff
203 rm -rf doc/00-OLD
204 rm -f $RPM_BUILD_ROOT/usr/sbin/rc.radiusd
205 rm -rf $RPM_BUILD_ROOT/%{_libdir}/freeradius/*.a
206 rm -rf $RPM_BUILD_ROOT/%{_libdir}/freeradius/*.la
207 rm -rf $RPM_BUILD_ROOT/%{_sysconfdir}/raddb/sql/mssql
208 rm -rf $RPM_BUILD_ROOT/%{_sysconfdir}/raddb/sql/oracle
209
210 # remove header files, we don't ship a devel package and the 
211 # headers have multilib conflicts
212 rm -rf $RPM_BUILD_ROOT/%{_includedir}
213
214 # remove unsupported config files
215 rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/raddb/experimental.conf
216
217 # install doc files omitted by standard install
218 for f in COPYRIGHT CREDITS INSTALL README; do
219     cp $f $RPM_BUILD_ROOT/%{docdir}
220 done
221 cp LICENSE $RPM_BUILD_ROOT/%{docdir}/LICENSE.gpl
222 cp src/lib/LICENSE $RPM_BUILD_ROOT/%{docdir}/LICENSE.lgpl
223 cp src/LICENSE.openssl $RPM_BUILD_ROOT/%{docdir}/LICENSE.openssl
224
225 # add Red Hat specific documentation
226 cat >> $RPM_BUILD_ROOT/%{docdir}/REDHAT << EOF
227
228 Red Hat, RHEL, Fedora, and CentOS specific information can be found on the
229 FreeRADIUS Wiki in the Red Hat FAQ.
230
231 http://wiki.freeradius.org/guide/Red_Hat_FAQ
232
233 Please reference that document.
234
235 EOF
236
237 %clean
238 rm -rf $RPM_BUILD_ROOT
239
240
241
242 # Make sure our user/group is present prior to any package or subpackage installation
243 %pre
244 getent group  radiusd >/dev/null || /usr/sbin/groupadd -r -g 95 radiusd
245 getent passwd radiusd >/dev/null || /usr/sbin/useradd  -r -g radiusd -u 95 -c "radiusd user" -s /sbin/nologin radiusd > /dev/null 2>&1
246 exit 0
247
248 %post
249 if [ $1 = 1 ]; then
250   /sbin/chkconfig --add radiusd
251   if [ ! -e /etc/raddb/certs/server.pem ]; then
252     /sbin/runuser -g radiusd -c 'umask 007; /etc/raddb/certs/bootstrap' > /dev/null 2>&1 || :
253   fi
254 fi
255
256 %preun
257 if [ $1 = 0 ]; then
258   /sbin/service radiusd stop > /dev/null 2>&1
259   /sbin/chkconfig --del radiusd
260 fi
261
262
263 %postun
264 if [ $1 -ge 1 ]; then
265   /sbin/service radiusd condrestart >/dev/null 2>&1 || :
266 fi
267
268
269 %files
270 %defattr(-,root,root)
271 %doc %{docdir}/
272 %config(noreplace) %{_sysconfdir}/pam.d/radiusd
273 %config(noreplace) %{_sysconfdir}/logrotate.d/radiusd
274 %{initddir}/radiusd
275 %dir %attr(755,radiusd,radiusd) /var/lib/radiusd
276 # configs
277 %dir %attr(755,root,radiusd) /etc/raddb
278 %defattr(-,root,radiusd)
279 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/filter/*
280 %attr(644,root,radiusd) %config(noreplace) /etc/raddb/dictionary
281 %config(noreplace) /etc/raddb/acct_users
282 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/clients.conf
283 %config(noreplace) /etc/raddb/hints
284 %config(noreplace) /etc/raddb/huntgroups
285 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/preproxy_users
286 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/proxy.conf
287 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/radiusd.conf
288 %dir %attr(750,root,radiusd) /etc/raddb/sql
289 #%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sql/oracle/*
290 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/users
291 %dir %attr(770,root,radiusd) /etc/raddb/certs
292 %config(noreplace) /etc/raddb/certs/Makefile
293 %config(noreplace) /etc/raddb/certs/README
294 %config(noreplace) /etc/raddb/certs/xpextensions
295 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/certs/*.cnf
296 %attr(750,root,radiusd) /etc/raddb/certs/bootstrap
297 %dir %attr(750,root,radiusd) /etc/raddb/sites-available
298 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/*
299 %dir %attr(750,root,radiusd) /etc/raddb/sites-enabled
300 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-enabled/*
301 %config(noreplace) %attr(640,root,radiusd) /etc/raddb/example.pl
302 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/policy.conf
303 %dir %attr(750,root,radiusd) /etc/raddb/policy.d
304 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/policy.d/*
305 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/templates.conf
306 %dir %attr(750,root,radiusd) /etc/raddb/modules
307 %dir %attr(750,root,radiusd) /etc/raddb/mods-available
308 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/*
309 %dir %attr(750,root,radiusd) /etc/raddb/mods-enabled
310 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-enabled/*
311 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/modules/*
312 %dir %attr(755,radiusd,radiusd) /var/run/radiusd/
313 # binaries
314 %defattr(-,root,root)
315 /usr/sbin/checkrad
316 /usr/sbin/raddebug
317 /usr/sbin/radiusd
318 /usr/sbin/radwatch
319 /usr/sbin/radmin
320 # man-pages
321 %doc %{_mandir}/man5/acct_users.5.gz
322 %doc %{_mandir}/man5/clients.conf.5.gz
323 %doc %{_mandir}/man5/dictionary.5.gz
324 %doc %{_mandir}/man5/radiusd.conf.5.gz
325 %doc %{_mandir}/man5/radrelay.conf.5.gz
326 %doc %{_mandir}/man5/rlm_always.5.gz
327 %doc %{_mandir}/man5/rlm_attr_filter.5.gz
328 %doc %{_mandir}/man5/rlm_attr_rewrite.5.gz
329 %doc %{_mandir}/man5/rlm_chap.5.gz
330 %doc %{_mandir}/man5/rlm_counter.5.gz
331 %doc %{_mandir}/man5/rlm_detail.5.gz
332 %doc %{_mandir}/man5/rlm_digest.5.gz
333 %doc %{_mandir}/man5/rlm_expr.5.gz
334 %doc %{_mandir}/man5/rlm_files.5.gz
335 %doc %{_mandir}/man5/rlm_mschap.5.gz
336 %doc %{_mandir}/man5/rlm_pap.5.gz
337 %doc %{_mandir}/man5/rlm_passwd.5.gz
338 %doc %{_mandir}/man5/rlm_realm.5.gz
339 %doc %{_mandir}/man5/rlm_sql.5.gz
340 %doc %{_mandir}/man5/rlm_sql_log.5.gz
341 %doc %{_mandir}/man5/rlm_unix.5.gz
342 %doc %{_mandir}/man5/unlang.5.gz
343 %doc %{_mandir}/man5/users.5.gz
344 %doc %{_mandir}/man8/raddebug.8.gz
345 %doc %{_mandir}/man8/radiusd.8.gz
346 %doc %{_mandir}/man8/radmin.8.gz
347 %doc %{_mandir}/man8/radrelay.8.gz
348 %doc %{_mandir}/man8/radwatch.8.gz
349 # dictionaries
350 %dir %attr(755,root,root) /usr/share/freeradius
351 /usr/share/freeradius/*
352 # logs
353 %dir %attr(700,radiusd,radiusd) /var/log/radius/
354 %dir %attr(700,radiusd,radiusd) /var/log/radius/radacct/
355 %ghost %attr(644,radiusd,radiusd) /var/log/radius/radutmp
356 %ghost %attr(600,radiusd,radiusd) /var/log/radius/radius.log
357 # RADIUS shared libs
358 %attr(755,root,root) %{_libdir}/freeradius/lib*.so*
359 # RADIUS Loadable Modules
360 %dir %attr(755,root,root) %{_libdir}/freeradius
361 #%attr(755,root,root) %{_libdir}/freeradius/rlm_*.so*
362 %{_libdir}/freeradius/rlm_always.so
363 %{_libdir}/freeradius/rlm_always-%{version}.so
364 %{_libdir}/freeradius/rlm_attr_filter.so
365 %{_libdir}/freeradius/rlm_attr_filter-%{version}.so
366 %{_libdir}/freeradius/rlm_attr_rewrite.so
367 %{_libdir}/freeradius/rlm_attr_rewrite-%{version}.so
368 %{_libdir}/freeradius/rlm_chap.so
369 %{_libdir}/freeradius/rlm_chap-%{version}.so
370 %{_libdir}/freeradius/rlm_checkval.so
371 %{_libdir}/freeradius/rlm_checkval-%{version}.so
372 %{_libdir}/freeradius/rlm_copy_packet.so
373 %{_libdir}/freeradius/rlm_copy_packet-%{version}.so
374 %{_libdir}/freeradius/rlm_counter.so
375 %{_libdir}/freeradius/rlm_counter-%{version}.so
376 %{_libdir}/freeradius/rlm_dbm.so
377 %{_libdir}/freeradius/rlm_dbm-%{version}.so
378 %{_libdir}/freeradius/rlm_detail.so
379 %{_libdir}/freeradius/rlm_detail-%{version}.so
380 %{_libdir}/freeradius/rlm_digest.so
381 %{_libdir}/freeradius/rlm_digest-%{version}.so
382 %{_libdir}/freeradius/rlm_dynamic_clients.so
383 %{_libdir}/freeradius/rlm_dynamic_clients-%{version}.so
384 %{_libdir}/freeradius/rlm_eap.so
385 %{_libdir}/freeradius/rlm_eap-%{version}.so
386 %{_libdir}/freeradius/rlm_eap_gtc.so
387 %{_libdir}/freeradius/rlm_eap_gtc-%{version}.so
388 %{_libdir}/freeradius/rlm_eap_leap.so
389 %{_libdir}/freeradius/rlm_eap_leap-%{version}.so
390 %{_libdir}/freeradius/rlm_eap_md5.so
391 %{_libdir}/freeradius/rlm_eap_md5-%{version}.so
392 %{_libdir}/freeradius/rlm_eap_mschapv2.so
393 %{_libdir}/freeradius/rlm_eap_mschapv2-%{version}.so
394 %{_libdir}/freeradius/rlm_eap_peap.so
395 %{_libdir}/freeradius/rlm_eap_peap-%{version}.so
396 %{_libdir}/freeradius/rlm_eap_sim.so
397 %{_libdir}/freeradius/rlm_eap_sim-%{version}.so
398 %{_libdir}/freeradius/rlm_eap_tls.so
399 %{_libdir}/freeradius/rlm_eap_tls-%{version}.so
400 %{_libdir}/freeradius/rlm_eap_ttls.so
401 %{_libdir}/freeradius/rlm_eap_ttls-%{version}.so
402 %{_libdir}/freeradius/rlm_exec.so
403 %{_libdir}/freeradius/rlm_exec-%{version}.so
404 %{_libdir}/freeradius/rlm_expiration.so
405 %{_libdir}/freeradius/rlm_expiration-%{version}.so
406 %{_libdir}/freeradius/rlm_expr.so
407 %{_libdir}/freeradius/rlm_expr-%{version}.so
408 %{_libdir}/freeradius/rlm_fastusers.so
409 %{_libdir}/freeradius/rlm_fastusers-%{version}.so
410 %{_libdir}/freeradius/rlm_files.so
411 %{_libdir}/freeradius/rlm_files-%{version}.so
412 %{_libdir}/freeradius/rlm_ippool.so
413 %{_libdir}/freeradius/rlm_ippool-%{version}.so
414 %{_libdir}/freeradius/rlm_linelog.so
415 %{_libdir}/freeradius/rlm_linelog-%{version}.so
416 %{_libdir}/freeradius/rlm_logintime.so
417 %{_libdir}/freeradius/rlm_logintime-%{version}.so
418 %{_libdir}/freeradius/rlm_mschap.so
419 %{_libdir}/freeradius/rlm_mschap-%{version}.so
420 %{_libdir}/freeradius/rlm_otp.so
421 %{_libdir}/freeradius/rlm_otp-%{version}.so
422 %{_libdir}/freeradius/rlm_pam.so
423 %{_libdir}/freeradius/rlm_pam-%{version}.so
424 %{_libdir}/freeradius/rlm_pap.so
425 %{_libdir}/freeradius/rlm_pap-%{version}.so
426 %{_libdir}/freeradius/rlm_passwd.so
427 %{_libdir}/freeradius/rlm_passwd-%{version}.so
428 %{_libdir}/freeradius/rlm_preprocess.so
429 %{_libdir}/freeradius/rlm_preprocess-%{version}.so
430 %{_libdir}/freeradius/rlm_radutmp.so
431 %{_libdir}/freeradius/rlm_radutmp-%{version}.so
432 %{_libdir}/freeradius/rlm_realm.so
433 %{_libdir}/freeradius/rlm_realm-%{version}.so
434 %{_libdir}/freeradius/rlm_replicate.so
435 %{_libdir}/freeradius/rlm_replicate-%{version}.so
436 %{_libdir}/freeradius/rlm_soh.so
437 %{_libdir}/freeradius/rlm_soh-%{version}.so
438 %{_libdir}/freeradius/rlm_sql.so
439 %{_libdir}/freeradius/rlm_sql-%{version}.so
440 %{_libdir}/freeradius/rlm_sql_log.so
441 %{_libdir}/freeradius/rlm_sql_log-%{version}.so
442 %{_libdir}/freeradius/rlm_sqlcounter.so
443 %{_libdir}/freeradius/rlm_sqlcounter-%{version}.so
444 %{_libdir}/freeradius/rlm_sqlippool.so
445 %{_libdir}/freeradius/rlm_sqlippool-%{version}.so
446 %{_libdir}/freeradius/rlm_unix.so
447 %{_libdir}/freeradius/rlm_unix-%{version}.so
448 %{_libdir}/freeradius/rlm_wimax.so
449 %{_libdir}/freeradius/rlm_wimax-%{version}.so
450
451 %files utils
452 %defattr(-,root,root)
453 /usr/bin/*
454 # man-pages
455 %doc %{_mandir}/man1/radclient.1.gz
456 %doc %{_mandir}/man1/radeapclient.1.gz
457 %doc %{_mandir}/man1/radlast.1.gz
458 %doc %{_mandir}/man1/radtest.1.gz
459 %doc %{_mandir}/man1/radwho.1.gz
460 %doc %{_mandir}/man1/radzap.1.gz
461 %doc %{_mandir}/man8/radsqlrelay.8.gz
462 %doc %{_mandir}/man8/rlm_ippool_tool.8.gz
463
464 %files krb5
465 %defattr(-,root,root)
466 %{_libdir}/freeradius/rlm_krb5.so
467 %{_libdir}/freeradius/rlm_krb5-%{version}.so
468 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/modules/krb5
469
470 %files perl
471 %defattr(-,root,root)
472 %{_libdir}/freeradius/rlm_perl.so
473 %{_libdir}/freeradius/rlm_perl-%{version}.so
474
475 %files python
476 %defattr(-,root,root)
477 %{_libdir}/freeradius/rlm_python.so
478 %{_libdir}/freeradius/rlm_python-%{version}.so
479
480 %files mysql
481 %defattr(-,root,root)
482 %dir %attr(750,root,radiusd) /etc/raddb/sql/mysql
483 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sql/mysql/*
484 %dir %attr(750,root,radiusd) /etc/raddb/sql/ndb
485 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sql/ndb/*
486 %{_libdir}/freeradius/rlm_sql_mysql.so
487 %{_libdir}/freeradius/rlm_sql_mysql-%{version}.so
488
489 %files postgresql
490 %defattr(-,root,root)
491 %dir %attr(750,root,radiusd) /etc/raddb/sql/postgresql
492 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sql/postgresql/*
493 %{_libdir}/freeradius/rlm_sql_postgresql.so
494 %{_libdir}/freeradius/rlm_sql_postgresql-%{version}.so
495
496 %files ldap
497 %defattr(-,root,root)
498 %{_libdir}/freeradius/rlm_ldap.so
499 %{_libdir}/freeradius/rlm_ldap-%{version}.so
500 %attr(640,root,radiusd) %config(noreplace) /etc/raddb/modules/ldap
501
502 %files unixODBC
503 %defattr(-,root,root)
504 %{_libdir}/freeradius/rlm_sql_unixodbc.so
505 %{_libdir}/freeradius/rlm_sql_unixodbc-%{version}.so
506
507 %changelog
508 * Wed Sep 22 2010 John Dennis <jdennis@redhat.com> - 2.1.10-1
509 - upgrade to latest upstream release
510   Feature improvements
511   * Install the "radcrypt" program.
512   * Enable radclient to send requests containing MS-CHAPv1
513     Send packets with: MS-CHAP-Password = "password".  It will
514     be automatically converted to the correct MS-CHAP attributes.
515   * Added "-t" command-line option to radtest.  You can use "-t pap",
516    "-t chap", "-t mschap", or "-t eap-md5".  The default is "-t pap"
517   * Make the "inner-tunnel" virtual server listen on 127.0.0.1:18120
518     This change and the previous one makes PEAP testing much easier.
519   * Added more documentation and examples for the "passwd" module.
520   * Added dictionaries for RFC 5607 and RFC 5904.
521   * Added note in proxy.conf that we recommend setting
522     "require_message_authenticator = yes" for all home servers.
523   * Added example of second "files" configuration, with documentation.
524     This shows how and where to use two instances of a module.
525   * Updated radsniff to have it write pcap files, too.  See '-w'.
526   * Print out large WARNING message if we send an Access-Challenge
527     for EAP, and receive no follow-up messages from the client.
528   * Added Cached-Session-Policy for EAP session resumption.  See
529     raddb/eap.conf.
530   * Added support for TLS-Cert-* attributes. For details, see
531     raddb/sites-available/default, "post-auth" section.
532   * Added sample raddb/modules/{opendirectory,dynamic_clients}
533   * Updated Cisco and Huawei, HP, Redback, and ERX dictionaries.
534   * Added RFCs 5607, 5904, and 5997.
535   * For EAP-TLS, client certificates can now be validated using an
536     external command.  See eap.conf, "validate" subsection of "tls".
537   * Made rlm_pap aware of {nthash} prefix, for compatibility with
538     legacy RADIUS systems.
539   * Add Module-Failure-Message for mschap module (ntlm_auth)
540   * made rlm_sql_sqlite database configurable.  Use "filename"
541     in sql{} section.
542   * Added %{tolower: ...string ... }, which returns the lowercase
543     version of the string.
544
545   Bug fixes
546   * Fix endless loop when there are multiple sub-options for
547     DHCP option 82.
548   * More debug output when sending / receiving DHCP packets.
549   * EAP-MSCHAPv2 should return the MPPE keys when used outside
550     of a TLS tunnel.  This is needed for IKE.
551   * Added SSL "no ticket" option to prevent SSL from creating sessions
552     without IDs.  We need the IDs, so this option should be set.
553   * Fix proxying of packets from inside a TTLS/PEAP tunnel.
554     Closes bug #25.
555   * Allow IPv6 address attributes to be created from domain names
556     Closes bug #82.
557   * Set the string length to the correct value when parsing double
558     quotes.  Closes bug #88.
559   * No longer look users up in /etc/passwd in the default configuration.
560     This can be reverted by enabling "unix" in the "authorize" section.
561   * More #ifdef's to enable building on systems without certain
562     features.
563   * Fixed SQL-Group comparison to register only if the group
564     query is defined.
565   * Fixed SQL-Group comparison to register <instance>-SQL-Group,
566     just like rlm_ldap.  This lets you have multiple SQL group checks.
567   * Fix scanning of octal numbers in "unlang".  Closes bug #89.
568   * Be less aggressive about freeing "stuck" requests.  Closes bug #35.
569   * Fix example in "originate-coa" to refer to the correct packet.
570   * Change default timeout for dynamic clients to 1 hour, not 1 day.
571   * Allow passwd module to map IP addresses, too.
572   * Allow passwd module to be used for CoA packets
573   * Put boot filename into DHCP header when DHCP-Boot-Filename
574     is specified.
575   * raddb/certs/Makefile no longer has certs depend on index.txt and
576      serial.  Closes bug #64.
577   * Ignore NULL errorcode in PostgreSQL client.  Closes bug #39
578   * Made Exec-Program and Exec-Program-Wait work in accounting
579     section again.  See sites-available/default.
580   * Fix long-standing memory leak in esoteric conditions.  Found
581     by Jerry Nichols.
582   * Added "Password-With-Header == userPassword" to raddb/ldap.attrmap
583     This will automatically convert more passwords.
584   * Updated rlm_pap to decode Password-With-Header, if it was base64
585     encoded, and to treat the contents as potentially binary data.
586   * Fix Novell eDir code to use the right function parameters.
587     Closes bug #86.
588   * Allow spaces to be escaped when executing external programs.
589     Closes bug #93.
590   * Be less restrictive about checking permissions on control socket.
591     If we're root, allow connecting to a non-root socket.
592   * Remove control socket on normal server exit.  If the server isn't
593     running, the control socket should not exist.
594   * Use MS-CHAP-User-Name as Name field from EAP-MSCHAPv2 for MS-CHAP
595     calculations.  It *MAY* be different (upper / lower case) from
596     the User-Name attribute.  Closes bug #17.
597   * If the EAP-TLS methods have problems, more SSL errors are now
598     available in the Module-Failure-Message attribute.
599   * Update Oracle configure scripts.  Closes bug #57.
600   * Added text to DESC fields of doc/examples/openldap.schema
601   * Updated more documentation to use "Restructured Text" format.
602     Thanks to James Lockie.
603   * Fixed typos in raddb/sql/mssql/dialup.conf.  Closes bug #11.
604   * Return error for potential proxy loops when using "-XC"
605   * Produce better error messages when slow databases block
606     the server.
607   * Added notes on DHCP broadcast packets for FreeBSD.
608   * Fixed crash when parsing some date strings.  Closes bug #98
609   * Improperly formatted Attributes are now printed as "Attr-##".
610     If they are not correct, they should not use the dictionary name.
611   * Fix rlm_digest to be check the format of the Digest attributes,
612     and return "noop" rather than "fail" if they're not right.
613   * Enable "digest" in raddb/sites-available/default.  This change
614     enables digest authentication to work "out of the box".
615   * Be less aggressive about marking home servers as zombie.
616     If they are responding to some packets, they are still alive.
617   * Added Packet-Transmit-Counter, to track detail file retransmits.
618     Closes bug #13.
619   * Added configure check for lt_dladvise_init().  If it exists, then
620     using it solves some issues related to libraries loading libraries.
621   * Added indexes to the MySQL IP Pool schema.
622   * Print WARNING message if too many attributes are put into a packet.
623   * Include dhcp test client (not built by default)
624   * Added checks for LDAP constraint violation.  Closes bug #18.
625   * Change default raddebug timeout to 60 seconds.
626   * Made error / warning messages more consistent.
627   * Correct back-slash handling in variable expansion.  Closes bug #46.
628     You SHOULD check your configuration for backslash expansion!
629   * Fix typo in "configure" script (--enable-libltdl-install)
630   * Use local libltdl in more situations.  This helps to avoid
631     compile issues complaining about lt__PROGRAM__LTX_preloaded_symbols.
632   * Fix hang on startup when multiple home servers were defined
633     with "src_ipaddr" field.
634   * Fix 32/64 bit issue in rlm_ldap.  Closes bug #105.
635   * If the first "listen" section uses 127.0.0.1, don't use that
636     as the source IP for proxying.  It won't work.
637   * When Proxy-To-Realm is set to a non-existent realm, the EAP module
638     should handle the request, rather than expecting it to be proxied.
639   * Fix IPv4 issues with udpfromto.  Closes bug #110.
640   * Clean up child processes of raddebug.  Closes bugs #108 and #109
641   * retry OTP if the OTP daemon fails.  Closes bug #58.
642   * Multiple calls to ber_printf seem to work better.  Closes #106.
643   * Fix "unlang" so that "attribute not found" is treated as a "false"
644     comparison, rather than a syntax error in the configuration.
645
646
647 * Sat Jul 31 2010 Orcan Ogetbil <oget[dot]fedora[at]gmail[dot]com> - 2.1.9-3
648 - Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
649
650 * Tue Jun 01 2010 Marcela Maslanova <mmaslano@redhat.com> - 2.1.9-2
651 - Mass rebuild with perl-5.12.0
652
653 * Mon May 24 2010 John Dennis <jdennis@redhat.com> - 2.1.9-1
654 - update to latest upstream, mainly bug fix release
655   Feature improvements
656   * Add radmin command "stats detail <file>" to see what
657     is going on inside of a detail file reader.
658   * Added documentation for CoA.  See raddb/sites-available/coa
659   * Add sub-option support for Option 82.  See dictionary.dhcp
660   * Add "server" field to default SQL NAS table, and documented it.
661
662   Bug fixes
663   * Reset "received ping" counter for Status-Server checks.  In some
664     corner cases it was not getting reset.
665   * Handle large VMPS attributes.
666   * Count accounting responses from a home server in SNMP / statistics
667     code.
668   * Set EAP-Session-Resumed = Yes, not "No" when session is resumed.
669   * radmin packet counter statistics are now unsigned, for numbers
670     2^31..2^32.  After that they roll over to zero.
671   * Be more careful about expanding data in PAP and MS-CHAP modules.
672     This prevents login failures when passwords contain '{'.
673   * Clean up zombie children if there were many "exec" modules being
674     run for one packet, all with "wait = no".
675   * re-open log file after HUP.  Closes bug #63.
676   * Fix "no response to proxied packet" complaint for Coa / Disconnect
677     packets.  It shouldn't ignore replies to packets it sent.
678   * Calculate IPv6 netmasks correctly.  Closes bug #69.
679   * Fix SQL module to re-open sockets if they unexpectedly close.
680   * Track scope for IPv6 addresses.  This lets us use link-local
681     addresses properly.  Closes bug #70.
682   * Updated Makefiles to no longer use the shell for recursing into
683     subdirs.  "make -j 2" should now work.
684   * Updated raddb/sql/mysql/ippool.conf to use "= NULL".  Closes
685     bug #75.
686   * Updated Makefiles so that "make reconfig" no longer uses the shell
687     for recursing into subdirs, and re-builds all "configure" files.
688   * Used above method to regenerate all configure scripts.
689     Closes bug #34.
690   * Updated SQL module to allow "server" field of "nas" table
691     to be blank: "".  This means the same as it being NULL.
692   * Fixed regex realm example.  Create Realm attribute with value
693     of realm from User-Name, not from regex.  Closes bug #40.
694   * If processing a DHCP Discover returns "fail / reject", ignore
695     the packet rather than sending a NAK.
696   * Allow '%' to be escaped in sqlcounter module.
697   * Fix typo internal hash table.
698   * For PEAP and TTLS, the tunneled reply is added to the reply,
699     rather than integrated via the operators.  This allows multiple
700     VSAs to be added, where they would previously be discarded.
701   * Make request number unsigned.  This changes nothing other than
702     the debug output when the server receives more than 2^31 packets.
703   * Don't block when reading child output in 'exec wait'.  This means
704     that blocked children get killed, instead of blocking the server.
705   * Enabled building without any proxy functionality
706   * radclient now prefers IPv4, to match the default server config.
707   * Print useful error when a realm regex is invalid
708   * relaxed rules for preprocess module "with_cisco_vsa_hack".  The
709     attributes can now be integer, ipaddr, etc.  (i.e. non-string)
710   * Allow rlm_ldap to build if ldap_set_rebind_proc() has only
711     2 arguments.
712   * Update configure script for rlm_python to avoid dynamic linking
713     problems on some platforms.
714   * Work-around for bug #35
715   * Do suid to "user" when running in debug mode as root
716   * Make "allow_core_dumps" work in more situations.
717   * In detail file reader, treat bad records as EOF.
718     This allows it to continue working when the disk is full.
719   * Fix Oracle default accounting queries to work when there are no
720     gigawords attributes.  Other databases already had the fix.
721   * Fix rlm_sql to show when it opens and closes sockets.  It already
722     says when it cannot connect, so it should say when it can connect.
723   * "chmod -x" for a few C source files.
724   * Pull update spec files, etc. from RedHat into the redhat/ directory.
725   * Allow spaces when parsing integer values.  This helps people who
726     put "too much" into an SQL value field.
727
728 * Thu Jan  7 2010 John Dennis <jdennis@redhat.com> - 2.1.8-2
729 - resolves: bug #526559 initial install should run bootstrap to create certificates
730   running radiusd in debug mode to generate inital temporary certificates
731   is no longer necessary, the /etc/raddb/certs/bootstrap is invoked on initial
732   rpm install (not upgrade) if there is no existing /etc/raddb/certs/server.pem file
733 - resolves: bug #528493 use sha1 algorithm instead of md5 during cert generation
734   the certificate configuration (/etc/raddb/certs/{ca,server,client}.cnf) files
735   were modifed to use sha1 instead of md5 and the validity reduced from 1 year to 2 months
736
737 * Wed Dec 30 2009 John Dennis <jdennis@redhat.com> - 2.1.8-1
738 - update to latest upstream
739   Feature improvements
740   * Print more descriptive error message for too many EAP sessions.
741     This gives hints on what to do when "failed to store handler"
742   * Commands received from radmin are now printed on stdout when
743     in debugging mode.
744   * Allow accounting packets to be written to a detail file, even
745     if they were read from a different detail file.
746   * Added OpenSSL license exception (src/LICENSE.openssl)
747
748   Bug fixes
749   * DHCP sockets can now set the broadcast flag before binding to a
750     socket.  You need to set "broadcast = yes" in the DHCP listener.
751   * Be more restrictive on string parsing in the config files
752   * Fix password length in scripts/create-users.pl
753   * Be more flexible about parsing the detail file.  This allows
754     it to read files where the attributes have been edited.
755   * Ensure that requests read from the detail file are cleaned up
756     (i.e. don't leak) if they are proxied without a response.
757   * Write the PID file after opening sockets, not before
758     (closes bug #29)
759   * Proxying large numbers of packets no longer gives error
760     "unable to open proxy socket".
761   * Avoid mutex locks in libc after fork
762   * Retry packet from detail file if there was no response.
763   * Allow old-style dictionary formats, where the vendor name is the
764     last field in an ATTRIBUTE definition.
765   * Removed all recursive use of mutexes.  Some systems just don't
766     support this.
767   * Allow !* to work as documented.
768   * make templates work (see templates.conf)
769   * Enabled "allow_core_dumps" to work again
770   * Print better errors when reading invalid dictionaries
771   * Sign client certificates with CA, rather than server certs.
772   * Fix potential crash in rlm_passwd when file was closed
773   * Fixed corner cases in conditional dynamic expansion.
774   * Use InnoDB for MySQL IP Pools, to gain transactional support
775   * Apply patch to libltdl for CVE-2009-3736.
776   * Fixed a few issues found by LLVM's static checker
777   * Keep track of "bad authenticators" for accounting packets
778   * Keep track of "dropped packets" for auth/acct packets
779   * Synced the "debian" directory with upstream
780   * Made "unlang" use unsigned 32-bit integers, to match the
781     dictionaries.
782
783 * Wed Dec 30 2009 John Dennis <jdennis@redhat.com> - 2.1.7-7
784 - Remove devel subpackage. It doesn't make much sense to have a devel package since
785   we don't ship libraries and it produces multilib conflicts.
786
787 * Mon Dec 21 2009 John Dennis <jdennis@redhat.com> - 2.1.7-6
788 - more spec file clean up from review comments
789 - remove freeradius-libs subpackage, move libfreeradius-eap and
790   libfreeradius-radius into the main package
791 - fix subpackage requires, change from freeradius-libs to main package
792 - fix description of the devel subpackage, remove referene to non-shipped libs
793 - remove execute permissions on src files included in debuginfo
794 - remove unnecessary use of ldconfig
795 - since all sub-packages now require main package remove user creation for sub-packages
796 - also include the LGPL library license file in addition to the GPL license file
797 - fix BuildRequires for perl so it's compatible with both Fedora, RHEL5 and RHEL6
798
799 * Mon Dec 21 2009 John Dennis <jdennis@redhat.com> - 2.1.7-5
800 - fix various rpmlint issues.
801
802 * Fri Dec  4 2009 Stepan Kasal <skasal@redhat.com> - 2.1.7-4
803 - rebuild against perl 5.10.1
804
805 * Thu Dec  3 2009 John Dennis <jdennis@redhat.com> - 2.1.7-3
806 - resolves: bug #522111 non-conformant initscript
807   also change permission of /var/run/radiusd from 0700 to 0755
808   so that "service radiusd status" can be run as non-root
809
810 * Wed Sep 16 2009 Tomas Mraz <tmraz@redhat.com> - 2.1.7-2
811 - use password-auth common PAM configuration instead of system-auth
812
813 * Tue Sep 15 2009 John Dennis <jdennis@redhat.com> - 2.1.7-1
814 - enable building of the rlm_wimax module
815 - pcap wire analysis support is enabled and available in utils subpackage
816 - Resolves bug #523053 radtest manpage in wrong package
817 - update to latest upstream release, from upstream Changelog:
818   Feature improvements
819     * Full support for CoA and Disconnect packets as per RFC 3576
820       and RFC 5176.  Both receiving and proxying CoA is supported.
821     * Added "src_ipaddr" configuration to "home_server".  See
822       proxy.conf for details.
823     * radsniff now accepts -I, to read from a filename instead of
824       a device.
825     * radsniff also prints matching requests and any responses to those
826       requests when '-r' is used.
827     * Added example of attr_filter for Access-Challenge packets
828     * Added support for udpfromto in DHCP code
829     * radmin can now selectively mark modules alive/dead.
830       See "set module state".
831     * Added customizable messages on login success/fail.
832       See msg_goodpass && msg_badpass in log{} section of radiusd.conf
833     * Document "chase_referrals" and "rebind" in raddb/modules/ldap
834     * Preliminary implementation of DHCP relay.
835     * Made thread pool section optional.  If it doesn't exist,
836       the server will run single-threaded.
837     * Added sample radrelay.conf for people upgrading from 1.x
838     * Made proxying more stable by failing over, rather than
839       rejecting the first request.  See "response_window" in proxy.conf
840     * Allow home_server_pools to exist without realms.
841     * Add dictionary.iea (closes bug #7)
842     * Added support for RFC 5580
843     * Added experimental sql_freetds module from Gabriel Blanchard.
844     * Updated dictionary.foundry
845     * Added sample configuration for MySQL cluster in raddb/sql/ndb
846       See the README file for explanations.
847   Bug fixes
848     * Fixed corner case where proxied packets could have extra
849       character in User-Password attribute.  Fix from Niko Tyni.
850     * Extended size of "attribute" field in SQL to 64.
851     * Fixes to ruby module to be more careful about when it builds.
852     * Updated Perl module "configure" script to check for broken
853       Perl installations.
854     * Fix "status_check = none".  It would still send packets
855       in some cases.
856     * Set recursive flag on the proxy mutex, which enables safer
857       cleanup on some platforms.
858     * Copy the EAP username verbatim, rather than escaping it.
859     * Update handling so that robust-proxy-accounting works when
860       all home servers are down for extended periods of time.
861     * Look for DHCP option 53 anywhere in the packet, not just
862       at the start.
863     * Fix processing of proxy fail handler with virtual servers.
864     * DHCP code now prints out correct src/dst IP addresses
865       when sending packets.
866     * Removed requirement for DHCP to have clients
867     * Fixed handling of DHCP packets with message-type buried in the packet
868     * Fixed corner case with negation in unlang.
869     * Minor fixes to default MySQL & PostgreSQL schemas
870     * Suppress MSCHAP complaints in debugging mode.
871     * Fix SQL module for multiple instance, and possible crash on HUP
872     * Fix permissions for radius.log for sites that change user/group,
873       but which don't create the file before starting radiusd.
874     * Fix double counting of packets when proxying
875     * Make %%l work
876     * Fix pthread keys in rlm_perl
877     * Log reasons for EAP failure (closes bug #8)
878     * Load home servers and pools that aren't referenced from a realm.
879     * Handle return codes from virtual attributes in "unlang"
880       (e.g. LDAP-Group).  This makes "!(expr)" work for them.
881     * Enable VMPS to see contents of virtual server again
882     * Fix WiMAX module to be consistent with examples.  (closes bug #10)
883     * Fixed crash with policies dependent on NAS-Port comparisons
884     * Allowed vendor IDs to be be higher than 32767.
885     * Fix crash on startup with certain regexes in "hints" file.
886     * Fix crash in attr_filter module when packets don't exist
887     * Allow detail file reader to be faster when "load_factor = 100"
888     * Add work-around for build failures with errors related to
889       lt__PROGRAM__LTX_preloaded_symbols.  libltdl / libtool are horrible.
890     * Made ldap module "rebind" option aware of older, incompatible
891       versions of OpenLDAP.
892     * Check value of Fall-Through in attr_filter module.
893
894 * Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 2.1.6-6
895 - rebuilt with new openssl
896
897 * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.6-5
898 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
899
900 * Fri Jul 10 2009 John Dennis <jdennis@redhat.com> - 2.1.6-4
901 - install COPYRIGHT CREDITS INSTALL LICENSE README into docdir
902
903 * Tue Jun 23 2009 John Dennis <jdennis@redhat.com> - 2.1.6-3
904 - resolves bug #507571 freeradius packages do not check for user/group existence
905
906 * Tue Jun  2 2009 John Dennis <jdennis@redhat.com> - 2.1.6-2
907 - make /etc/raddb/sites-available/* be config(noreplace)
908
909 * Mon May 18 2009 John Dennis <jdennis@redhat.com> - 2.1.6-1
910 - update to latest upstream release, from upstream Changelog:
911   Feature improvements
912     * radclient exits with 0 on successful (accept / ack), and 1
913       otherwise (no response / reject)
914     * Added support for %%{sql:UPDATE ..}, and insert/delete
915       Patch from Arran Cudbard-Bell
916     * Added sample "do not respond" policy.  See raddb/policy.conf
917       and raddb/sites-available/do_not_respond
918     * Cleanups to Suse spec file from Norbert Wegener
919     * New VSAs for Juniper from Bjorn Mork
920     * Include more RFC dictionaries in the default install
921     * More documentation for the WiMAX module
922     * Added "chase_referrals" and "rebind" configuration to rlm_ldap.
923       This helps with Active Directory.  See raddb/modules/ldap
924     * Don't load pre/post-proxy if proxying is disabled.
925     * Added %%{md5:...}, which returns MD5 hash in hex.
926     * Added configurable "retry_interval" and "poll_interval"
927       for "detail" listeners.
928     * Added "delete_mppe_keys" configuration option to rlm_wimax.
929       Apparently some WiMAX clients misbehave when they see those keys.
930     * Added experimental rlm_ruby from
931       http://github.com/Antti/freeradius-server/tree/master
932     * Add Tunnel attributes to ldap.attrmap
933     * Enable virtual servers to be reloaded on HUP.  For now, only
934       the "authorize", "authenticate", etc. processing sections are
935       reloaded.  Clients and "listen" sections are NOT reloaded.
936     * Updated "radwatch" script to be more robust.  See scripts/radwatch
937     * Added certificate compatibility notes in raddb/certs/README,
938       for compatibility with different operating systems. (i.e. Windows)
939     * Permit multiple "-e" in radmin.
940     * Add support for originating CoA-Request and Disconnect-Request.
941       See raddb/sites-available/originate-coa.
942     * Added "lifetime" and "max_queries" to raddb/sql.conf.
943       This helps address the problem of hung SQL sockets.
944     * Allow packets to be injected via radmin.  See "inject help"
945       in radmin.
946     * Answer VMPS reconfirmation request.  Patch from Hermann Lauer.
947     * Sample logrotate script in scripts/logrotate.freeradius
948     * Add configurable poll interval for "detail" listeners
949     * New "raddebug" command.  This prints debugging information from
950       a running server.  See "man raddebug.
951     * Add "require_message_authenticator" configuration to home_server
952       configuration.  This makes the server add Message-Authenticator
953       to all outgoing Access-Request packets.
954     * Added smsotp module, as contributed by Siemens.
955     * Enabled the administration socket in the default install.
956       See raddb/sites-available/control-socket, and "man radmin"
957     * Handle duplicate clients, such as with replicated or
958       load-balanced SQL servers and "readclients = yes"
959   Bug fixes
960     * Minor changes to allow building without VQP.
961     * Minor fixes from John Center
962     * Fixed raddebug example
963     * Don't crash when deleting attributes via unlang
964     * Be friendlier to very fast clients
965     * Updated the "detail" listener so that it only polls once,
966       and not many times in a row, leaking memory each time...
967     * Update comparison for Packet-Src-IP-Address (etc.) so that
968       the operators other than '==' work.
969     * Did autoconf magic to work around weird libtool bug
970     * Make rlm_perl keep tags for tagged attributes in more situations
971     * Update UID checking for radmin
972     * Added "include_length" field for TTLS.  It's needed for RFC
973       compliance, but not (apparently) for interoperability.
974     * Clean up control sockets when they are closed, so that we don't
975       leak memory.
976     * Define SUN_LEN for systems that don't have it.
977     * Correct some boundary conditions in the conditional checker ("if")
978       in "unlang".  Bug noted by Arran Cudbard-Bell.
979     * Work around minor building issues in gmake.  This should only
980       have affected developers.
981     * Change how we manage unprivileged user/group, so that we do not
982       create control sockets owned by root.
983     * Fixed more minor issues found by Coverity.
984     * Allow raddb/certs/bootstrap to run when there is no "make"
985       command installed.
986     * In radiusd.conf, run_dir depends on the name of the program,
987       and isn't hard-coded to "..../radiusd"
988     * Check for EOF in more places in the "detail" file reader.
989     * Added Freeswitch dictionary.
990     * Chop ethernet frames in VMPS, rather than droppping packets.
991     * Fix EAP-TLS bug.  Patch from Arnaud Ebalard
992     * Don't lose string for regex-compares in the "users" file.
993     * Expose more functions in rlm_sql to rlm_sqlippool, which
994       helps on systems where RTLD_GLOBAL is off.
995     * Fix typos in MySQL schemas for ippools.
996     * Remove macro that was causing build issues on some platforms.
997     * Fixed issues with dead home servers.  Bug noted by Chris Moules.
998     * Fixed "access after free" with some dynamic clients.
999
1000 - fix packaging bug, some directories missing execute permission
1001   /etc/raddb/dictionary now readable by all.
1002
1003 * Tue Feb 24 2009 John Dennis <jdennis@redhat.com> - 2.1.3-4
1004 - fix type usage in unixodbc to match new type usage in unixodbc API
1005
1006 * Thu Feb 19 2009 John Dennis <jdennis@redhat.com> - 2.1.3-3
1007 - add pointer to Red Hat documentation in docdir
1008
1009 * Sat Jan 24 2009 Caolán McNamara <caolanm@redhat.com> - 2.1.3-2
1010 - rebuild for dependencies
1011
1012 * Thu Dec  4 2008 John Dennis <jdennis@redhat.com> - 2.1.3-1
1013 - upgrade to latest upstream release, upstream summary follows:
1014   The focus of this release is stability.
1015   Feature Improvements:
1016     * Allow running with "user=radiusd" and binding to secure sockets.
1017     * Start sending Status-Server "are you alive" messages earlier, which
1018       helps with proxying multiple realms to a home server.
1019     * Removed thread pool code from rlm_perl.  It's not necessary.
1020     * Added example Perl configuration to raddb/modules/perl
1021     * Force OpenSSL to support certificates with SHA256. This seems to be
1022       necessary for WiMAX certs.
1023   Bug fixes:
1024     * Fix Debian patch to allow it to build.
1025     * Fix potential NULL dereference in debugging mode on certain
1026       platforms for TTLS and PEAP inner tunnels.
1027     * Fix uninitialized memory in handling of vendor definitions
1028     * Fix parsing of quoted (but non-string) attributes in the "users" file.
1029     * Initialize uknown NAS IP to 255.255.255.255, rather than 0.0.0.0
1030     * use SUN_LEN in control socket, to avoid truncation on some platforms.
1031     * Correct internal handling of "debug condition" to prevent it from
1032       being over-written.
1033     * Check return code of regcomp in "unlang", so that invalid regular
1034       expressions are caught rather than mishandled.
1035     * Make rlm_sql use <ltdl.h>.  Addresses bug #610.
1036     * Document list "type = status" better.  Closes bug #580.
1037     * Set "default days" for certificates, because OpenSSL won't do it.
1038       This closes bug #615.
1039     * Reference correct list in example raddb/modules/ldap. Closes #596.
1040     * Increase default schema size for Acct-Session-Id to 64. Closes #540.
1041     * Fix use of temporary files in dialup-admin.  Closes #605 and
1042       addresses CVE-2008-4474.
1043     * Addressed a number of minor issues found by Coverity.
1044     * Added DHCP option 150 to the dictionary.  Closes #618.
1045
1046 * Wed Dec  3 2008 John Dennis <jdennis@redhat.com> - 2.1.1-8
1047 - add --with-system-libtool to configure as a workaround for
1048 undefined reference to lt__PROGRAM__LTX_preloaded_symbols
1049
1050 * Mon Dec  1 2008 John Dennis <jdennis@redhat.com> - 2.1.1-7
1051 - add obsoletes tag for dialupadmin subpackages which were removed
1052
1053 * Mon Dec  1 2008 John Dennis <jdennis@redhat.com> - 2.1.1-7
1054 - add readline-devel BuildRequires
1055
1056 * Sun Nov 30 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 2.1.1-4
1057 - Rebuild for Python 2.6
1058
1059 * Fri Nov 21 2008 John Dennis <jdennis@redhat.com> - 2.1.1-3
1060 - make spec file buildable on RHEL5.2 by making perl-devel a fedora only dependency.
1061 - remove diaupadmin packages, it's not well supported and there are problems with it.
1062
1063 * Fri Sep 26 2008 John Dennis <jdennis@redhat.com> - 2.1.1-1
1064 - Resolves: bug #464119 bootstrap code could not create initial certs in /etc/raddb/certs because
1065   permissions were 750, radiusd running as euid radiusd could not write there, permissions now 770
1066
1067 * Thu Sep 25 2008 John Dennis <jdennis@redhat.com> - 2.1.1-1
1068 - upgrade to new upstream 2.1.1 release
1069
1070 * Wed Jul 30 2008 John Dennis <jdennis@redhat.com> - 2.0.5-2
1071 - Resolves: bug #453761: FreeRADIUS %%post should not include chown -R
1072   specify file attributes for /etc/raddb/ldap.attrmap
1073   fix consistent use of tabs/spaces (rpmlint warning)
1074
1075 * Mon Jun  9 2008 John Dennis <jdennis@redhat.com> - 2.0.5-1
1076 - upgrade to latest upstream, see Changelog for details,
1077   upstream now has more complete fix for bug #447545, local patch removed
1078
1079 * Wed May 28 2008 John Dennis <jdennis@redhat.com> - 2.0.4-1
1080 - upgrade to latest upstream, see Changelog for details
1081 - resolves: bug #447545: freeradius missing /etc/raddb/sites-available/inner-tunnel
1082
1083 * Fri May 16 2008  <jdennis@redhat.com> - 2.0.3-3
1084 - # Temporary fix for bug #446864, turn off optimization
1085
1086 * Fri Apr 18 2008 John Dennis <jdennis@redhat.com> - 2.0.3-2
1087 - remove support for radrelay, it's different now
1088 - turn off default inclusion of SQL config files in radiusd.conf since SQL
1089   is an optional RPM install
1090 - remove mssql config files
1091
1092 * Thu Apr 17 2008 John Dennis <jdennis@redhat.com> - 2.0.3-1
1093 - Upgrade to current upstream 2.0.3 release
1094 - Many thanks to Enrico Scholz for his spec file suggestions incorporated here
1095 - Resolve: bug #438665: Contains files owned by buildsystem
1096 - Add dialupadmin-mysql, dialupadmin-postgresql, dialupadmin-ldap subpackages
1097   to further partition external dependencies.
1098 - Clean up some unnecessary requires dependencies
1099 - Add versioned requires between subpackages
1100
1101 * Tue Mar 18 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2.0.2-2
1102 - add Requires for versioned perl (libperl.so)
1103
1104 * Thu Feb 28 2008  <jdennis@redhat.com> - 2.0.2-1
1105 - upgrade to new 2.0 release
1106 - split into subpackages for more fine grained installation
1107
1108 * Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.1.7-4.4.ipa
1109 - Autorebuild for GCC 4.3
1110
1111 * Thu Dec 06 2007 Release Engineering <rel-eng at fedoraproject dot org> - 1.1.7-3.4.ipa
1112 - Rebuild for deps
1113
1114 * Sat Nov 10 2007  <jdennis@redhat.com> - 1.1.7-3.3.ipa
1115 - add support in rlm_ldap for reading clients from ldap
1116 - fix TLS parameter controling if a cert which fails to validate
1117   will be accepted (i.e. self-signed),
1118   rlm_ldap config parameter=tls_require_cert
1119   ldap LDAP_OPT_X_TLS_REQUIRE_CERT parameter was being passed to
1120   ldap_set_option() when it should have been ldap_int_tls_config()
1121
1122 * Sat Nov 3 2007  <jdennis@redhat.com> - 1.1.7-3.2.ipa
1123 - add support in rlm_ldap for SASL/GSSAPI binds to the LDAP server
1124
1125 * Mon Sep 17 2007 Thomas Woerner <twoerner@redhat.com> 1.1.7-3.1
1126 - made init script fully lsb conform
1127
1128 * Mon Sep 17 2007 Thomas Woerner <twoerner@redhat.com> 1.1.7-3
1129 - fixed initscript problem (rhbz#292521)
1130
1131 * Tue Aug 28 2007 Thomas Woerner <twoerner@redhat.com> 1.1.7-2
1132 - fixed initscript for LSB (rhbz#243671, rhbz#243928)
1133 - fixed license tag
1134
1135 * Tue Aug  7 2007 Thomas Woerner <twoerner@redhat.com> 1.1.7-1
1136 - new versin 1.1.7
1137 - install snmp MIB files
1138 - dropped LDAP_DEPRECATED flag, it is upstream
1139 - marked config files for sub packages as config (rhbz#240400)
1140 - moved db files to /var/lib/raddb (rhbz#199082)
1141
1142 * Fri Jun 15 2007 Thomas Woerner <twoerner@redhat.com> 1.1.6-2
1143 - radiusd expects /etc/raddb to not be world readable or writable
1144   /etc/raddb now belongs to radiusd, post script sets permissions
1145
1146 * Fri Jun 15 2007 Thomas Woerner <twoerner@redhat.com> 1.1.6-1
1147 - new version 1.1.6
1148
1149 * Fri Mar  9 2007 Thomas Woerner <twoerner@redhat.com> 1.1.5-1
1150 - new version 1.1.5
1151   - no /etc/raddb/otppasswd.sample anymore
1152   - build is pie by default, dropped pie patch
1153 - fixed build requirement for perl (perl-devel)
1154
1155 * Fri Feb 23 2007 Karsten Hopp <karsten@redhat.com> 1.1.3-3
1156 - remove trailing dot from summary
1157 - fix buildroot
1158 - fix post/postun/preun requirements
1159 - use rpm macros
1160
1161 * Fri Dec  8 2006 Thomas Woerner <twoerner@redhat.com> 1.1.3-2.1
1162 - rebuild for new postgresql library version
1163
1164 * Thu Nov 30 2006 Thomas Woerner <twoerner@redhat.com> 1.1.3-2
1165 - fixed ldap code to not use internals, added LDAP_DEPRECATED compile time flag
1166   (#210912)
1167
1168 * Tue Aug 15 2006 Thomas Woerner <twoerner@redhat.com> 1.1.3-1
1169 - new version 1.1.3 with lots of upstream bug fixes, some security fixes
1170   (#205654)
1171
1172 * Tue Aug 15 2006 Thomas Woerner <twoerner@redhat.com> 1.1.2-2
1173 - commented out include for sql.conf in radiusd.conf (#202561)
1174
1175 * Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 1.1.2-1.1
1176 - rebuild
1177
1178 * Thu Jun  1 2006 Thomas Woerner <twoerner@redhat.com> 1.1.2-1
1179 - new version 1.1.2
1180
1181 * Wed May 31 2006 Thomas Woerner <twoerner@redhat.com> 1.1.1-1
1182 - new version 1.1.1
1183 - fixed incorrect rlm_sql globbing (#189095)
1184   Thanks to Yanko Kaneti for the fix.
1185 - fixed chown syntax in post script (#182777)
1186 - dropped gcc34, libdir and realloc-return patch
1187 - spec file cleanup with additional libtool build fixes
1188
1189 * Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 1.0.5-1.2
1190 - bump again for double-long bug on ppc(64)
1191
1192 * Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 1.0.5-1.1
1193 - rebuilt for new gcc4.1 snapshot and glibc changes
1194
1195 * Tue Dec 13 2005 Thomas Woerner <twoerner@redhat.com> 1.0.5-1
1196 - new version 1.0.5
1197
1198 * Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
1199 - rebuilt
1200
1201 * Sat Nov 12 2005 Tom Lane <tgl@redhat.com> - 1.0.4-5
1202 - Rebuild due to mysql update.
1203
1204 * Wed Nov  9 2005 Tomas Mraz <tmraz@redhat.com> - 1.0.4-4
1205 - rebuilt with new openssl
1206 - fixed ignored return value of realloc
1207
1208 * Fri Sep 30 2005 Tomas Mraz <tmraz@redhat.com> - 1.0.4-3
1209 - use include instead of pam_stack in pam config
1210
1211 * Wed Jul 20 2005 Thomas Woerner <twoerner@redhat.com> 1.0.4-2
1212 - added missing build requires for libtool-ltdl-devel (#160877)
1213 - modified file list to get a report for missing plugins
1214
1215 * Tue Jun 28 2005 Thomas Woerner <twoerner@redhat.com> 1.0.4-1
1216 - new version 1.0.4
1217 - droppend radrelay patch (fixed upstream)
1218
1219 * Thu Apr 14 2005 Warren Togami <wtogami@redhat.com> 1.0.2-2
1220 - rebuild against new postgresql-libs
1221
1222 * Mon Apr  4 2005 Thomas Woerner <twoerner@redhat.com> 1.0.2-1
1223 - new version 1.0.2
1224
1225 * Fri Nov 19 2004 Thomas Woerner <twoerner@redhat.com> 1.0.1-3
1226 - rebuild for MySQL 4
1227 - switched over to installed libtool
1228
1229 * Fri Nov  5 2004 Thomas Woerner <twoerner@redhat.com> 1.0.1-2
1230 - Fixed install problem of radeapclient (#138069)
1231
1232 * Wed Oct  6 2004 Thomas Woerner <twoerner@redhat.com> 1.0.1-1
1233 - new version 1.0.1
1234 - applied radrelay CVS patch from Kevin Bonner
1235
1236 * Wed Aug 25 2004 Warren Togami <wtogami@redhat.com> 1.0.0-3
1237 - BuildRequires pam-devel and libtool
1238 - Fix errant text in description
1239 - Other minor cleanups
1240
1241 * Wed Aug 25 2004 Thomas Woerner <twoerner@redhat.com> 1.0.0-2.1
1242 - renamed /etc/pam.d/radius to /etc/pam.d/radiusd to match default
1243   configuration (#130613)
1244
1245 * Wed Aug 25 2004 Thomas Woerner <twoerner@redhat.com> 1.0.0-2
1246 - fixed BuildRequires for openssl-devel (#130606)
1247
1248 * Mon Aug 16 2004 Thomas Woerner <twoerner@redhat.com> 1.0.0-1
1249 - 1.0.0 final
1250
1251 * Mon Jul  5 2004 Thomas Woerner <twoerner@redhat.com> 1.0.0-0.pre3.2
1252 - added buildrequires for zlib-devel (#127162)
1253 - fixed libdir patch to prefer own libeap instead of installed one (#127168)
1254 - fixed samba account maps in LDAP for samba v3 (#127173)
1255
1256 * Thu Jul  1 2004 Thomas Woerner <twoerner@redhat.com> 1.0.0-0.pre3.1
1257 - third "pre" release of version 1.0.0
1258 - rlm_ldap is using SASLv2 (#126507)
1259
1260 * Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
1261 - rebuilt
1262
1263 * Thu Jun  3 2004 Thomas Woerner <twoerner@redhat.com> 0.9.3-4.1
1264 - fixed BuildRequires for gdbm-devel
1265
1266 * Tue Mar 30 2004 Harald Hoyer <harald@redhat.com> - 0.9.3-4
1267 - gcc34 compilation fixes
1268
1269 * Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com>
1270 - rebuilt
1271
1272 * Tue Feb 24 2004 Thomas Woerner <twoerner@redhat.com> 0.9.3-3.2
1273 - added sql scripts for rlm_sql to documentation (#116435)
1274
1275 * Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
1276 - rebuilt
1277
1278 * Thu Feb  5 2004 Thomas Woerner <twoerner@redhat.com> 0.9.3-2.1
1279 - using -fPIC instead of -fpic for s390 ans s390x
1280
1281 * Thu Feb  5 2004 Thomas Woerner <twoerner@redhat.com> 0.9.3-2
1282 - radiusd is pie, now
1283
1284 * Tue Nov 25 2003 Thomas Woerner <twoerner@redhat.com> 0.9.3-1
1285 - new version 0.9.3 (bugfix release)
1286
1287 * Fri Nov  7 2003 Thomas Woerner <twoerner@redhat.com> 0.9.2-1
1288 - new version 0.9.2
1289
1290 * Mon Sep 29 2003 Thomas Woerner <twoerner@redhat.com> 0.9.1-1
1291 - new version 0.9.1
1292
1293 * Mon Sep 22 2003 Nalin Dahyabhai <nalin@redhat.com> 0.9.0-2.2
1294 - modify default PAM configuration to remove the directory part of the module
1295   name, so that 32- and 64-bit libpam (called from 32- or 64-bit radiusd) on
1296   multilib systems will always load the right module for the architecture
1297 - modify default PAM configuration to use pam_stack
1298
1299 * Mon Sep  1 2003 Thomas Woerner <twoerner@redhat.com> 0.9.0-2.1
1300 - com_err.h moved to /usr/include/et
1301
1302 * Tue Jul 22 2003 Thomas Woerner <twoerner@redhat.com> 0.9.0-1
1303 - 0.9.0 final
1304
1305 * Wed Jul 16 2003 Thomas Woerner <twoerner@redhat.com> 0.9.0-0.9.0
1306 - new version 0.9.0 pre3
1307
1308 * Thu May 22 2003 Thomas Woerner <twoerner@redhat.com> 0.8.1-6
1309 - included directory /var/log/radius/radacct for logrotate
1310
1311 * Wed May 21 2003 Thomas Woerner <twoerner@redhat.com> 0.8.1-5
1312 - moved log and run dir to files section, cleaned up post
1313
1314 * Wed May 21 2003 Thomas Woerner <twoerner@redhat.com> 0.8.1-4
1315 - added missing run dir in post
1316
1317 * Tue May 20 2003 Thomas Woerner <twoerner@redhat.com> 0.8.1-3
1318 - fixed module load patch
1319
1320 * Fri May 16 2003 Thomas Woerner <twoerner@redhat.com>
1321 - removed la files, removed devel package
1322 - split into 4 packages: freeradius, freeradius-mysql, freeradius-postgresql,
1323     freeradius-unixODBC
1324 - fixed requires and buildrequires
1325 - create logging dir in post if it does not exist
1326 - fixed module load without la files
1327
1328 * Thu Apr 17 2003 Thomas Woerner <twoerner@redhat.com>
1329 - Initial build.