4 This release fixes some bugs and includes minor enhancements.
7 * Add a new D-Bus method for changing the mDNS host name during
8 runtime. This functionality is only available to members of the
9 UNIX group "netdev", which is the same access group that is
10 enforced by GNOME's NetworkManager daemon. Since NM will probably
11 be the most prominent user of this new method, we decided to limit
12 access to the same group. The access group can be set by passing
13 --with-avahi-priv-access-group= to "configure". If you need more
14 sophisticated access control you can freely edit
15 /etc/dbus/system.d/avahi-dbus.conf.
16 * Add a new utility "avahi-set-host-name" which is a command line
17 wrapper around the aforementioned SetHostName() method.
18 * Bonjour API compatibility library:
19 * Implement DNSServiceUpdateRecord()
20 * Allow passing NULL as callback function for
22 * Implement subtype registration in DNSServiceRegister() in a
23 way that is compatible with Bonjour.
24 * If the host name changes update names of static services wich
26 * Don't build documentation about embedding the Avahi mDNS stack into
27 other programs by default. This is a feature used only by embedded
28 developers. Pass --enable-core-docs to "configure" to enable
29 building these docs, like in Avahi <= 0.6.12.
30 * Build Qt documentation only when Qt support is enabled in
31 the configuration. Same for GLib.
32 * Change algorithm used to find a new host name on conflict. In
33 Avahi <= 0.6.12 a conflicting host name of "foobar" would be
34 changed to the new name "foobar2". With 0.6.13 "foobar-2" will be
35 picked instead. This follows Bonjour's behaviour and has the
36 advantage not confusing people with regular host names ending in
38 * Don't disable all static services when SIGHUP is recieved.
39 * Fix build when Avahi is configured without Gtk+ but with Python
41 * Support using Solaris DBM instead of gdbm for the service type
42 database. The latter is still recommended
43 * Minor other fixes and documentation updates
45 This release is backwards compatible with Avahi 0.6.x with x < 13.
50 This is a bugfix and general cleanups release.
53 * Compatibility with newer D-Bus releases (0.9x)
54 * Compatibility with DBUS builds with --disable-checks
55 * Fix an error in the DBUS event loop wrapping which
56 caused the avahi client libraries to dispatch some events
57 too late when used with D-BUS 0.62 and newer.
58 * avahi-daemon: fix a minor memory leak in the DBUS code.
59 * avahi-glib: some GLIB adapter cleanups
60 * avahi-dnsconfd: fix segfault when passing an invalid command
62 * avahi-test: portability patches for Solaris
63 * avahi-browse: flush STDOUT after each line, making it useful
65 * update service type database
67 This release is backwards compatible with Avahi 0.6.x with x < 12.
72 This is a bugfix and portability release.
76 * avahi-sharp: fix a fatal error in object disposal code
77 * add a few new entries to the servivce type database
78 * fix potential crash when the daemon shuts down
79 * compatibility with newer autoconf versions
81 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
82 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.6.9 and 0.6.10.
87 This is mostly a bugfix release. Two of the bugs fixed are security
88 sensitive: a remote denial-of-service vulnerability and a buffer
89 overflow that can allow local users to become the 'avahi' user. We do
90 not consider either of them major security threats.
92 The DoS vulnerability can be exploited from a local network only. It
93 is not worth much, though, since mDNS can easily be flooded with
94 nonsense anyway. It is easy to kick remote mDNS/DNS-SD services by
95 provoking a name conflict in perfect accordance with the specs.
97 The buffer overflow is hard to exploit remotely, only local users can
98 become the 'avahi' user. In addition the user is trapped inside a
99 chroot() environment (at least on Linux).
101 Anyhow, our security assessments are possibly as buggy as our
104 *** PLEASE UPDATE YOUR INSTALLATION ASAP! ***
107 * Fix a buffer overflow in avahi-core
108 * Refuse to process invalid UTF8 data
109 * Automatically reconnect to the DBUS if we're kicked. (Works only if
110 chroot() is disabled)
111 * Don't hit an assert() in the client libs when the Avahi daemon is
113 * Enumerate all service types in the database in the Service
114 Discovery Applet for Gnome
115 * Improve the Bonjour compatibility layer to make it survive
116 GnomeMeeting's broken usage
117 * Deal properly with local non-ASCII hostnames
118 * AMD64 and FreeBSD portability fixes
119 * Filter double DNS server entries in avahi-dnsconfd
120 * Fix a locking bug in avahi-sharp's EntryGroup.AddService()
121 * Ported to Solaris (incomplete)
122 * Add _airport._tcp to our service type database
124 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
125 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.6.8 and 0.6.9.
130 This release fixes some bugs and includes minor enhancements.
132 * Don't allow registration of address records with invalid host names
133 * Clean up argument validity checking for AvahiHostNameResolver and
135 * Fix Avahi builds without DBUS
137 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
138 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7 and 0.6.8.
143 This release fixes some bugs and adds a few new features. Users of 0.6.7,
146 * Fix broken parsing of static hosts file
147 * Improve out-of-the-box Debian support
148 * Add configuration option to allow mDNS over POINTOPOINT links.
149 This is a potential security hole and YMMV. See man page for details.
150 * Create $(localstatedir)/run on installation
152 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
153 0.6.3, 0.6.4, 0.6.5, 0.6.6 and 0.6.7.
158 This release fixes some bugs and adds a few new features
160 * Add static hosts name mappings
161 * Work around kernel bugs regarding multicast group membership
162 * ia64 portability fixes
163 * Don't require X11 to run avahi-bookmarks
164 * API: Return AVAHI_ERR_IS_EMPTY when the user tries to commit an
166 * Improved Slackware and Fedora suppport
168 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
169 0.6.3, 0.6.4, 0.6.5 and 0.6.6.
174 This release fixes some bugs and includes some documentation updates
176 * Add a bunch of new types to the service type database
177 * Return errors of avahi_entry_group_commit() properly
178 * Many doxygen documentation improvements
179 * Fix destruction of AvahiEntryGroup objects using
180 avahi_entry_group_free().
181 * Don't allow commiting of empty entry groups
182 * Use a little less memory in avahi-qt
183 * Don't accept empty TXT strings
184 * Update example "client-publish-service.c" to show how to modify an
187 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
188 0.6.3, 0.6.4 and 0.6.5.
193 This release fixes some bugs and adds a new API function.
195 * avahi-browse: properly show services that are removed from the
197 * fix build on bi-arch platforms, on GNU/kFreeBSD, on MIPS and
199 * add new API function avahi_nss_support() and DBUS function
200 IsNSSSupportAvailable() which may be used to detect whether
201 libc's gethostbyname() supports mDNS domain names.
202 * patch avahi-bookmarks to make use of
203 IsNSSSupportAvailable(). avahi-bookmarks will now generate links
204 with real hostnames instead of numeric IP addresses if mDNS support
205 is detected for gethostbyname().
206 * add init script for Mandriva Linux
207 * speed up avahi_client_free()
209 * install missing header thread-watch.h
210 * fix avahi-bookmarks to work with certain twisted versions
211 * fix record updating
212 * Use pkg-config's Requires.private directive where it makes sense
214 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
220 This is a bugfix release and adds a new event loop implementation to
221 avahi-common's public interface.
223 * avahi-common: add new AvahiThreadedPool event loop implementation
224 * avahi-sharp: compatibility with newer mono versions
225 * avahi-publish-service: don't ignore the port number specified
226 * avahi-sharp: correct some flags definitions
228 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2 and
231 A quick introduction how to use the new AvahiThreadedPool interface is
232 available in our Wiki:
234 http://avahi.org/wiki/RunningAvahiClientAsThread
239 This is a bugfix release. Everyone should update ASAP!
241 * avahi-sharp: make sure to append a trailing NUL byte to all C strings
242 * avahi-core: fix a double free() which occurs when wide area lookups timeout
244 This release is fully compatible with Avahi 0.6, 0.6.1 and 0.6.2.
249 This is mostly a bugfix release.
251 * Compatibility with DBUS 0.60 (Full compatibility with DBUS 0.3x and
253 * Fix introspection for some auxiliary DBUS objects
254 * Miscellaneous documentation updates
255 * Improve Autoconf support for detecting PTHREADS library
256 * Fix avahi-publish --help
257 * Workaround a DBUS limitation which might cause Avahi to die when a
258 user sends an empty TXT entry over DBUS
259 * Increase number of resolver/browser objects a DBUS client may create
260 * Remove fprintf() call in avahi_client_new()
263 This release is both up and downwards compatible with Avahi 0.6 and 0.6.1.
265 Avahi now has its own Domain (http://avahi.org) and a new Website!
267 And, most importantly, we now have a Logo:
268 http://avahi.org/chrome/site/avahi-trac.png
273 This is mostly a bugfix release.
275 * Fix a segfault when shutting down the daemon. Please note that this
276 issue was not security sensitive in any way but had the ugly side
277 effect that the daemon's PID file was not removed properly.
278 * Added init scripts for ArchLinux and FreeBSD
279 * Add DBUS API versioning through the new method GetAPIVersion()
280 * Build the HOWL compatibility library as "libhowl.so", instead of
281 "libavahi-compat-howl.so". This will help distributors to ensure
282 full API/ABI compatibility with HOWL out-of-the-box.
283 * Same for the Bonjour compatibility library
286 We encourage Linux users to update to libdaemon 0.10 since logging
287 does not work from a chroot() environment with older versions.
289 This release is fully API and ABI compatible with Avahi 0.6. This is
290 true for both the C libraries and the DBUS interface.
292 Packagers should read the new documentation file doc/COMPAT-LAYERS
293 which contains some information about maintaining full build system
294 compatibility in addition to ABI/API compatibility.
296 Avahi 0.6, the "Goddag" release
297 ===============================
299 * Support for (read-only) wide area support. (i.e. DNS-SD over unicast DNS)
300 * Ported to FreeBSD, NetBSD, Darwin/MacOSX and to some extent OpenBSD
301 * Portability fixes for ARM CPUs
302 * Compatibility layers for the HOWL and Bonjour APIs
303 * Support for registering/browsing arbitrary records
304 * Proper support for DNS-SD service subtypes
305 * Native C implementations of the client utilities
306 * Now passes the Bonjour conformance test suite without any exceptions
307 * "Passive observation of failures"
309 * Many traffic reduction improvements
312 This release is not API/ABI compatible with Avahi 0.5. Please see
313 docs/API-CHANGES-0.6 for a rough overview over the changes.
319 * Fix browing in QT applications (was totally broken)
320 * Minor documentation update.
325 * This is a bug fix release, before the big changes coming in 0.6
326 * Fix reporting of the NO_DAEMON error
327 * Fix commit throttling algorithm for entry groups
328 * Fix counting of the number of resources in an entry group
330 Avahi 0.5, the 'Bom Dia' release
331 ================================
333 * New Mono bindings, allowing you to use Avahi from
334 any CLI language such as C#
335 * Attempt auto-detection of the D-BUS system bus address
336 * Include a 'cookie' in all published records which allows us
337 to reliably determine if a service is the same as another.
338 * Add API to determine if services are local
339 * Better support for threading with AvahiSimplePoll
340 * Add some new StringList functions to help binding to it in
342 * Various build and run-time bug fixes
344 Avahi 0.4, the 'Hyvää päivää' release
345 =====================================
347 * Renamed the include dirs for the Qt bindings to include the
348 version number, as they may diverge in future.
349 * Fix a critical bug in avahi-daemon triggered by configuring an interface
350 with various DHCP clients when you have no other active addresses which
351 caused avahi-daemon to abort.
352 * Move to using python-gdbm exclusivly for the service type database.
353 * Add support for SUSE
354 * Various fixes to the build system
356 Avahi 0.3, the 'Buenos Días' release
357 ====================================
359 * New integration library for QT main-loop applications.
360 * Fix a crash in avahi-dnsconfd
361 * Documentation Updates
362 * Fix building when you don't want Python DBUS or GTK
364 - Add new help option
365 - Fix handling of paths not starting with a /
366 - You can now specify the port and IP to bind to
367 - Add option to generate links with hostnames instead of IPs
369 Avahi 0.2, the 'Dzień Dobry' release
370 ====================================
372 * Unfortunately this release broke the API/ABI of libavahi-client
373 with the following function removals
375 Removal of these functions may affect users of the 0.1 API
376 - avahi_service_resolver_block()
378 The following functions were simply for debugging information
379 and their removal should not affect anyone
380 - avahi_entry_group_get_dbus_path()
381 - avahi_domain_browser_get_dbus_path()
382 - avahi_service_type_browser_get_dbus_path()
383 - avahi_service_browser_get_dbus_path()
385 Note that while the libavahi-client API changed slightly, the DBUS
386 API itself has only had additions and no existing definitions
389 * avahi-daemon will now ignore local IP addresses with the "link" scope
390 unless it is the only IP address on the interface.
391 * avahi-daemon will no longer fail to start if D-BUS is not
392 available (if configured with enable-dbus=warn)
393 * Fixed a potential crasher when resolving things in libavahi-core.
394 * New example demonstrating integration into glib applications
395 * Addtion of a set of convenience functions for AvahiStringList
396 avahi_string_list_find()
397 avahi_string_list_get_pair()
398 avahi_string_list_add_pair()
399 avahi_string_list_add_pair_arbitrary()
400 * Fixed a typo in avahi-glib.pc that stopped programs using
401 the GLIB api from compiling correctly
402 * A critical bug in the reflector was fixed where it may go into a
403 state of constantly flooding queries out to the network.
404 * Introduced new asynchronous resolver API
405 * libavahi-client gained an API for resolving HostNames and Addresses
406 in addition to the ServiceResolver provided in 0.1
407 * Added support for Arch and Gentoo linux distributions.
408 * Allowed configuration on non-supported distributions
409 * Fixed a critical bug where you cannot use more than one AvahiClient
410 or use it in an application already using D-BUS
411 * Fixed assembly of empty string lists to RFC compliant TXT records
412 * Added a new service type description database with human
413 understandable descriptions of services with translations.
414 * Fixed various minor memory corruption bugs
415 * Fixed an issue where Avahi might think it encountered a conflict
416 if the process or machine has been suspended
417 * Fixed compilation and runtime issues on 64-bit distributions
421 Avahi 0.1, the "Guten Tag" release
422 ==================================
424 The Avahi team would like to announce the immediate availability of
425 Avahi 0.1 "Guten Tag".
427 Avahi is a fully LGPL framework for Multicast DNS Service Discovery.
428 It allows programs to publish and discover services and hosts
429 running on a local network with no specific configuration. For
430 example you can plug into a network and instantly find printers to
431 print to, files to look at and people to talk to.
433 Avahi is designed to be compatible with the mDNS/DNS-SD specification
434 and boasts the following features
436 * Fully open source and freely available under the LGPL
437 * Full IPv4 and IPv6 support
438 * An embeddable mDNS stack
439 * Dynamic adjustment to network reconfiguration
440 * Daemon with DBUS API for desktop applications
441 * C library to interface with the DBUS API
442 * Compatible with other mDNS/DNS-SD implementations such as
443 Howl and Apple Bonjour (previously Rendezvous)
444 * Ability to correctly "reflect" mDNS between two or more LAN segments
445 * Ability to configure DNS servers based on mDNS/DNS-SD published
446 information, a feature that is very usefull on IPv6
447 which has no other mechanism for this.
448 * Combined with nss-mdns, allows hostname lookup such as
449 'laptop.local' without the configuration of a DNS server.
450 http://0pointer.de/lennart/projects/nss-mdns/
451 * Easy integration into GLIB, GTK other mainloop applications.
452 * Documentation and examples of both developer APIs and utilities.
454 mDNS/DNS-SD is part of a larger set of specifications for easy
455 configuration of networking known as "ZeroConf"
456 (http://www.zeroconf.org/), with the aim of allowing you to plug into
457 a network and instantly be able to interact with it's services.
459 Avahi was designed to be a fully free implementation, and is
460 available under the LGPL. Many other implementations of the mDNS/DNS-SD
461 specification were previously non-free, restricting their use in many
462 platforms such as the GNOME desktop and many distributions.
464 While Avahi is a 0.1 release, we feel it is feature complete and
465 available for immediate use, developers can make use of the Avahi
466 client library to provide above mentioned functionality in their
469 We unfortunately do not have a logo yet! We would love if someone
470 could suggest ideas for a logo or even design us one. If you think
471 you can help us out, you can contact us on our mailing list or by
472 emailing Trent Lloyd on lathiat@bur.st.
474 If you would like more information or help, you can subscribe
475 to our mailinglist, goto
476 http://lists.freedesktop.org/mailman/listinfo/avahi
478 You can download Avahi 0.1 here
479 http://www.freedesktop.org/~lennart/avahi-0.1.tar.gz
481 You can also find out more information from our homepage
482 http://www.freedesktop.org/Software/Avahi
484 We would like to thank the following people for their
485 contribution to Avahi 0.1.