Update Debian build scripts and changelog with net-snmp in ucd-snmp mode
[freeradius.git] / doc / ChangeLog
1 FreeRADIUS 1.1.0 ; $Date $, urgency=low
2         * Now uses autoconf 2.5x, and the various associated tools.
3         * Include ucd-snmp-config.h, fixing use of net-snmp's
4           ucd-snmp backwards compatibility mode.
5
6 FreeRADIUS 1.0.0 ; Date: 2004/05/28 12:43:16, urgency=low
7
8         * Many, many minor bug fixes and feature enhancements.
9         * Fix a bug in the attr_filter module, which would throw away
10           the tag from tagged attributes.
11         * Added "reject" action in configurable failover for modules
12         * Bug fixes to thread handling from Malcolm Caldwell.
13         * added ability for mschap module to use ntlm_auth, to perform
14           MS-CHAPv1 and MS-CHAPv2 authentication against a Windows
15           Domain Controller.
16         * Allow checking of EAP identity against certificate.
17         * Added a "listen" directive, which supersedes the old
18           "bind_address" and "port" directives.  "listen" allows much
19           finer-grained control over what IP's, ports, and packets the
20           server pays attention to.
21         * Preliminary tests indicate that the server builds and runs on
22           Interix (SFU).
23         * Regular expression matches in brackets can now be referenced
24           as in Perl, via %{1}, %{2}, etc.
25         * Check return value from registered xlat functions. If return
26           value is 0, treat the attribute as not found.  This lets things
27           like %{sql: select... :-FAILED} work.
28         * EAP module configuration is now in "raddb/eap.conf", as it was
29           getting large.
30         * Realms can now be configured to ignore DEFAULT and NULL
31           realms.  This makes prefix/suffix realms co-exists a little
32           better.
33         * Added "man" pages for many of the modules.
34         * Added many new dictionaries: 3GPP, 3GPP2, Propel, Karlnet,
35           Sonicwall, Navini, Bristol University, Valemont, Mikrotik.
36         * Fixed a bug in libltdl which printed the wrong error message
37           when trying to link to a library.  Found by Paul Stewart.
38         * Updates to radclient, so that you can specify multiple '-f'
39           options, and it will send those packets in parallel.  This
40           allows for significantly higher packet rates when load testing.
41         * Added red-black tree implementation to src/lib.  The
42           dictionaries now use it, rather than singly linked lists.  Tests
43           indicate that the server is up to 30% faster.
44         * Updated MSCHAP module to be able to better deal with Windows
45           machines which put a username with domain into User-Name, but
46           which use only the username to create the MS-CHAP-Response.
47         * Added many more "man" pages for the modules.
48         * Made "hints" file more generic and flexible, without changing
49           old functionality.
50         * Correct error condition in rlm_krb5.  Patch from Jon Moore.
51         * Added demo certs.
52         * Updates to configure scripts for MySQL.
53         * Enhanced configuration file variable handling.  See
54           doc/variables.txt for details.
55         * doc/configurable_failover is now understandable by mere humans.
56         * Updates for 64-bit systems.
57         * Update scripts/rc.radiusd with examples of how to deal with
58           shared library issues.
59         * Checks for OpenSSL now enforce version number, and are common
60           across all modules, rather than being duplicated.
61         * Patch to make ctime_r work on non-compliant platforms.
62           Patch from Oliver Graf.
63         * Implement "udpfromto", which allows the server to work better in
64           LVS.  Code from Jan Berkel and Miquel van Smoorenburg.  To use
65           it, do:   ./configure --with-udpfromto=yes
66         * Re-arranged "walk over cached requests" code for clarity.
67         * The server now keeps more SNMP statistics about the packets it
68           has processed.
69         * De-coupled the queue of input requests from the pool of threads.
70           This allows "spikes" of requests to be queued, even though all
71           threads are busy.  This change significantly increases the
72           servers ability to process large numbers of requests on a
73           multi-CPU machine.
74         * Re-arranged the internal "core" request handling code, to
75           make a little more sense.
76         * Removed support for Replicate-To-Realm.  Use radrelay.
77         * Print & parse unknown attributes as Attr-%d, Vendor-%d-Attr-%d,
78           or VendorName-Attr-%d.
79         * Updated doc/tuning_guide, with comments about SQL.
80         * Added EAP-SIM.
81         * Enabled proxying of the authentication request which is tunneled
82           inside of PEAP and TTLS.
83         * rlm_passwd is now marked "stable", and has many bugs fixed.
84         * More flexible configuration for rlm_ldap.
85         * Added EAP-PEAP support, with tunneled EAP-MSCHAP-V2.
86           Patch from Masao Nishiku.  (Many, many thanks!)
87         * Updates to rlm_ippool for stability.
88         * Added ippool_tool, by Edwin Groothuis.
89         * Catch packets which are just about 4K in size.
90            Bug found by Nils-Henner Krueger.
91         * New implementation of parser for Ascend's data filter
92           attributes, that is now thread-safe and GPL'd.
93         * EAP-TLS now checks Certificate Revocation List
94         * Preliminary (not entirely complete) support for IPv6 attributes,
95           including IFID.
96         * Updated GPL boilerplate in the source.
97         * Added new RFC's to doc/rfc/
98         * Many fixes to the SQL module & sub-modules.
99         * Added EAP-TTLS support in rlm_eap.  Tested with many clients.
100         * Added support for rejected packets to run an Post-Auth-Type REJECT
101           stanza instead of skipping post-auth entirely.
102         * Added support for %{*:Packet-Type} translation. (Not for %{check:})
103         * Added support for %{check:Attribute-Name} to go with
104           %{request:Attribute-Name} and the like.
105         * Add support to rlm_sql for post-authentication query execution.
106         * Add support to rlm_sql for accounting_update_query_alt
107         * Add support to checkrad.pl for mikrotik-brand NASs over SNMP
108         * Add support for supplementary groups of switched-to user
109         * Add support for xlat-ing backquoted reply values from SQL queries.
110         * Add Public Domain MD5 implementation by Colin Plumb
111         * Add Public Domain MD4 implementation by Colin Plumb and Todd C. Miller
112         * Remove smbdes.c from libradius, and add to rlm_mschap and rlm_eap_leap
113         * Replace GPL'd snprintf.c in libradius with LGPL'd snprintf.[ch]
114
115 FreeRADIUS 0.9.3 ; Date: 2003/11/20 20:15:48, urgency=high
116
117         * Change rlm_eap to not log an error if given a non-EAP packet
118         * Fix rlm_ippool's call to pod2man for perl versions before 5.6
119         * Fix a remote DoS and due to mis-handling of tagged attributes,
120           and Tunnel-Password attribute.
121
122 FreeRADIUS 0.9.2 ; Date: 2003/10/14 19:00:09, urgency=low
123
124         * New rlm_ippool code to fix IP leaks
125         * New rlm_ippool_tool for manipulation of rlm_ippool databases
126
127         * Change radrelay to reject records without an Acct-Status-Type attribute
128         * Change rlm_counter to reject packets which predate last server reset
129         * Change version output to include GNU GPL information
130         * Change rlm_ldap to output bad search filters
131
132         * Fix compilation of various modules when not building with pthreads
133         * Fix segfault due to poorly initialised value in rlm_mschap
134         * Fix to only reject packets once
135         * Fix rlm_exec to work when wait=no
136         * Fix rlm_attr_filter to work in post-proxy (as intended)
137         * Fix rlm_sql to only try to load SQL drivers
138         * Fix to orrectly limit size of RADIUS packets
139         * Fix usage information to output to stdout when used with -h flag
140         * Fix configure to assume gethostbyname is BSD-Style on FreeBSD
141
142 FreeRADIUS 0.9.1 ; Date: 2003/09/04 14:56:34, urgency=low
143
144         * Replicate-To-Realm is deprecated, and hence no longer documented
145         * Document rlm_detail support for authorize and post-auth sections
146         * Improve slightly MySQL accounting record SQL query
147         * Opaquefied CHAP-Challenge
148         * Add attributes to Nomadix dictionary
149         * Fix rlm_exec's parsing of non-attribute return values
150         * Fix for a segfault while reading config files
151         * Fix for a segfault regarding hostname lengths
152         * Fix for a segfault while reading deprecated config files
153         * Fix compilation of radiusd.c when threads are disabled
154         * Recover from inability to relay
155         * Stop complaining in error log when a system call is interrupted.
156         * Don't print binary CHAP-Passwords into the logs
157         * Successfully detect GNU dbm >= 1.8.1's dbm compatibility library
158         * Fix rlm_unix to deal with requests without a username
159         * Fix "uninmplemented function" crash in postgresql driver on -HUP
160         * Revert INTERVAL types to BIGINT in postgresql example schema
161         * Fix radrelay to notice when it's out of IDs
162         * Fix radrelay to correctly skip bad attributes
163         * Fix radrelay to not leak IDs when discarding packets
164         * Fix configure to correctly identify systems without SYSV or GNU-style
165           gethostby{addr,name}_r.
166
167 FreeRADIUS 0.9.0 ; Date: 2003/07/04 21:01:29, urgency=low
168
169         * Many, many, bug fixes and feature enhancements.
170         * radrelay now updates packet 'id' on retransmissions.
171         * More checks for thread-safe functions.
172         * Fix CHAP related buffer overflow (ouch!), thanks to Masao NISHIKU.
173         * Issue warnings if deprecated configuration files are used.
174         * rlm_passwd can now add items to the reply, request, or config items.
175         * The rlm_digest, rlm_exec, and rlm_ippool modules are now marked
176           as 'stable', and included in the default build.
177         * Removed 'raduse'.  No one has used it for years.
178         * Massive fixes for Debian packaging.
179         * radclient can now send "disconnect" packets, to NASes which
180           support it.  The server, however, CANNOT send disconnect packets.
181         * Made Auth-Type, Acct-Type, etc. names consistent across
182           dictionary files and radiusd.conf.  The old (inconsistent) names
183           are still allowed for backwards compatibility.
184         * Cleaned up problems with the rlm_sql module.
185         * Updates to the rlm_ldap module.
186         * rlm_mschap no longer reads SMB password files.  See rlm_passwd,
187           instead.
188         * Changed default entry in the 'users' file to 'Auth-Type = System',
189           to allow EAP and Digest authentication to work automagically.
190         * Support for Cisco LEAP.
191         * Added many new dictionaries (Extreme, Wispr, ERX, Netscreen...)
192         * Removed support for ATTRIB_NMC.  It is now handled (better)
193           in a different manner.
194         * Dictionaries have been moved from /etc/raddb to /usr/share/freeradius
195         * Many documentation updates
196         * Ignore whitespace-only lines in the 'users' file.
197         * Patch to fix 'rlm_realm' from returning the DEFAULT entry when
198           we are looking for the NULL entry and it doesn't exist. Bug
199           noted by Nathan Miller.
200         * Disable child process spawning if we don't have threads.
201           The code doesn't work, so it's better to force the server
202           to run in single-process mode.
203         * New rlm_exec module, which allows a more generic way of
204           executing external programs.
205         * Preliminary large file support in 'configure' and in the server,
206           to support 2G+ detail files.
207         * Install documentation into /usr/local/share/doc/freeradius
208         * New/updated dictionaries for RedCreek, Bintec, Alcatel,
209           ITK, Telebit, and Cabletron.
210         * Updates to allow building on MAC OSX.
211         * Add support for Acct-Type,Session-Type and PostAuth-Type
212         * Removed builddbm.  It hasn't been used for ages.
213         * Added new post_proxy section, based on patch from Chris Brotsos.
214         * rlm_counter shouldn't reset the counters on instantiation,
215           if the reset is set to 'never'.
216         * Significant updates to the rlm_python and rlm_perl modules
217         * Fix the rlm_pap module to handle password lengths properly.
218         * Do SQL 'close' on bad sockets, to prevent descriptor leaks
219         * Case insensitivity option for rlm_radutmp
220         * New pseudo-round-robin load balancing for realms.
221         * Suppress empty SQL queries.
222         * Include strong PRNG
223         * Create 'snmp' configuration directive, so that we can disable
224           SNMP at run time, even if it's built into the server.
225         * Refresh realm as 'active' when we see a response from it,
226            Based on a patch by Angelos Karageorgiou.
227         * Don't core dump if Status-Server is received, but it's disabled.
228         * Support more variants of character fields in Oracle.
229           Patch from Stocker Gernot.
230         * Better parsing of dictionary files.
231         * Alteon web switch dictionary, from Thomas Linden
232
233 FreeRADIUS 0.8 ; Date: 2002/11/18 15:37:24, urgency=low
234
235         * Added Oracle-specific queries.
236         * Updated SQL queries to match schema.
237         * PostGreSQL reconnect patch.
238         * Added documentation on how to build on MAC OSX.
239         * Allowed SQL module to ignore unknown Acct-Status-Type values.
240         * Updated PostGreSQL queries and schema.
241         * Updated the log rotation configuration files.
242         * Colubris and updated Nomadix dictionaries, from Marko Myllynen.
243         * Normalized error messages from the SQL modules, so that they're
244           more informative.
245         * Added Suse specific directory and configuration files, from
246           Peter Nixon
247         * SQL fail-over patch, so that the module returns FAIL if
248           the back-end database is down.  Based on a patch from
249           Thomas Jalsovsky.
250         * Cleaned up the internal handling of the configuration
251           information, in preparation for better handling SIGHUP.
252         * Updated rlm_krb5 configuration to better find it's libraries
253           and include files.
254         * radclient now complains if it receives a reply from a machine
255           other than the one to which it sent the request.
256         * Updated Postgresql SQL queries to get the operator, too.
257         * Added Juniper dictionary.
258         * Added Cisco VPN3000, VPN5000, and BBSM dictionaries.
259         * New platform-neutral 'rc.radiusd'
260         * Configuration files with private information get chmod'd
261           0600 after installation.
262         * Preliminary support for clean shutdowns when a SIGTERM is
263           received.
264         * SNMP timeouts for checkrad, so there will be fewer situations
265           where it hangs for 30 seconds...
266         * Added code to clean up modules and memory when asked to exit
267           via SIGTERM.
268         * Removed all need for the old-style 'naslist' and 'client' files,
269           and noted that they are deprecated.
270         * Added support for Status-Server packets, stolen shamelessly
271           from Cistron RADIUSD.  This is despite the RFC's saying such
272           things are wrong.
273         * Bug fixes to rlm_dbm.
274         * Updates for checkrad, max40xx routine, from Aleksandr Kuzminsky.
275         * Disable caching of passwords for the Unix module.  It was
276           causing too much confusion.
277         * Fix a memory leak when proxying Authentication-Request's
278         * Attributes which are not found in the dictionary are now of
279           type 'octets', instead of 'string'.
280         * Support for "round-robin" load balancing, when proxying requests
281           to multiple servers for one realm.
282         * Minor changes for better HPUX support.
283         * Updated the documentation and README's
284         * Made FreeTDS build ONLY after hand-editing, as the FreeTDS
285           libraries are in a state of flux, due to active development.
286         * Fixes to help build the server on MAC OSX
287         * Cisco VPN 3000 dictionary, as posted to the list by Chris Deramus.
288         * Fix EAP problems with retransmission, from Rainer Weikusat.
289         * Updates to the Oracle module, from Andrea Gabellini.
290         * In xlat, Unix timestamps are unsigned ints.
291         * Security fixes for the Kerberos Module.
292         * New 'post-auth' section, to do additional processing of
293           requests after they've been authenticated.
294         * doc/aaa.txt describes how the server works.
295         * More uniform encoding/decoding of passwords, so that they will
296           be seen as clear-text where possible.
297         * radwho and radzap now read 'radiusd.conf' to discover where the
298           radutmp files are located.  Patch from Andrea Gabellini.
299         * Preliminary 'expression' module, to allow you to do cool things
300           like:    Session-Timeout = `%{expr:3600 - %{sql:SELECT ...}}`
301         * Added ability to do xlat on check items, and reply items,
302           so that the value of the reply attributes can be dynamically
303           generated.
304         * Added MIBs, taken from the RFC's.  This makes SNMP queries to
305           the server a little easier to set up.
306         * Don't SEGV when we receive a packet which is larger than the
307           size claimed in the RADIUS portion.  Patch from Vaughn Skinner.
308         * SNMP patches from Harrie Hazewinkel.
309         * Added Altiga dictionary, from Calum <calum.aug02@umtstrial.co.uk>
310         * New Rewrite-Rule for rlm_attr_rewrite, to selectively choose
311           which rewrite rule is performed, and when.
312         * Minor bug fixes for radrelay.
313         * Bug fixes in SQL and sub-modules.
314         * Major updates to dialup_admin.
315         * Fixed handling of tagged string attributes, so that the server
316           doesn't go off into never-never land.
317         * Cleaned up experimental rlm_smb, so that it builds on more
318           platforms.
319         * Don't over-write request->reply->vps with the Reply-Message,
320           when doing authentication rejects with Exec-Program-Wait.
321         * Added 'instantiate' section, so that modules like 'expr',
322           with only an 'xlat' function can be registered.
323         * Allow '{' and '}' in xlat'd strings.
324         * C++ compatibility patch from Andrey Kotrekhov, for libradius.
325         * Automatically decrypt/encrypt User-Password, so that debugging
326           mode will print out the text password, and not the random
327           garbage it previously showed.
328         * Cleaned up header files and function prototypes for the SQL
329           sub-modules.
330         
331 FreeRADIUS 0.7 ; Date: 2002/07/26 18:01:50 , urgency=high
332
333         * Allow attributes of type 'date' to be sent in outgoing packets.
334           Bug found by Loh John Wu <ljwu@sandvine.com>
335         * Add 'Realm' attribute, even if it's a LOCAL realm.
336           Bug noted by Chris Brotsos.
337         * Added experimental SMB authentication module, which uses
338           PAP passwords to authenticate against an NT-Domain.
339           NT/LM-passwords are not currently supported.
340         * More documentation for rlm_passwd, rlm_mschap, and rlm_digest.
341         * 'configure' changes to better find sem_init and friends.
342         * Allow the use of previously installed libtool, and libltdl.
343           This appears to help a lot on FreeBSD.
344         * Fixes to work on non-threaded builds.
345           Patch from Rainer Weikusat.
346         * SQL now re-connects to the server, if the connection is lost.
347           Currently only MySQL is fixed, but other patches will follow.
348           Patch from Todd T. Fries.
349         * Added experimental use of dynamicly translated variables,
350           CallBack-Number = `%{request:Calling-Station-Id}`
351           sets the value of the CallBack-Number attribute to the value of
352           the Calling-Station-Id in the original request.
353         * Cute hack: Allow regex matching on IP addresses, by placing
354           the string representation of the IP address (1.2.3.4) into
355           the internal data structure.  This allows things like
356           NAS-IP-Address =~ "^192\.168", which may be useful.
357         * Add documentation for experimental rlm_dbm module.
358         * Added experimental Perl module.
359         * Added the relevant IETF RFC's (standards documents) to 'doc/rfc',
360           along with some simple perl scripts to convert them to cross-
361           referenced HTML.
362         * Updated the experimental Python module.
363         * Added Cisco SSG VSA's
364         * When rejecting authentication due to external Exec-Program, do
365           NOT free the reply pairs, as the server core will take care of
366           doing that.  Bug noted by Thomas Jalsovsky
367         * New experimental module: rlm_cram
368           Supports APOP, CRAM-MD5, CRAM-MD4, CRAM-SHA1 with it's own
369           VSA's. This module may be used for SMTP/POP3/IMAP4 server
370           authentication.
371         * Make Exec-Program and Exec-Program-Wait work in debugging mode.
372         * Finalize the radrelay additions, based on Cistron RADIUS
373           Patches from Simon <lists@routemeister.net>
374         * Fix issues with linking, by making libradius shared.
375         * Fix issues with MD4, MD5, SHA1, and use of OpenSSL
376         * Update rlm_x99_token module to compile.
377
378 FreeRADIUS 0.6.0 ; Date: Date: 2002/07/03 14:16:33 , urgency=high
379
380         * Many bug fixes.  For explicit details, see:
381                 http://www.freeradius.org/cvs-log/
382         * Change to the user/group specified in the config file in all
383           modes ( debug and daemon ).
384         * SQL sockets are rotated so that all are used, to prevent the
385           SQL server timing out and closing unused sockets.  Patch from
386           Todd T. Fries
387         * Sybase driver from mattias@nogui.se.
388         * Modules are now versioned.
389         * Delete garbage Proxy-Reply attributes sent by the home server
390           before performing our own reply.
391         * Fix race conditions when duplicate packets resulted in a request
392           being processed by two threads, at the same time.
393         * Add '-d' command-line option to radwho
394           Bug noted by Matthew Schumacher
395         * Corrected issue that when a home server never replied to a
396           proxied request, the server may die.
397         * In SQL, look in radcheck, if not found there, try radgroupcheck.
398           Patch from Thomas Jalsovsky.
399         * Set sql user name for ALIVE accounting packets, too.
400           Patch from Simon <lists@routemeister.net>.
401         * Use port-specific checking for realms, now that we can proxy to
402           different auth/acct servers for the same realms.
403           Patch from Eddie Stassen.
404         * Minor updates to encrypted tunnel passwords.
405         * Default 'run_dir' is now /var/run/radiusd, not var/run.
406           /var/run is writeable only by root, and radiusd may be run suid.
407         * Modules are now versioned, so that upgrading the server
408           ensures that the new modules are installed.
409         * Fix sql code, so that magic SQL characters don't get the
410           SQL server excited.
411         * Remove references to "UNKNOWN-NAS" in log messages.
412         * Properly handle fork() and obtaining child processes exit
413           status when using threads.  (pthread is broken w.r.t. signals)
414         * Correct code which would send erroneous reject, when the reject
415           was delayed, and a new request came in.
416         * Fix race condition where proxied requests would sometimes never
417           be re-sent.  Bug noted by Eddie Stassen.
418         * Corrected LDAP3 schema
419         * Implemented Digest authentication, as per IETF document
420           draft-sterman-aaa-sip-00.txt, to perform authentication against
421           a Cisco SIP server.
422         * If no password or group files have been specified in the config,
423           use the standard system calls to find them, rather than giving
424           up.  Patch from Steve Langasek.       
425         * Return Proxy-State attributes in a delated Access-Reject
426         * Corrected 'session zap' logic, when an old and unused session
427           is deleted from the databases.  Accounting packets with garbage
428           Client-IP-Address attributes should no longer be a problem.
429         * Bug fixed in LDAP attribute map, for MS-CHAP related attributes.
430         * Fixes to the EAP module to work better with XP.
431         * Support for MS-SQL, using the FreeTDS library,
432           from Dmitri Ageev
433         * New operators =* and !*.  See 'man 5 users' for details.
434         * Added translation for %{config:section.subsection.item}, to
435           allow run-time translation of internal configuration parameters.
436         * New rlm_sqlcounter module, to keep counters based on SQL data.
437         * Fix rlm_realm, to allow seperate proxying of accounting and
438           authentication requests.
439         * Bug fixes in PostgreSQL back-end, from Andrew Kukhta.
440         * Increase internal buffers, to allow large SQL query strings.
441         * Added debug level 3 (-xxx), where debug messages have time stamps.
442         * Fix 'radwho' to use the correct radutmp file, as found by
443           'configure' (but radwho still doesn't read radiusd.conf)
444         * Fix bugs in tunnel (tagged attribute) code, which would prevent
445           tagged attributes from being generated correctly in a packet.
446         * Build only 'stable' modules by default.  Experimental modules
447           require --with-experimental-modules to be passed to 'configure'
448         * New module rlm_ippool, to do server-side IP pooling.
449         * Fix rlm_eap module for portability, to work on non-x86 platforms.
450         * Re-connect to the LDAP server if the connection idles out
451         * Increased the visibility of the warning messages when doing
452           'make install'
453         * Fixed EAP module to use 16-bit integers, so that it will
454           work on big-endian architectures.
455         
456 FreeRADIUS 0.5.0 ; Date: 2002/03/14 22:18:22, urgency=medium
457
458         * Many bug fixes.  For explicit details, see:
459                 http://www.freeradius.org/cvs-log/
460         * Added Foundry dictionary, from Thomas Keitel
461         * Fix a logic bug in the 'walk over request list' code, which
462           would sometimes result in a request being deleted while it
463           was still being processed.  Found by Rainer Clasen
464         * New 'tuning' guide, for optimizing the server's speed.
465         * The default ports are now 1812/1813, which is the standard.
466         * Fix a bug which would hang the server when many SQL connections
467           were open.  Found by Cvetan Ivanov <zezo@spnet.net>
468         * Updated MySQL schema, with sanity checks, based on a schema from
469           Thomas Huehn <huehn@eozaen.net>
470         * Added 'Aptis' (Nortel CVX) dictionary.
471         * Added Ipv6 attributes (as 'octets' type for now)
472         * 'xlat' capability for SQL, so other modules can do SQL queries.
473         * We don't need a shared secret for LOCAL realms.
474         * Added better description of internal variables.
475         * Configurable fail-over to DEFAULT realm.  Sometimes we don't
476           want to use the DEFAULT realm, if all configured realms are
477           marked dead.  From Rainer Clasen.
478         * new configuration items 'max_attributes' and 'reject_delay'
479           If the packet contains too many attributes, it can be rejected.
480           We can also delay sending an Access-Reject, which slows down
481           certain DoS attacks.
482         * Updates to redhat scripts and spec file, from Marko Myllynen.
483         * Python module (EXPERIMENTAL) from migs paraz <mparaz@yahoo.com>
484         * Add ability to find *best* match when comparing attributes.
485           If there is more than one attribute in a request and the first
486           one doesn't match, go check the second one, instead of failing.
487         * unixODBC support for SQL, from Dmitri Ageev <d_ageev@ortcc.ru>
488         * Use thread-safe versions of library calls.  This work is still
489           on-going.
490         * New rlm_passwd module, to allow general parsing of passwd-style
491           files.
492         * Preliminary EAP-TLS support.
493         * Updated LDAPv3 schema
494         * Correct checks for Odbc, and fix bugs in the module.
495           Andreas Kainz <aka@maxxio.at>
496         * MAN page fixes and updates
497         * Added PHP web interface 'dialup_admin'
498         * Password = "UNIX" or "PAM" backwards compatibility removed.
499         * Use the operators in the SQL schema and queries, and bug
500           fixes in the SQL module.
501           Randy Moore <ramoore@axion-it.net>
502         * fgetpwent() compatibility, for systems without it,
503           from Daniel Carroll <freeradius@defiant.mesastate.edu>
504         * Added PAP authentication module, as a step to removing
505           most authentication handlers in other modules.
506         * Send a Access-Reject after max_request_time
507         * Multiple fixes in the LDAP module.
508         * Quintum dictionary by Jeremy McNamara <jj@indie.org>
509         * Preliminary EAP Module with MD5 support
510           Contributed by Raghu <raghud@hereuare.com>
511         * Better sanity checking for bad VSA's when receiving a packet
512         * new 'xlat register' so that attribute values may be pulled
513           out of configurable databases at run-time.
514           e.g. %{ldap:ldap:///dc=company,dc=com?uid?sub?uid=%u}
515         * Minor fixes to debian package rules
516         * Attribute 'Password' deprecated in favor of 'User-Password'.
517         * MS-CHAP and MS-CHAPv2 MPPE support added.
518           Contributed by Takahiro Wagatsuma <waga@sic.shibaura-it.ac.jp>.
519         * X9.9 token enhancements (several).
520
521   --  Alan DeKok <aland@ox.org>
522
523 FreeRADIUS 0.4.0 ; urgency=low
524
525         * Allow the MS-CHAP module to work, and to read /etc/smbpass
526           3APA3A <3APA3A@SECURITY.NNOV.RU>
527         * Remove the server requirement that one of User-Password
528           or CHAP-Password exist when doing authentication.  These
529           checks should be handled by the modules.  This change
530           also prepares us for EAP.
531           Patch from Raghu <raghud@hereuare.com>
532         * Make NAS-Port-ID in radwho, raduse, etc. unsigned,
533           instead of signed.
534           Patch from John Morrissey <jwm@horde.net>
535         * Allow \t and \n inside of configuration strings.
536           Frank Cusack <fcusack@fcusack.com>
537         * X9.9 Challenge-Response token card support.
538           For now, only CRYPTOCard tokens are supported.
539           Frank Cusack <fcusack@fcusack.com>
540         * Fix core dump on Solaris in radwho.c
541           Patch from Eddie Stassen <eddies@saix.net>
542         * Fix leak / core dump in Oracle module.
543         * Fix memory leak in rlm_counter
544           Kostas Kalevras <kkalev@noc.ntua.gr>
545         * "LOCAL" realms do not need to have an entry in the 'clients'
546           file.  Philippe Levan <levan@epix.net>
547
548   --  Alan DeKok <aland@ox.org>
549
550 FreeRADIUS 0.3.0 ; urgency=low
551
552         * Added ability to send debug messages to the log file, when
553           running in daemon mode.
554         * Miscellaneous fixes to get Debian packaging working.
555         * When trapping a signal, don't SIGKILL children on a SIGTERM,
556           SIGTERM them, instead.  This allows Exec-Program scripts to
557           catch the signal, and finish processing, instead of dying.
558           Bug noted by Michael Chernyakhovsky <magmike@mail.ru>
559         * Increased limit on length of user name read from /etc/passwd,
560           to match the maximum allowed by RADIUS.
561           Bug noted by "Gonzalez B., Fernando" <fgonzalez@manquehue.cl>
562         * Configurable fail-over when proxying packets.  If the
563           home server doesn't respond to a repeated proxied request,
564           it's marked as 'dead', and the next one in the list is used.
565           Patch by Eddie Stassen <eddies@saix.net> and <spirn@21cn.com>
566         * Pass Access-Challenge attributes through the server, in
567           preparation for EAP.
568           Raghu <raghud@hereuare.com>
569         * More fixes for RFC compliance on the Message-Authenticator
570           Raghu <raghud@hereuare.com>
571         * Merged OSFC2/OSFSIA authentication patches from Cistron.
572           (Bug # 104)  The patches are not well tested, however.
573         * IBM DB2 UDB V7.1 SQL driver, contributed by
574           Joerg Wendland <wendland@scan-plus.de>
575         * Fix the IP + Port address assignment.
576           Bug found by "John Padula" <john_padula@aviancommunications.com>
577         * Patch to avoid smashing the contents of Ascend binary filters.
578           Michael Chernyakhovsky <magmike@mail.ru>
579         * Create and Validate Message-Authenticator attribute, in
580           preparation for EAP.
581         * Initialize variables properly in rlm_attr_filter.
582           Patch from Andriy I Pilipenko <bamby@marka.net.ua>
583         * Renamed RedHat init script from 'radiusd.init' to 'radiusd'.
584           This allows it to work properly with the RedHat rc system.
585           Patch from Christian Vogel <chris@amor.iksys.de>
586         * Fix the configure script checks for PostgreSQL, so that
587           they use the 'test' command properly.
588           Bug found by Robert Haskins <rhaskins@ziplink.net>
589         * Change instances of 'assert' to 'rad_assert', so that it
590           can log the error to the standard radius log files.
591           Patch from Vesselin Atanasov <vesselin@bgnet.bg>
592         * Patch to prevent segv when freeing results, from
593           Tomas Heredia <tomas@intermediasp.com>
594         * Added support for Exec-Program to acct.  Bug found by
595           <magmike@mail.ru>
596         * Corrected rlm_files so that raddb/acct_users works
597         * When doing synchronous proxying, update proxy next try
598           entries, so that the server doesn't eat CPU time.
599           Raghu <raghud@hereuare.com>
600         * Add primitive dictionary.nomadix <CBoyd@apogeetelecom.com>
601         * Log messages to console, if the logger hasn't been
602           initialized.  <vesselin@bgnet.bg>
603         * Log invalid user for proxy rejects, too. <help@visp.net>
604         * Fixed Expiration attribute handling.
605         * Added code to handle Ascend-Send-Secret and Ascend-Receive-Secret
606         * Removed non thread-pool code.  If we have threads, we now force
607           the use of thread pools.
608         * Update version number
609         * correct bug where proxied accounting packets would never have a
610           reply sent back to the NAS, or the reply would be sent twice.
611
612   --  Alan DeKok <aland@ox.org>
613         
614 FreeRADIUS Alpha 0.2.0, July 30, 2001.
615
616         * call openlog() again when using PAM, to get the correct log
617         facility.
618         * Update child thread code, to minimize race conditions.
619         * Make thread pools the default.  Using plain child threads is NOT
620         recommended.
621         * Ignore SIGPIPE to get ride of crashes when using ldap.
622         * Update proxying code to work better.
623         * Platform independent pthread_cancel()ling
624         * Fix 'unresponsive child pid' erroneous warning messages.
625         * Many changes to get various SQL modules working.
626         Note that there may still be some issues with Oracle.
627         * Added configure options 'with-rlm-FOO-include/lib-dir', so that
628         lower-level rlm_FOO modules can be configured via the top-level
629         configuration file.  This isn't completely done yet.
630         * Fix check for shared library using libtool info, instead of
631         assuming extension being ".so".
632         * Fixes for HPUX.  We probably need more.
633         * Many additional bug fixes and changes.