a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
FreeRADIUS 2.2.0 Mon 10 Sep 2012 12:00:00 CEST, urgency=medium
Feature improvements
* 100% configuration file compatible with 2.1.x.
The only fix needed is to disallow "hashsize=0" for rlm_passwd
* Update Aruba, Alcatel Lucent, APC, BT, PaloAlto, Pureware,
Redback, and Mikrotik dictionaries
* Switch to using SHA1 for certificate digests instead of MD5.
See raddb/certs/*.cnf
* Added copyright statements to the dictionaries, so that we know
when people are using them.
* Better documentation for radrelay and detail file writer.
See raddb/modules/radrelay and raddb/radrelay.conf
* Added TLS-Cert-Subject-Alt-Name-Email from patch by Luke Howard
* Added -F <file> to radwho
* Added query timeouts to MySQL driver. Patch from Brian De Wolf.
* Add /etc/default/freeradius to debian package.
Patch from Matthew Newton
* Finalize DHCP and DHCP relay code. It should now work everywhere.
See raddb/sites-available/dhcp, src_ipaddr and src_interface.
* DHCP capabilitiies are now compiled in by default.
It runs as a DHCP server ONLY when manually enabled.
* Added one letter expansions: %G - request minute and %I request
ID.
* Added script to convert ISC DHCP lease files to SQL pools.
See scripts/isc2ippool.pl
* Added rlm_cache to cache arbitrary attributes.
* Added max_use to rlm_ldap to force connection to be re-established
after a given number of queries.
* Added configtest option to Debian init scripts, and automatic
config test on restart.
* Added cache config item to rlm_krb5. When set to "no" ticket
caching is disabled which may increase performance.
Bug fixes
* Fix CVE-2012-3547. All users of 2.1.10, 2.1.11, 2.1.12,
and 802.1X should upgrade immediately.
* Fix typo in detail file writer, to skip writing if the packet
was read from this detail file.
* Free cached replies when closing resumed SSL sessions.
* Fix a number of issues found by Coverity.
* Fix memory leak and race condition in the EAP-TLS session cache.
Thanks to Phil Mayers for tracking down OpenSSL APIs.
* Restrict ATTRIBUTE names to character sets that make sense.
* Fix EAP-TLS session Id length so that OpenSSL doesn't get
excited.
* Fix SQL IPPool logic for non-timer attributes. Closes bug #181
* Change some informational messages to DEBUG rather than error.
* Portability fixes for FreeBSD. Closes bug #177
* A much better fix for the _lt__PROGRAM__LTX_preloaded_symbols
nonsense.
* Safely handle extremely long lines in conf file variable expansion
* Fix for Debian bug #606450
* Mutex lock around rlm_perl Clone routines. Patch from Eike Dehling
* The passwd module no longer permits "hashsize = 0". Setting that
is pointless for a host of reasons. It will also break the server.
* Fix proxied inner-tunnel packets sometimes having zero authentication
vector. Found by Brian Julin.
* Added $(EXEEXT) to Makefiles for portability. Closes bug #188.
* Fix minor build issue which would cause rlm_eap to be built twice.
* When using "status_check=request" for a home server, the username
and password must be specified, or the server will not start.
* EAP-SIM now calculates keys from the SIM identity, not from the
EAP-Identity. Changing the EAP type via NAK may result in
identities changing. Bug reported by Microsoft EAP team.
* Use home server src_ipaddr when sending Status-Server packets
* Decrypt encrypted ERX attributes in CoA packets.
* Fix registration of internal xlat's so %{mschap:...} doesn't
disappear after a HUP.
* Can now reference tagged attributes in expansions.
e.g. %{Tunnel-Type:1} and %{Tunnel-Type:1[0]} now work.
* Correct calculation of Message-Authenticator for CoA and Disconnect
replies. Patch from Jouni Malinen
* Install rad_counter, for managing rlm_counter files.
* Add unique index constraint to all SQL flavours so that alternate
queries work correctly.
* The TTLS diameter decoder is now more lenient. It ignores
unknown attributes, instead of rejecting the TTLS session.
* Use "globfree" in detail file reader. Prevents very slow leak.
Closes bug #207.
* Operator =~ shouldn't copy the attribute, like :=. It should
instead behave more like ==.
* Build main Debian package without SQL dependencies
* Use max_queue_size in threading code
* Update permissions in raddb/sql/postgresql/admin.sql
* Added OpenSSL_add_all_algorithms() to fix issues where OpenSSL
wouldn't use methods it knew about.
* Add more sanity checks in dynamic_clients code so the server won't
crash if it attempts to load a badly formated client definition.
Feature improvements
* Updates to dictionary.erx, dictionary.siemens, dictionary.starent,
dictionary.starent.vsa1, dictionary.zyxel, added dictionary.symbol
* Added support for PCRE from Phil Mayers
* Configurable file permission in rlm_linelog
* Added "relaxed" option to rlm_attr_filter. This copies attributes if at least
one match occurred.
* Added documentation on dynamic clients. See raddb/modules/dynamic_clients.
* Added support for elliptical curve cryptography. See ecdh_curve in
raddb/eap.conf.
* Added support for 802.1X MIBs in checkrad
* Added support for %{rand:...}, which generates a uniformly distributed number
between 0 and the number you specify.
* Created "man" pages for all installed commands, and documented options for all
commands. Patch from John Dennis.
* Allow radsniff to decode encrypted VSAs and CoA packets.
* Always send Message-Authenticator in radtest.
* Updated Oracle schema and queries
* Added SecurID module. See src/modules/rlm_securid/README
Bug fixes
* Fix memory leak in rlm_detail
* Fix "failed to insert event"
* Allow virtual servers to be reloaded on HUP. It no longer complains about
duplicate virtual servers.
* Fix %{string:...} expansion
* Fix "server closed socket" loop in radmin
* Set ownership of control socket when starting up
* Always allow root to connect to control socket, even if "uid" is set. They're
root. They can already do anything.
* Save all attributes in Access-Accept when proxying inner-tunnel EAP-MSCHAPv2
* Fixes for DHCP relaying.
* Check certificate validity when using OCSP.
* Updated Oracle "configure" script
* Fixed typos in dictionary.alvarion
* WARNING on potential proxy loop.
* Be more aggressive about clearing old requests from the internal queue
* Don't open network sockets when using -C
* Install the "radcrypt" program.
* Enable radclient to send requests containing MS-CHAPv1 Send packets with:
MS-CHAP-Password = "password". It will be automatically converted to the
correct MS-CHAP attributes.
* Added "-t" command-line option to radtest. You can use "-t pap", "-t chap",
"-t mschap", or "-t eap-md5". The default is "-t pap"
* Make the "inner-tunnel" virtual server listen on 127.0.0.1:18120 This change
and the previous one makes PEAP testing much easier.
* Added more documentation and examples for the "passwd" module.
* Added dictionaries for RFC 5607 and RFC 5904.
* Added note in proxy.conf that we recommend setting
"require_message_authenticator = yes" for all home servers.
* Added example of second "files" configuration, with documentation.
This shows how and where to use two instances of a module.
* Updated radsniff to have it write pcap files, too. See '-w'.
* Print out large WARNING message if we send an Access-Challenge for EAP, and
receive no follow-up messages from the client.
* Added Cached-Session-Policy for EAP session resumption. See raddb/eap.conf.
* Added support for TLS-Cert-* attributes. For details, see
raddb/sites-available/default, "post-auth" section.
* Added sample raddb/modules/{opendirectory,dynamic_clients}
* Updated Cisco and Huawei, HP, Redback, and ERX dictionaries.
* Added RFCs 5607, 5904, and 5997.
* For EAP-TLS, client certificates can now be validated using an external
command. See eap.conf, "validate" subsection of "tls".
* Made rlm_pap aware of {nthash} prefix, for compatibility with legacy RADIUS
systems.
* Add Module-Failure-Message for mschap module (ntlm_auth)
* Made rlm_sql_sqlite database configurable. Use "filename" in sql{} section.
* Added %{tolower: ...string ... }, which returns the lowercase version of the
string. Also added %{toupper: ... } for uppercase.
* Bug fixes.
Feature improvements
* Add radmin command "stats detail <file>" to see what
is going on inside of a detail file reader.
* Added documentation for CoA. See raddb/sites-available/coa
* Add sub-option support for Option 82. See dictionary.dhcp
* Add "server" field to default SQL NAS table, and documented it.
Bug fixes
* Reset "received ping" counter for Status-Server checks. In some
corner cases it was not getting reset.
* Handle large VMPS attributes.
* Count accounting responses from a home server in SNMP / statistics
code.
* Set EAP-Session-Resumed = Yes, not "No" when session is resumed.
* radmin packet counter statistics are now unsigned, for numbers
2^31..2^32. After that they roll over to zero.
* Be more careful about expanding data in PAP and MS-CHAP modules.
This prevents login failures when passwords contain '{'.
* Clean up zombie children if there were many "exec" modules being
run for one packet, all with "wait = no".
* re-open log file after HUP.
* Fix "no response to proxied packet" complaint for Coa / Disconnect
packets. It shouldn't ignore replies to packets it sent.
* Calculate IPv6 netmasks correctly.
* Fix SQL module to re-open sockets if they unexpectedly close.
* Track scope for IPv6 addresses. This lets us use link-local
addresses properly.
* Updated Makefiles to no longer use the shell for recursing into
subdirs. "make -j 2" should now work.
* Updated raddb/sql/mysql/ippool.conf to use "= NULL".
* Updated Makefiles so that "make reconfig" no longer uses the shell
for recursing into subdirs, and re-builds all "configure" files.
* Used above method to regenerate all configure scripts.
* Updated SQL module to allow "server" field of "nas" table
to be blank: "". This means the same as it being NULL.
* Fixed regex realm example. Create Realm attribute with value
of realm from User-Name, not from regex.
* If processing a DHCP Discover returns "fail / reject", ignore
the packet rather than sending a NAK.
* Allow '%' to be escaped in sqlcounter module.
* Fix typo internal hash table.
* For PEAP and TTLS, the tunneled reply is added to the reply,
rather than integrated via the operators. This allows multiple
VSAs to be added, where they would previously be discarded.
* Make request number unsigned. This changes nothing other than
the debug output when the server receives more than 2^31 packets.
* Don't block when reading child output in 'exec wait'. This means
that blocked children get killed, instead of blocking the server.
* Enabled building without any proxy functionality
* radclient now prefers IPv4, to match the default server config.
* Print useful error when a realm regex is invalid
* relaxed rules for preprocess module "with_cisco_vsa_hack". The
attributes can now be integer, ipaddr, etc. (i.e. non-string)
* Allow rlm_ldap to build if ldap_set_rebind_proc() has only
2 arguments.
* Update configure script for rlm_python to avoid dynamic linking
problems on some platforms.
* Do suid to "user" when running in debug mode as root
* Make "allow_core_dumps" work in more situations.
* In detail file reader, treat bad records as EOF.
This allows it to continue working when the disk is full.
* Fix Oracle default accounting queries to work when there are no
gigawords attributes. Other databases already had the fix.
* Fix rlm_sql to show when it opens and closes sockets. It already
says when it cannot connect, so it should say when it can connect.
* "chmod -x" for a few C source files.
* Pull update spec files, etc. from RedHat into the redhat/ directory.
* Allow spaces when parsing integer values. This helps people who
put "too much" into an SQL value field.
- Feature improvements
* Print more descriptive error message for too many EAP sessions.
This gives hints on what to do when "failed to store handler"
* Commands received from radmin are now printed on stdout when
in debugging mode.
* Allow accounting packets to be written to a detail file, even
if they were read from a different detail file.
* Added OpenSSL license exception (src/LICENSE.openssl)
- Bug fixes
* DHCP sockets can now set the broadcast flag before binding to a
socket. You need to set "broadcast = yes" in the DHCP listener.
* Be more restrictive on string parsing in the config files
* Fix password length in scripts/create-users.pl
* Be more flexible about parsing the detail file. This allows
it to read files where the attributes have been edited.
* Ensure that requests read from the detail file are cleaned up
(i.e. don't leak) if they are proxied without a response.
* Write the PID file after opening sockets, not before
(closes bug #29)
* Proxying large numbers of packets no longer gives error
"unable to open proxy socket".
* Avoid mutex locks in libc after fork
* Retry packet from detail file if there was no response.
* Allow old-style dictionary formats, where the vendor name is the
last field in an ATTRIBUTE definition.
* Removed all recursive use of mutexes. Some systems just don't
support this.
* Allow !* to work as documented.
* make templates work (see templates.conf)
* Enabled "allow_core_dumps" to work again
* Print better errors when reading invalid dictionaries
* Sign client certificates with CA, rather than server certs.
* Fix potential crash in rlm_passwd when file was closed
* Fixed corner cases in conditional dynamic expansion.
* Use InnoDB for MySQL IP Pools, to gain transactional support
* Apply patch to libltdl for CVE-2009-3736.
* Fixed a few issues found by LLVM's static checker
* Keep track of "bad authenticators" for accounting packets
* Keep track of "dropped packets" for auth/acct packets
* Synced the "debian" directory with upstream
* Made "unlang" use unsigned 32-bit integers, to match the
dictionaries.
While here fix broken user destination directory installation as well.
* Full support for CoA and Disconnect packets as per RFC 3576 and RFC 5176.
Both receiving and proxying packets is supported.
* Added "src_ipaddr" configuration to "home_server". See proxy.conf for details.
* radsniff now accepts -I, to read from a filename instead of a device.
* radsniff also prints matching requests and any responses to those requests
when '-r' is used.
* Added example of attr_filter for Access-Challenge packets
* Added support for udpfromto in DHCP code
* radmin can now selectively mark modules alive/dead. See "set module state".
* Added customizable messages on login success/fail.
* Document "chase_referrals" and "rebind" in raddb/modules/ldap
* Preliminary implementation of DHCP relay.
* Made thread pool section optional. If it doesn't exist, the server will run
single-threaded.
* More...
* radclient exits with 0 on successful (accept / ack), and 1 otherwise
(no response / reject)
* Added support for %{sql:UPDATE ..}, and insert/delete
* Added sample "do not respond" policy
* New VSAs for Juniper from Bjorn Mork
* Include more RFC dictionaries in the default install
* More documentation for the WiMAX module
* Added "chase_referrals" and "rebind" configuration to rlm_ldap
* Don't load pre/post-proxy if proxying is disabled
* Added %{md5:...}, which returns MD5 hash in hex
* Added configurable "retry_interval" and "poll_interval" for "detail"
listeners.
* Added "delete_mppe_keys" configuration option to rlm_wimax.
Apparently some WiMAX clients misbehave when they see those keys.
* Added experimental rlm_ruby
* Add Tunnel attributes to ldap.attrmap
* Enable virtual servers to be reloaded on HUP
* Updated "radwatch" script to be more robust
* Added certificate compatibility notes in raddb/certs/README, for
compatibility with different operating systems. (i.e. Windows)
* Bug Fixes
* Permit multiple "-e" in radmin.
* Add support for originating CoA-Request and Disconnect-Request.
See raddb/sites-available/originate-coa.
* Added "lifetime" and "max_queries" to raddb/sql.conf.
This helps address the problem of hung SQL sockets.
* Allow packets to be injected via radmin. See "inject help" in radmin.
* Answer VMPS reconfirmation request.
* Sample logrotate script in scripts/logrotate.freeradius
* Add configurable poll interval for "detail" listeners
* New "raddebug" command. This prints debugging information from
a running server.
* Add "require_message_authenticator" configuration to home_server
configuration. This makes the server add Message-Authenticator
to all outgoing Access-Request packets.
* Added smsotp module.
* Enabled the administration socket in the default install.
See raddb/sites-available/control-socket, and "man radmin"
* Handle duplicate clients, such as with replicated or
load-balanced SQL servers and "readclients = yes"
* Bug fixes
This should fix PR#39952
MAKE_JOBS_SAFE=no
05 December 2008 - Version 2.1.3 has been released.
The focus of this release is stability.
Feature Improvements
* Allow running with user=radiusd and binding to secure sockets.
* Start sending Status-Server "are you alive" messages earlier, which helps with proxying multiple realms to a home server.
* Removed thread pool code from rlm_perl. It's not necessary.
* Added example Perl configuration to raddb/modules/perl
* Force OpenSSL to support certificates with SHA256. This seems to be necessary for WiMAX certs.
Bug Fixes
* Fix Debian patch to allow it to build.
* Fix potential NULL dereference in debugging mode on certain platforms for TTLS and PEAP inner tunnels.
* Fix uninitialized memory in handling of vendor definitions
* Fix parsing of quoted (but non-string) attributes in the users< file.
* Initialize unknown NAS IP to 255.255.255.255, rather than 0.0.0.0
* use SUN_LEN in control socket, to avoid truncation on some platforms.
* Correct internal handling of debug condition to prevent it from being over-written.
* Check return code of regcomp in unlang, so that invalid regular expressions are caught rather than mishandled.
* Make rlm_sql use <ltdl.h>. Addresses bug #610.
* Document list "type = status" better. Closes bug #580.
* Set "default days" for certificates, because OpenSSL won't do it. This closes bug #615.
* Reference correct list in example raddb/modules/ldap. Closes#596.
* Increase default schema size for Acct-Session-Id to 64. Closes#540.
* Fix use of temporary files in dialup-admin. Closes#605 and addresses CVE-2008-4474.
* Addressed a number of minor issues found by Coverity.
* Added DHCP option 150 to the dictionary. Closes#618.
04 December 2008 - Version 2.1.2 has been released.
Due to packaging issues, 2.1.2 has been pulled from the net.
Patches mainly from adam@ with some changes by me
05 September 2008 - Version 2.1.0 has been released.
The focus of this release is features.
Feature Improvements
* Clients may now be defined dynamically, based on IP address. See raddb/sites-available/dynamic-clients.
* SNMP support is now available through an experimental Perl script. See scripts/snmp-proxy/README
* SNMP statistics are also available through Status-Server packets. See raddb/sites-available/status
* Added more Microsoft attributes from bug #568.
* The linelog module has more functionality and flexibility. See raddb/modules/linelog.
* The debugging output has been sanitized. It should be much more readable.
* Debug logs can now be turned on/off while the server is running, for a user, group, realm, etc. See the log section of raddb/radiusd.conf.
* Added support for WiMAX Forum attributes. The dynamic keys are not yet calculated. See share/dictionary.wimax
* Added session resumption for PEAP and TTLS. See raddb/eap.conf, and the cache sub-section.
* Added radmin command-line tool for administering a running server. See man radmin and raddb/sites-available/control-socket.
Bug Fixes
* Double escaping of '\\' in the users (and some other) files has been fixed. If you have '\\' in the users file, your configuration will need to be checked, and fixed!
* Parse security section of radiusd.conf. This was accidentally deleted in 2.0.5. Closes bug #566.
* Bind to interface before IP, which allows DHCP sockets to listen on "*" for multiple interfaces.
* Fix handling of giaddr in DHCP responses.
* Corrected parsing of status_check in home_server so that it works.
* Fix hints so that "Puser" works again.
* Removed length restrictions on attribute names in the dictionaries.
* Update socket code to avoid C compiler optimizations.
25 September 2008 - Version 2.1.1 has been released.
The focus of this release is stability.
Feature Improvements
* Many more options and features are available via radmin. See man radmin and raddb/sites-available/control-socket.
* Many more commands available via the control socket. Connect via radmin, and type help for more information.
* Added dictionary.networkphysics and dictionary.lancom.
* Calculate WiMAX MIP keys, and added sample WiMAX SQL tables.
Bug Fixes
* Fixed bug that made radmin not work.
* Fixed Suse && Debian package scripts.
* Fixed issues with dynamic clients.
* Fixed configure checks for -lreadline
* rlm_sqlippool no longer needs to be linked to rlm_sql.
* Add statistics for detail file listeners. This closes bug #593.
* Fixed printing of some WiMAX attributes.
* Fixed double free on exit() in rlm_attr_filter.
* Fixed build issues on Solaris.
* Fixed fast session resumption for EAP-TLS.
Feature Improvements
* Permit SQL authorize_reply_query to be empty.
* Allow setting response packet type in Post-Proxy-Type Fail handler.
* Added install-chown target to set correct permission and ownership make RADMIN=radmin RGROUP=radius install-chown.
* Support for LDAP-Group and other dynamic comparison attribute in unlang. Developed from a patch by Jason Alderfer.
* Added chroot support. See radiusd.conf for comments.
* Allow clients of 0/0. We do not recommend using this, though.
* Moved many module configurations into raddb/modules/*.
Bug Fixes
* Allow proxying to virtual servers for accounting packets, too.
* Added num_fields function to PostgreSQL client. This lets clients be read from a PostgreSQL database.
* Updated proxy fallback mechanism to validate fallback servers, and to process fallback requests in a child thread.
* The realm module returns ok for LOCAL realms, not noop.
* Fixed some DHCP code handling. The examples should now work.
with previous versions, but also to have many new features, such as:
* simple policy language (see "man unlang")
* virtual servers (raddb/sites-available/README)
* IPv6 support
* better proxy support (raddb/proxy.conf)
* More EAP types
* Debugging output should be MUCH easier to understand
* VMPS support
* More modules are marked "stable" (python, etc.)
* SQL configuration has been cleaned up (see raddb/sql/*)
* limited support for HUP
* check configuration and exit (radiusd -C)
* Server core is now event based (simpler, more powerful)