]> git.meshlink.io Git - catta/blob - docs/NEWS
fd37d42e50d200ae09da16a0cb1d1e95e20ef86d
[catta] / docs / NEWS
1 Avahi 0.6.16
2 ============
3
4 This is a bugfix release, it fixes one DoS (100% CPU Usage) and a regression
5 from the last release
6
7  * Revert previous patch to check nlmsg_pid as it is bogus and breaks in
8    many cases, notably when using NetworkManager (Closes: #72)
9  * Replace with new SO_PASSCRED-based check of the sending UID, which
10    seems to work better (Closes: #72)
11  * Handle some errors in libdns_sd more gracefully the way the real
12    libdns_sd does (Closes: #64)
13  * Apply fix for Linux 2.6.19+ where IFA_RTA / IFLA_RTA is no longer
14    defined (Closes: #86)
15  * Fix doxygen comments for avahi watch, thanks to tedp (Closes: #77)
16  * Make d-bus version detection work for >= 1.0 (Closes: #71)
17  * Dont dbus_connection_close on shared dbus connections (Closes: #68)
18  * Fix potential endless loop in dns label unpacking code (Closes: #84)
19  * Fix bogus assertion in client-publish-service.c example
20  * Mild fix to some doxygen docs for avahi-common/address.h
21  * Fix passing in custom priviledged group (previously ignored setting)
22    (Closes: #85) 
23
24 This release is backwards compatible with Avahi 0.6.x with x < 16.
25
26 Avahi 0.6.15
27 ============
28
29 This is a bugfix release, this bug is potentially security sensitive
30
31  * Check that netlink messages actually originate from the kernel
32    and not another process.
33  * Fix build on NetBSD (thanks to Daniel S. Haischt)
34  * Fix dbus_service_browser not setting AVAHI_LOOKUP_RESULT_OUR_OWN.
35
36 This release is backwards compatible with Avahi 0.6.x with x < 15.
37
38 Avahi 0.6.14
39 ============
40
41 This release fixes some bugs and includes a new component.
42
43 Changes:
44
45   * Add new daemon "avahi-autoipd" which is an implementation of
46     IPv4LL as defined in RFC3927, a technology for assigning link-local IP
47     addresses without DHCP server. The same functionality has been available on
48     Windows under the name APIPA. While it is not the first implemenatation of
49     this technology for Free operating systems it is clearly the most powerful
50     and hopefully even the most secure. (Because it chroot()s and drops
51     priviliges and suchlike) For more information, especially about packaging
52     this new tool for distributions, please make sure to read:
53     http://avahi.org/wiki/AvahiAutoipd 
54     and of course the man page included in the tarball.  For the rationale for
55     adding this program to the Avahi toolset please read this mailing list
56     thread:
57     http://lists.freedesktop.org/archives/avahi/2006-September/000863.html
58   * Fix a segfault in the code handling static host name registrations
59   * Add a few new entries to the service type database
60   * s/D-?BUS/D-Bus/g
61   * Documentation updates
62   * Fix service type database building on Solaris
63   * Make use of newer D-Bus APIs
64   * Fix random seed initialization
65   * Install SFTP static service file by default
66   * Other minor code cleanups
67
68 This release is backwards compatible with Avahi 0.6.x with x < 14.
69
70 Please note that this version doesn't compile on NetBSD, patches
71 welcome.
72
73 Please note that avahi-autoipd is available on Linux only for
74 now. Patches welcome. It is recommended to pass --disable-autoipd to
75 "configure" on non-Linux operating systems, otherwise the build will
76 fail.
77
78 Avahi 0.6.13
79 ============
80
81 This release fixes some bugs and includes minor enhancements.
82
83 Changes:
84   * Add a new D-Bus method for changing the mDNS host name during
85     runtime. This functionality is only available to members of the
86     UNIX group "netdev", which is the same access group that is
87     enforced by GNOME's NetworkManager daemon. Since NM will probably
88     be the most prominent user of this new method, we decided to limit
89     access to the same group. The access group can be set by passing
90     --with-avahi-priv-access-group= to "configure". If you need more
91     sophisticated access control you can freely edit
92     /etc/dbus/system.d/avahi-dbus.conf.
93   * Add a new utility "avahi-set-host-name" which is a command line
94     wrapper around the aforementioned SetHostName() method.
95   * Bonjour API compatibility library:
96         * Implement DNSServiceUpdateRecord() 
97         * Allow passing NULL as callback function for
98           DNSServiceRegister()
99         * Implement subtype registration in DNSServiceRegister() in a
100           way that is compatible with Bonjour.
101         * Update to newer copy of dns_sd.h
102   * If the host name changes update names of static services wich
103     contain wildcards.
104   * Don't build documentation about embedding the Avahi mDNS stack into
105     other programs by default. This is a feature used only by embedded
106     developers. Pass --enable-core-docs to "configure" to enable
107     building these docs, like in Avahi <= 0.6.12.
108   * Build Qt documentation only when Qt support is enabled in
109     the configuration. Same for GLib.
110   * Change algorithm used to find a new host name on conflict. In
111     Avahi <= 0.6.12 a conflicting host name of "foobar" would be
112     changed to the new name "foobar2". With 0.6.13 "foobar-2" will be
113     picked instead. This follows Bonjour's behaviour and has the
114     advantage not confusing people with regular host names ending in
115     digits.
116   * Don't disable all static services when SIGHUP is recieved.
117   * Fix build when Avahi is configured without Gtk+ but with Python
118     support
119   * Fix build on MacOS X
120   * Support using Solaris DBM instead of gdbm for the service type
121     database. The latter is still recommended
122   * Minor other fixes and documentation updates
123
124 This release is backwards compatible with Avahi 0.6.x with x < 13.
125
126 Avahi 0.6.12
127 ============
128
129 This is a bugfix and general cleanups release.
130
131 Changes:
132   * Compatibility with newer D-Bus releases (0.9x)
133   * Compatibility with DBUS builds with --disable-checks
134   * Fix an error in the DBUS event loop wrapping which
135     caused the avahi client libraries to dispatch some events
136     too late when used with D-BUS 0.62 and newer.
137   * avahi-daemon: fix a minor memory leak in the DBUS code.
138   * avahi-glib: some GLIB adapter cleanups
139   * avahi-dnsconfd: fix segfault when passing an invalid command 
140     line option
141   * avahi-test: portability patches for Solaris
142   * avahi-browse: flush STDOUT after each line, making it useful 
143     in shell scripts.
144   * update service type database
145
146 This release is backwards compatible with Avahi 0.6.x with x < 12.
147
148 Avahi 0.6.11
149 ============
150
151 This is a bugfix and portability release.
152
153 Changes:
154   * Ported to Solaris
155   * avahi-sharp: fix a fatal error in object disposal code
156   * add a few new entries to the servivce type database
157   * fix potential crash when the daemon shuts down
158   * compatibility with newer autoconf versions
159
160 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
161 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.6.9 and 0.6.10.
162
163 Avahi 0.6.10
164 ============
165
166 This is mostly a bugfix release. Two of the bugs fixed are security
167 sensitive: a remote denial-of-service vulnerability and a buffer
168 overflow that can allow local users to become the 'avahi' user. We do
169 not consider either of them major security threats. 
170
171 The DoS vulnerability can be exploited from a local network only. It
172 is not worth much, though, since mDNS can easily be flooded with
173 nonsense anyway. It is easy to kick remote mDNS/DNS-SD services by
174 provoking a name conflict in perfect accordance with the specs. 
175
176 The buffer overflow is hard to exploit remotely, only local users can
177 become the 'avahi' user. In addition the user is trapped inside a
178 chroot() environment (at least on Linux). 
179
180 Anyhow, our security assessments are possibly as buggy as our
181 code. Hence:
182
183      *** PLEASE UPDATE YOUR INSTALLATION ASAP! ***
184
185 Changes:
186  * Fix a buffer overflow in avahi-core
187  * Refuse to process invalid UTF8 data
188  * Automatically reconnect to the DBUS if we're kicked. (Works only if
189    chroot() is disabled)
190  * Don't hit an assert() in the client libs when the Avahi daemon is
191    terminated
192  * Enumerate all service types in the database in the Service
193    Discovery Applet for Gnome
194  * Improve the Bonjour compatibility layer to make it survive
195    GnomeMeeting's broken usage
196  * Deal properly with local non-ASCII hostnames
197  * AMD64 and FreeBSD portability fixes
198  * Filter double DNS server entries in avahi-dnsconfd
199  * Fix a locking bug in avahi-sharp's EntryGroup.AddService()
200  * Ported to Solaris (incomplete)
201  * Add _airport._tcp to our service type database
202
203 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
204 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.6.8 and 0.6.9.
205
206 Avahi 0.6.9
207 ===========
208
209 This release fixes some bugs and includes minor enhancements.
210
211  * Don't allow registration of address records with invalid host names
212  * Clean up argument validity checking for AvahiHostNameResolver and 
213    AvahiAddressResolver
214  * Fix Avahi builds without DBUS
215
216 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
217 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7 and 0.6.8.
218
219 Avahi 0.6.8
220 ===========
221
222 This release fixes some bugs and adds a few new features. Users of 0.6.7,
223 please update ASAP!
224
225  * Fix broken parsing of static hosts file 
226  * Improve out-of-the-box Debian support
227  * Add configuration option to allow mDNS over POINTOPOINT links.
228    This is a potential security hole and YMMV. See man page for details.
229  * Create $(localstatedir)/run on installation
230
231 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
232 0.6.3, 0.6.4, 0.6.5, 0.6.6 and 0.6.7.
233
234 Avahi 0.6.7
235 ===========
236
237 This release fixes some bugs and adds a few new features
238
239  * Add static hosts name mappings
240  * Work around kernel bugs regarding multicast group membership
241  * ia64 portability fixes
242  * Don't require X11 to run avahi-bookmarks
243  * API: Return AVAHI_ERR_IS_EMPTY when the user tries to commit an
244    empty entry group.
245  * Improved Slackware and Fedora suppport
246
247 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
248 0.6.3, 0.6.4, 0.6.5 and 0.6.6.
249
250 Avahi 0.6.6
251 ===========
252
253 This release fixes some bugs and includes some documentation updates
254
255  * Add a bunch of new types to the service type database
256  * Return errors of avahi_entry_group_commit() properly
257  * Many doxygen documentation improvements
258  * Fix destruction of AvahiEntryGroup objects using 
259    avahi_entry_group_free().
260  * Don't allow commiting of empty entry groups
261  * Use a little less memory in avahi-qt
262  * Don't accept empty TXT strings
263  * Update example "client-publish-service.c" to show how to modify an
264    existing service
265
266 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
267 0.6.3, 0.6.4 and 0.6.5.
268
269 Avahi 0.6.5
270 ===========
271
272 This release fixes some bugs and adds a new API function.
273  
274  * avahi-browse: properly show services that are removed from the 
275    network
276  * fix build on bi-arch platforms, on GNU/kFreeBSD, on MIPS and 
277    for non-DBUS builds
278  * add new API function avahi_nss_support() and DBUS function
279    IsNSSSupportAvailable() which may be used to detect whether
280    libc's gethostbyname() supports mDNS domain names.
281  * patch avahi-bookmarks to make use of
282    IsNSSSupportAvailable(). avahi-bookmarks will now generate links
283    with real hostnames instead of numeric IP addresses if mDNS support
284    is detected for gethostbyname().
285  * add init script for Mandriva Linux
286  * speed up avahi_client_free()
287  * man page updates
288  * install missing header thread-watch.h
289  * fix avahi-bookmarks to work with certain twisted versions
290  * fix record updating
291  * Use pkg-config's Requires.private directive where it makes sense
292
293 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2,
294 0.6.3 and 0.6.4.
295
296 Avahi 0.6.4
297 ===========
298
299 This is a bugfix release and adds a new event loop implementation to
300 avahi-common's public interface.
301  
302  * avahi-common: add new AvahiThreadedPool event loop implementation
303  * avahi-sharp: compatibility with newer mono versions
304  * avahi-publish-service: don't ignore the port number specified
305  * avahi-sharp: correct some flags definitions
306
307 This release is backwards compatible with Avahi 0.6, 0.6.1, 0.6.2 and
308 0.6.3.
309
310 A quick introduction how to use the new AvahiThreadedPool interface is
311 available in our Wiki:
312
313           http://avahi.org/wiki/RunningAvahiClientAsThread
314
315 Avahi 0.6.3
316 ===========
317
318 This is a bugfix release. Everyone should update ASAP!
319
320  * avahi-sharp: make sure to append a trailing NUL byte to all C strings
321  * avahi-core: fix a double free() which occurs when wide area lookups timeout
322
323 This release is fully compatible with Avahi 0.6, 0.6.1 and 0.6.2.
324
325 Avahi 0.6.2
326 ===========
327
328 This is mostly a bugfix release.
329
330  * Compatibility with DBUS 0.60 (Full compatibility with DBUS 0.3x and 
331    0.5 is retained)
332  * Fix introspection for some auxiliary DBUS objects
333  * Miscellaneous documentation updates
334  * Improve Autoconf support for detecting PTHREADS library
335  * Fix avahi-publish --help
336  * Workaround a DBUS limitation which might cause Avahi to die when a
337    user sends an empty TXT entry over DBUS
338  * Increase number of resolver/browser objects a DBUS client may create
339  * Remove fprintf() call in avahi_client_new()
340  * Other minor fixes
341
342 This release is both up and downwards compatible with Avahi 0.6 and 0.6.1.
343
344 Avahi now has its own Domain (http://avahi.org) and a new Website!
345
346 And, most importantly, we now have a Logo:
347       http://avahi.org/chrome/site/avahi-trac.png
348
349 Avahi 0.6.1
350 ===========
351         
352 This is mostly a bugfix release.
353
354  * Fix a segfault when shutting down the daemon. Please note that this
355    issue was not security sensitive in any way but had the ugly side
356    effect that the daemon's PID file was not removed properly.
357  * Added init scripts for ArchLinux and FreeBSD
358  * Add DBUS API versioning through the new method GetAPIVersion()
359  * Build the HOWL compatibility library as "libhowl.so", instead of
360    "libavahi-compat-howl.so". This will help distributors to ensure
361    full API/ABI compatibility with HOWL out-of-the-box.
362  * Same for the Bonjour compatibility library
363  * Other fixes
364
365 We encourage Linux users to update to libdaemon 0.10 since logging
366 does not work from a chroot() environment with older versions.
367
368 This release is fully API and ABI compatible with Avahi 0.6. This is
369 true for both the C libraries and the DBUS interface.
370
371 Packagers should read the new documentation file doc/COMPAT-LAYERS
372 which contains some information about maintaining full build system
373 compatibility in addition to ABI/API compatibility.
374
375 Avahi 0.6, the "Goddag" release
376 ===============================
377
378  * Support for (read-only) wide area support. (i.e. DNS-SD over unicast DNS)
379  * Ported to FreeBSD, NetBSD, Darwin/MacOSX and to some extent OpenBSD
380  * Portability fixes for ARM CPUs
381  * Compatibility layers for the HOWL and Bonjour APIs
382  * Support for registering/browsing arbitrary records
383  * Proper support for DNS-SD service subtypes
384  * Native C implementations of the client utilities
385  * Now passes the Bonjour conformance test suite without any exceptions
386  * "Passive observation of failures"
387  * chroot() support
388  * Many traffic reduction improvements
389  * Bugfixes, cleanups
390
391 This release is not API/ABI compatible with Avahi 0.5. Please see
392 docs/API-CHANGES-0.6 for a rough overview over the changes. 
393
394 Avahi 0.5.2
395 ===========
396
397  * Bug fix release.
398  * Fix browing in QT applications (was totally broken)
399  * Minor documentation update.
400
401 Avahi 0.5.1
402 ===========
403
404  * This is a bug fix release, before the big changes coming in 0.6
405  * Fix reporting of the NO_DAEMON error
406  * Fix commit throttling algorithm for entry groups
407  * Fix counting of the number of resources in an entry group 
408
409 Avahi 0.5, the 'Bom Dia' release
410 ================================
411
412  * New Mono bindings, allowing you to use Avahi from
413    any CLI language such as C#
414  * Attempt auto-detection of the D-BUS system bus address
415  * Include a 'cookie' in all published records which allows us
416    to reliably determine if a service is the same as another.
417  * Add API to determine if services are local
418  * Better support for threading with AvahiSimplePoll
419  * Add some new StringList functions to help binding to it in
420    other languages
421  * Various build and run-time bug fixes
422
423 Avahi 0.4, the 'Hyvää päivää' release
424 =====================================
425
426  * Renamed the include dirs for the Qt bindings to include the
427    version number, as they may diverge in future.
428  * Fix a critical bug in avahi-daemon triggered by configuring an interface
429    with various DHCP clients when you have no other active addresses which
430    caused avahi-daemon to abort.
431  * Move to using python-gdbm exclusivly for the service type database.
432  * Add support for SUSE
433  * Various fixes to the build system
434
435 Avahi 0.3, the 'Buenos Días' release
436 ====================================
437
438  * New integration library for QT main-loop applications.
439  * Fix a crash in avahi-dnsconfd
440  * Documentation Updates
441  * Fix building when you don't want Python DBUS or GTK
442  * avahi-bookmarks
443    - Add new help option
444    - Fix handling of paths not starting with a /
445    - You can now specify the port and IP to bind to
446    - Add option to generate links with hostnames instead of IPs
447
448 Avahi 0.2, the 'Dzień Dobry' release
449 ====================================
450
451  * Unfortunately this release broke the API/ABI of libavahi-client
452    with the following function removals
453
454    Removal of these functions may affect users of the 0.1 API
455     - avahi_service_resolver_block()
456
457    The following functions were simply for debugging information
458    and their removal should not affect anyone
459     - avahi_entry_group_get_dbus_path()
460     - avahi_domain_browser_get_dbus_path()
461     - avahi_service_type_browser_get_dbus_path()
462     - avahi_service_browser_get_dbus_path()
463
464    Note that while the libavahi-client API changed slightly, the DBUS
465    API itself has only had additions and no existing definitions
466    have changed.
467  
468  * avahi-daemon will now ignore local IP addresses with the "link" scope
469    unless it is the only IP address on the interface.
470  * avahi-daemon will no longer fail to start if D-BUS is not
471    available (if configured with enable-dbus=warn)
472  * Fixed a potential crasher when resolving things in libavahi-core.
473  * New example demonstrating integration into glib applications
474  * Addtion of a set of convenience functions for AvahiStringList
475    avahi_string_list_find()
476    avahi_string_list_get_pair()
477    avahi_string_list_add_pair()
478    avahi_string_list_add_pair_arbitrary()
479  * Fixed a typo in avahi-glib.pc that stopped programs using
480    the GLIB api from compiling correctly
481  * A critical bug in the reflector was fixed where it may go into a
482    state of constantly flooding queries out to the network.
483  * Introduced new asynchronous resolver API
484  * libavahi-client gained an API for resolving HostNames and Addresses
485    in addition to the ServiceResolver provided in 0.1
486  * Added support for Arch and Gentoo linux distributions.
487  * Allowed configuration on non-supported distributions
488  * Fixed a critical bug where you cannot use more than one AvahiClient 
489    or use it in an application already using D-BUS
490  * Fixed assembly of empty string lists to RFC compliant TXT records
491  * Added a new service type description database with human
492    understandable descriptions of services with translations.
493  * Fixed various minor memory corruption bugs
494  * Fixed an issue where Avahi might think it encountered a conflict
495    if the process or machine has been suspended
496  * Fixed compilation and runtime issues on 64-bit distributions
497  * ...
498  * PROFIT!!!
499
500 Avahi 0.1, the "Guten Tag" release
501 ==================================
502
503 The Avahi team would like to announce the immediate availability of
504 Avahi 0.1 "Guten Tag".
505
506 Avahi is a fully LGPL framework for Multicast DNS Service Discovery.
507 It allows programs to publish and discover services and hosts
508 running on a local network with no specific configuration.  For
509 example you can plug into a network and instantly find printers to
510 print to, files to look at and people to talk to.
511
512 Avahi is designed to be compatible with the mDNS/DNS-SD specification
513 and boasts the following features
514
515  * Fully open source and freely available under the LGPL
516  * Full IPv4 and IPv6 support
517  * An embeddable mDNS stack
518  * Dynamic adjustment to network reconfiguration
519  * Daemon with DBUS API for desktop applications
520  * C library to interface with the DBUS API
521  * Compatible with other mDNS/DNS-SD implementations such as
522    Howl and Apple Bonjour (previously Rendezvous)
523  * Ability to correctly "reflect" mDNS between two or more LAN segments
524  * Ability to configure DNS servers based on mDNS/DNS-SD published
525    information, a feature that is very usefull on IPv6
526    which has no other mechanism for this.
527  * Combined with nss-mdns, allows hostname lookup such as
528    'laptop.local' without the configuration of a DNS server.
529    http://0pointer.de/lennart/projects/nss-mdns/
530  * Easy integration into GLIB, GTK other mainloop applications.
531  * Documentation and examples of both developer APIs and utilities.
532
533 mDNS/DNS-SD is part of a larger set of specifications for easy
534 configuration of networking known as "ZeroConf"
535 (http://www.zeroconf.org/), with the aim of allowing you to plug into
536 a network and instantly be able to interact with it's services.
537
538 Avahi was designed to be a fully free implementation, and is
539 available under the LGPL.  Many other implementations of the mDNS/DNS-SD
540 specification were previously non-free, restricting their use in many
541 platforms such as the GNOME desktop and many distributions.
542
543 While Avahi is a 0.1 release, we feel it is feature complete and
544 available for immediate use, developers can make use of the Avahi
545 client library to provide above mentioned functionality in their
546 programs.
547
548 We unfortunately do not have a logo yet! We would love if someone
549 could suggest ideas for a logo or even design us one.  If you think
550 you can help us out, you can contact us on our mailing list or by
551 emailing Trent Lloyd on lathiat@bur.st.
552
553 If you would like more information or help, you can subscribe
554 to our mailinglist, goto
555     http://lists.freedesktop.org/mailman/listinfo/avahi
556
557 You can download Avahi 0.1 here
558     http://www.freedesktop.org/~lennart/avahi-0.1.tar.gz
559
560 You can also find out more information from our homepage
561     http://www.freedesktop.org/Software/Avahi
562
563 We would like to thank the following people for their
564 contribution to Avahi 0.1.
565     Lennart Poeterring
566     Trent Lloyd
567     Sebastien Estienne
568     Ross Burton
569     Tommi Vainikainen
570     Joe Shaw
571     Ikke
572     Steev
573
574 Cheers,
575 The Avahi Team
576
577 $Id$