OSDN Git Service

Release 4.32
[android-x86/external-bluetooth-bluez.git] / ChangeLog
1 ver 4.32:
2         Fix broken SDP record handling.
3         Fix SDP data buffer parsing.
4         Fix more SDP memory leaks.
5         Fix read scan enable calls.
6         Fix A2DP stream handling.
7
8 ver 4.31:
9         Add support for new BtIO helper library.
10         Fix AVDTP session close issue.
11         Fix SDP memory leaks.
12         Fix various uninitialized memory issues.
13         Fix duplicate signal emissions.
14         Fix property changes request handling.
15         Fix class of device storage handling.
16
17 ver 4.30:
18         Add CID field to L2CAP socket address structure.
19         Fix reset of authentication requirements after bonding.
20         Fix storing of link keys when using dedicated bonding.
21         Fix storing of pre-Bluetooth 2.1 link keys.
22         Fix resetting trust settings on every reboot.
23         Fix handling of local name changes.
24         Fix memory leaks in hciconfig and hcitool
25
26 ver 4.29:
27         Use AVRCP version 1.0 for now.
28         Decrease AVDTP idle timeout to one second.
29         Delay AVRCP connection when remote device connects A2DP.
30         Add workaround for AVDTP stream setup with broken headsets.
31         Add missing three-way calling feature bit for Handsfree.
32         Fix handsfree callheld indicator updating.
33         Fix parsing of all AT commands within the buffer.
34         Fix authentication replies when disconnected.
35         Fix handling of debug combination keys.
36         Fix handling of changed combination keys.
37         Fix handling of link keys when using no bonding.
38         Fix handling of invalid/unknown authentication requirements.
39         Fix closing of L2CAP raw socket used for dedicated bonding.
40
41 ver 4.28:
42         Add AVDTP signal fragmentation support.
43         Add more SBC performance optimizations.
44         Add more SBC audio quality improvements.
45         Use native byte order for audio plugins.
46         Set the adapter alias only after checking the EIR data.
47         Fix auto-disconnect issue with explicit A2DP connections.
48         Fix invalid memory access of ALSA plugin.
49         Fix compilation with -Wsign-compare.
50
51 ver 4.27:
52         Add more SBC optimization (MMX and ARM NEON).
53         Add BT_SECURITY and BT_DEFER_SETUP definitions.
54         Add support for deferred connection setup.
55         Add support for fragmentation of data packets.
56         Add option to trigger dedicated bonding.
57         Follow MITM requirements from remote device.
58         Require MITM for dedicated bonding if capabilities allow it.
59         Fix IO capabilities for non-pairing and pairing cases.
60         Fix no-bonding connections in non-bondable mode.
61         Fix new pairing detection with SSP.
62         Fix bonding with pre-2.1 devices and newer kernels.
63         Fix LIAC setting while toggling Pairable property.
64         Fix device creation for incoming security mode 3 connects.
65         Fix crash within A2DP with bogus pointer.
66         Fix issue with sdp_copy_record() function.
67         Fix crash with extract_des() if sdp_uuid_extract() fails.
68
69 ver 4.26:
70         Use of constant shift in SBC quantization code.
71         Add possibility to analyze 4 blocks at once in encoder.
72         Fix correct handling of frame sizes in the encoder.
73         Fix for big endian problems in SBC codec.
74         Fix audio client socket to always be non-blocking.
75         Update telephony support for Maemo.
76
77 ver 4.25:
78         Fix receiving data over the audio control socket.
79         Fix subbands selection for joint-stereo in SBC encoder.
80         Add new SBC analysis filter function.
81
82 ver 4.24:
83         Fix signal emissions when removing adapters.
84         Fix missing adapter signals on exit.
85         Add support for bringing adapters down on exit.
86         Add support for RememberPowered option.
87         Add support for verbose compiler warnings.
88         Add more options to SBC encoder.
89
90 ver 4.23:
91         Update audio IPC for better codec handling.
92         Fix bitstream optimization for SBC encoder.
93         Fix length header values of IPC messages.
94         Fix multiple coding style violations.
95         Fix FindDevice to handle temporary devices.
96         Add configuration option for DeviceID.
97         Add support for InitiallyPowered option.
98         Add missing signals for manager properties.
99         Add telephony support for Maemo.
100
101 ver 4.22:
102         Add deny statements to D-Bus access policy.
103         Add support for LegacyPairing property.
104         Add support for global properties.
105         Add more commands to telephony testing script.
106         Add sender checks for serial and network interfaces.
107         Remove deprecated methods and signals from input interface.
108         Remove deprecated methods and signals from network interface.
109         Remove OffMode option and always use device down.
110
111 ver 4.21:
112         Fix adapter initialization logic.
113         Fix adapter setup and start security manager early.
114         Fix usage issue with first_init variable.
115
116 ver 4.20:
117         Cleanup session handling.
118         Cleanup mode setting handling.
119         Fix issue with concurrent audio clients.
120         Fix issue with HFP/HSP suspending.
121         Fix AT result code syntax handling.
122         Add Handsfree support for AT+NREC.
123         Add PairableTimeout adapter property.
124
125 ver 4.19:
126         Fix installation of manual pages for old daemons.
127         Fix D-Bus signal emmissions for CreateDevice.
128         Fix issues with UUID probing.
129         Fix +BSRF syntax issue.
130         Add Pairable adapter property.
131         Add sdp_copy_record() library function.
132
133 ver 4.18:
134         Fix release before close issue with RFCOMM TTYs.
135         Fix Connected property on input interface.
136         Fix DeviceFound signals during initial name resolving.
137         Fix service discovery handling.
138         Fix duplicate UUID detection.
139         Fix SBC gain mismatch and decoding handling.
140         Add more options to SBC encoder and decoder.
141         Add special any adapter object for service interface.
142         Add variable prefix to adapter and device object paths.
143
144 ver 4.17:
145         Fix SBC encoder not writing last frame.
146         Fix missing timer for A2DP suspend.
147         Add more supported devices to hid2hci utility.
148         Add additional functionality to Handsfree support.
149
150 ver 4.16:
151         Fix wrong parameter usage of watch callbacks.
152         Fix parameters for callback upon path removal.
153         Fix unloading of adapter drivers.
154
155 ver 4.15:
156         Fix various A2DP state machine issues.
157         Fix some issues with the Handsfree error reporting.
158         Fix format string warnings with recent GCC versions.
159         Remove dependency on GModule.
160
161 ver 4.14:
162         Fix types of property arrays.
163         Fix potential crash with input devices.
164         Fix PS3 BD remote input event generation.
165         Allow dynamic adapter driver registration.
166         Update udev rules.
167
168 ver 4.13:
169         Fix service discovery and UUID handling.
170         Fix bonding issues with Simple Pairing.
171         Fix file descriptor misuse of SCO connections.
172         Fix various memory leaks in the device handling.
173         Fix AVCTP disconnect handling.
174         Fix GStreamer modes for MP3 encoding.
175         Add operator selection to Handsfree support.
176
177 ver 4.12:
178         Fix crash with missing icon value.
179         Fix error checks of HAL plugin.
180         Fix SCO server socket cleanup on exit.
181         Fix memory leaks from DBusPendingCall.
182         Fix handling of pending authorization requests.
183         Fix missing protocol UUIDs in record pattern.
184
185 ver 4.11:
186         Change SCO server socket into a generic one.
187         Add test script for dummy telephony plugin.
188         Fix uninitialized reply of multiple GetProperties methods.
189
190 ver 4.10:
191         Fix memory leaks with HAL messages.
192         Add more advanced handsfree features.
193         Add properties to audio, input and network interfaces.
194         Stop device discovery timer on device removal.
195
196 ver 4.9:
197         Fix signals for Powered and Discoverable properties.
198         Fix handling of Alias and Icon properties.
199         Fix duplicate entries for service UUIDs.
200
201 ver 4.8:
202         Fix retrieving of formfactor value.
203         Fix retrieving of local and remote extended features.
204         Fix potential NULL pointer dereference during pairing.
205         Fix crash with browsing due to a remotely initated pairing.
206
207 ver 4.7:
208         Fix pairing and service discovery logic.
209         Fix crashes during suspend and resume.
210         Fix race condition within devdown mode.
211         Add RequestSession and ReleaseSession methods.
212         Add Powered and Discoverable properties.
213         Add Devices property and deprecate ListDevices.
214         Add workaround for a broken carkit from Nokia.
215
216 ver 4.6:
217         Fix Device ID record handling.
218         Fix service browsing and storage.
219         Fix authentication and encryption for input devices.
220         Fix adapter name initialization.
221
222 ver 4.5:
223         Fix initialization issue with new adapters.
224         Send HID authentication request without blocking.
225         Hide the verbose SDP debug behind SDP_DEBUG.
226         Add extra UUIDs for service discovery.
227         Add SCO server socket listener.
228         Add authorization support to service plugin.
229
230 ver 4.4:
231         Add temporary fix for the CUPS compile issue.
232         Add service-api.txt to distribution.
233         Mention the variable prefix of an object path
234
235 ver 4.3:
236         Add dummy driver for telephony support.
237         Add support for discovery sessions.
238         Add service plugin for external services.
239         Various cleanups.
240
241 ver 4.2:
242         Avoid memory copies in A2DP write routine.
243         Fix broken logic with Simple Pairing check and old kernels.
244         Allow non-bondable and outgoing SDP without agent.
245         Only remove the bonding for non-temporary devices.
246         Cleanup various unnecessary includes.
247         Make more unexported functions static.
248         Add basic infrastructure for gtk-doc support.
249
250 ver 4.1:
251         Add 30 seconds timeout to BNEP connection setup phase.
252         Avoid memory copies in A2DP write routine for ALSA.
253         Make sure to include compat/sdp.h in the distribution.
254
255 ver 4.0:
256         Initial public release.
257
258 ver 3.36:
259         Add init routines for TI BRF chips.
260         Add extra attributes to the serial port record.
261         Add example record for headset audio gateway record.
262         Use Handsfree version 0x0105 for the gateway role.
263         Fix SDP record registration with specific record handles.
264         Fix BCSP sent/receive handling.
265         Fix various includes for cross-compilation.
266         Allow link mode settings for outgoing connections.
267         Allow bonding during periodic inquiry.
268
269 ver 3.35:
270         Add two additional company identifiers.
271         Add UUID-128 support for service discovery.
272         Fix usage of friendly names for service discovery.
273         Fix authorization when experiemental is disabled.
274         Fix uninitialized variable in passkey request handling.
275         Enable output of timestamps for l2test and rctest.
276
277 ver 3.34:
278         Replace various SDP functions with safe versions.
279         Add additional length validation for incoming SDP packets.
280         Use safe function versions for SDP client handling.
281         Fix issue with RemoveDevice during discovery procedure.
282         Fix collect for non-persistent service records.
283
284 ver 3.33:
285         Add functions for reading and writing the link policy settings.
286         Add definition for authentication requirements.
287         Add support for handling Simple Pairing.
288         Add Simple Pairing support to Agent interface.
289         Add ReleaseMode method to Adapter interface.
290         Add DiscoverServices method to Device interface.
291         Remove obsolete code and cleanup the repository.
292         Move over to use the libgdbus API.
293         Enable PIE by default if supported.
294
295 ver 3.32:
296         Add OCF constants for synchronous flow control enabling.
297         Add support for switching HID proxy devices from Dell.
298         Add more Bluetooth client/server helper functions.
299         Add support for input service idle timeout option.
300         Fix BNEP reconnection handling.
301         Fix return value for snd_pcm_hw_params() calls.
302         Use upper-case addresses for object paths.
303         Remove HAL support helpers.
304         Remove inotify support.
305         Remove service daemon activation handling.
306         Remove uneeded D-Bus API extension.
307
308 ver 3.31:
309         Create device object for all pairing cases.
310         Convert authorization to internal function calls.
311         Add initial support for Headset Audio Gateway role.
312         Add generic Bluetooth helper functions for GLib.
313         Fix endiannes handling of connection handles.
314         Don't optimize when debug is enabled.
315
316 ver 3.30:
317         Convert audio service into a plugin.
318         Convert input service into a plugin.
319         Convert serial service into a plugin.
320         Convert network service into a plugin.
321         Emit old device signals when a property is changed.
322         Fix missing DiscoverDevices and CancelDiscovery methods.
323         Add another company identifier.
324         Add basic support for Bluetooth sessions.
325         Add avinfo utility for AVDTP/A2DP classification.
326         Remove build option for deprecated sdpd binary.
327
328 ver 3.29:
329         Introduce new D-Bus based API.
330         Add more SBC optimizations.
331         Add support for PS3 remote devices.
332         Fix alignment trap in SDP server.
333         Fix memory leak in sdp_get_uuidseq_attr function.
334
335 ver 3.28:
336         Add support for MCAP UUIDs.
337         Add support for role switch for audio service.
338         Add disconnect timer for audio service.
339         Add disconnect detection to ALSA plugin.
340         Add more SBC optimizations.
341         Fix alignment issue of SDP server.
342         Remove support for SDP parsing via expat.
343
344 ver 3.27:
345         Update uinput.h with extra key definitions.
346         Add support for input connect/disconnect callbacks.
347         Add ifdefs around some baud rate definitions.
348         Add another company identifier.
349         Add proper HFP service level connection handling.
350         Add basic headset automatic disconnect support.
351         Add support for new SBC API.
352         Fix SBC decoder noise at high bitpools.
353         Use 32-bit multipliers for further SBC optimization.
354         Check for RFCOMM connection state in SCO connect callback.
355         Make use of parameters selected in ALSA plugin.
356
357 ver 3.26:
358         Fix compilation issues with UCHAR_MAX, USHRT_MAX and UINT_MAX.
359         Improve handling of different audio transports.
360         Enable services by default and keep old daemons disabled.
361
362 ver 3.25:
363         Add limited support for Handsfree profile.
364         Add limited support for MPEG12/MP3 codec.
365         Add basic support for UNITINFO and SUBUNITINFO.
366         Add more SBC optimizations.
367         Fix external service (un)registration.
368         Allow GetInfo and GetAddress to fail.
369
370 ver 3.24:
371         Add definitions for MDP.
372         Add TCP connection support for serial proxy.
373         Add fix for Logitech HID proxy switching.
374         Add missing macros, MIN, MAX, ABS and CLAMP.
375         Add more SBC encoder optimizations.
376         Add initial mechanism to handle headset commands.
377         Fix connecting to handsfree profile headsets.
378         Use proper function for checking signal name.
379
380 ver 3.23:
381         Fix remote name request handling bug.
382         Fix key search function to honor the mmap area size.
383         Fix Avahi integration of network service.
384         Add new plugin communication for audio service.
385         Enable basic AVRCP support by default.
386         More optimizations to the SBC library.
387         Create common error definitions.
388
389 ver 3.22:
390         Add missing include file from audio service.
391         Add SBC conformance test utility.
392         Add basic uinput support for AVRCP.
393         Fix L2CAP socket leak in audio service.
394         Fix buffer usage in GStreamer plugin.
395         Fix remote name request event handling.
396
397 ver 3.21:
398         Add constant for Bluetooth socket options level.
399         Add initial AVRCP support.
400         Add A2DP sink support to GStreamer plugin.
401         Fix interoperability with A2DP suspend.
402         Fix sign error in 8-subband encoder.
403         Fix handling of service classes length size.
404         Store Extended Inquiry Response data information.
405         Publish device id information through EIR.
406         Support higher baud rates for Ericcson based chips.
407
408 ver 3.20:
409         Fix GStreamer plugin file type detection.
410         Fix potential infinite loop in inotify support.
411         Fix D-Bus signatures for dict handling.
412         Fix issues with service activation.
413         Fix SDP failure handling of audio service.
414         Fix various memory leaks in input service.
415         Add secure device creation method to input service.
416         Add service information methods to serial service.
417         Add config file support to network service.
418         Add scripting capability to network service.
419         Add special on-mode handling.
420         Add optimization for SBC encoder.
421         Add tweaks for D-Bus 1.1.x libraries.
422         Add support for inquiry transmit power level.
423
424 ver 3.19:
425         Limit range of bitpool announced while in ACP side.
426         Use poll instead of usleep to wait for worker thread.
427         Use default event mask from the specification.
428         Add L2CAP mode constants.
429         Add HID proxy support for Logitech diNovo Edge dongle.
430         Add refresh option to re-request device names.
431         Show correct connection link type.
432
433 ver 3.18:
434         Don't allocate memory for the Bluetooth base UUID.
435         Implement proper locking for headsets.
436         Fix various A2DP SEP locking issues.
437         Fix and cleanup audio stream handling.
438         Fix stream starting if suspend request is pending.
439         Fix A2DP and AVDTP endianess problems.
440         Add network timeout and retransmission support.
441         Add more detailed decoding of EIR elements.
442
443 ver 3.17:
444         Fix supported commands bit calculation.
445         Fix crashes in audio and network services.
446         Check PAN source and destination roles.
447         Only export the needed symbols for the plugins.
448
449 ver 3.16:
450         Update company identifier list.
451         Add support for headsets with SCO audio over HCI.
452         Add support for auto-create through ALSA plugin.
453         Add support for ALSA plugin parameters.
454         Add GStreamer plugin with SBC decoder and encoder.
455         Fix network service NAP, GN and PANU servers.
456         Set EIR information from SDP database.
457
458 ver 3.15:
459         Add A2DP support to the audio service.
460         Add proxy support to the serial service.
461         Extract main service class for later use.
462         Set service classes value from SDP database.
463
464 ver 3.14:
465         Add missing signals for the adapter interface.
466         Add definitions and functions for Simple Pairing.
467         Add basic commands for Simple Pairing.
468         Add correct Simple Pairing and EIR interaction.
469         Add missing properties for remote information.
470         Add EPoX endian quirk to the input service.
471         Fix HID descriptor import and storage functions.
472         Fix handling of adapters in raw mode.
473         Fix remote device listing methods.
474
475 ver 3.13:
476         Fix some issues with the headset support.
477         Fix concurrent pending connection attempts.
478         Fix usage of devname instead of netdev.
479         Add identifier for Nokia SyncML records.
480         Add command for reading the CSR chip revision.
481         Add generic CSR radio test support.
482         Update HCI command table.
483
484 ver 3.12:
485         Add missing HCI command text descriptions
486         Add missing HCI commands structures.
487         Add missing HCI event structures.
488         Add common bachk() function.
489         Add support for limited discovery mode.
490         Add support for setting of event mask.
491         Add GetRemoteServiceIdentifiers method.
492         Add skeleton for local D-Bus server.
493         Add headset gain control methods.
494         Fix various headset implementation issues.
495         Fix various serial port service issues.
496         Fix various input service issues.
497         Let CUPS plugin discover printers in range.
498         Improve the BCM2035 UART init routine.
499         Ignore connection events for non-ACL links.
500
501 ver 3.11:
502         Update API documentation.
503         Minimize SDP root records and browse groups.
504         Use same decoder for text and URL strings.
505         Fix URL data size handling.
506         Fix SDP pattern extraction for XML.
507         Fix network connection persistent state.
508         Add network connection helper methods.
509         Add initial version of serial port support.
510         Add class of device tracking.
511
512 ver 3.10.1:
513         Add option to disable installation of manual pages.
514         Fix input service encryption setup.
515         Fix serial service methods.
516         Fix network service connection handling.
517         Provide a simple init script.
518
519 ver 3.10:
520         Add initial version of network service.
521         Add initial version of serial service.
522         Add initial version of input service.
523         Add initial version of audio service.
524         Add authorization framework.
525         Add integer based SBC library.
526         Add version code for Bluetooth 2.1 specification.
527         Add ESCO_LINK connection type constant.
528         Export sdp_uuid32_to_uuid128() function.
529
530 ver 3.9:
531         Add RemoteDeviceDisconnectRequested signal.
532         Add updated service framework.
533         Add embedded GLib library.
534         Add support for using system GLib library.
535         Create internal SDP server library.
536
537 ver 3.8:
538         Sort discovered devices list based on their RSSI.
539         Send DiscoverableTimeoutChanged signal.
540         Fix local and remote name validity checking.
541         Add ListRemoteDevices and ListRecentRemoteDevices methods.
542         Add basic integration of confirmation concept.
543         Add support for service record description via XML.
544         Add support for external commands to the RFCOMM utility.
545         Add experimental service and authorization API.
546         Add functions for registering binary records.
547
548 ver 3.7:
549         Fix class of device handling.
550         Fix error replies with pairing and security mode 3.
551         Fix disconnect method for RFCOMM connections.
552         Add match pattern for service searches.
553         Add support for prioritized watches.
554         Add additional PDU length checks.
555         Fix CSRC value for partial responses.
556
557 ver 3.6.1:
558         Fix IO channel race conditions.
559         Fix pairing issues on big endian systems.
560         Fix pairing issues with page timeout errors.
561         Fix pairing state for security mode 3 requests.
562         Switch to user as default security manager mode.
563
564 ver 3.6:
565         Update D-Bus based RFCOMM interface support.
566         Use L2CAP raw sockets for HCI connection creation.
567         Add periodic discovery support to the D-Bus interface.
568         Add initial support for device names via EIR.
569         Add proper UTF-8 validation of device names.
570         Add support for the J-Three keyboard.
571         Fix issues with the asynchronous API for SDP.
572
573 ver 3.5:
574         Fix and cleanup watch functionality.
575         Add support for periodic inquiry mode.
576         Add support for asynchronous SDP requests.
577         Add more request owner tracking.
578         Add asynchronous API for SDP.
579         Document pageto and discovto options.
580
581 ver 3.4:
582         Improve error reporting for failed HCI commands.
583         Improve handling of CancelBonding.
584         Fixed bonding reply message when disconnected.
585         Fix UUID128 string lookup handling.
586         Fix malloc() versus bt_malloc() usage.
587
588 ver 3.3:
589         Don't change inquiry mode for Bluetooth 1.1 adapters.
590         Add udev rules for Bluetooth serial PCMCIA cards.
591         Add Cancel and Release methods for passkey agents.
592         Add GetRemoteClass method.
593         Convert to using ppoll() and pselect().
594         Initialize allocated memory to zero.
595         Remove bcm203x firmware loader.
596         Remove kernel specific timeouts.
597         Add additional private data field for SDP sessions.
598         Add host controller to host flow control defines.
599         Add host number of completed packets defines.
600         Initialize various memory to zero before usage.
601
602 ver 3.2:
603         Only check for the low-level D-Bus library.
604         Update possible device minor classes.
605         Fix timeout for pending reply.
606         Add more Inquiry with RSSI quirks.
607         Sleep only 100 msecs for device detection.
608         Don't send BondingCreated on link key renewal.
609         Allow storing of all UTF-8 remote device names.
610         Create storage filenames with a generic function.
611         Fix handling of SDP strings.
612         Add adapter type for SDIO cards.
613         Add features bit for link supervision timeout.
614
615 ver 3.1:
616         Add missing placeholders for feature bits.
617         Fix handling of raw mode devices.
618         Fix busy loop in UUID extraction routine.
619         Remove inquiry mode setting.
620         Remove auth and encrypt settings.
621
622 ver 3.0:
623         Implement the new BlueZ D-Bus API.
624         Fix broken behavior with EVT_CMD_STATUS.
625         Add features bit for pause encryption.
626         Add additional EIR error code.
627         Add more company identifiers.
628         Add another Phonebook Access identifier.
629         Update sniff subrating data structures.
630
631 ver 2.25:
632         Use %jx instead of %llx for uint64_t and int64_t.
633         Allow null-terminated text strings.
634         Add UUID for N-Gage games.
635         Add UUID for Apple Macintosh Attributes.
636         Add Apple attributes and iSync records.
637         Add definitions for Apple Agent.
638         Add support for the Handsfree Audio Gateway service.
639         Add support for choosing a specific record handle.
640         Add support for dialup/telephone connections.
641         Add definitions for Apple Agent.
642         Add support for record handle on service registration.
643
644 ver 2.24:
645         Fix display of SDP text and data strings.
646         Add support for device scan property.
647         Add support for additional access protocols.
648         Update the D-Bus policy configuration file.
649
650 ver 2.23:
651         Update the new D-Bus interface.
652         Make dfutool ready for big endian architectures.
653         Add support for AVRCP specific service records.
654         Add support for writing complex BCCMD commands.
655         Add the new BCCMD interface utility.
656         Add MicroBCSP implementation from CSR.
657         Add constants and definitions for sniff subrating.
658         Add support for allocation of binary text elements.
659         Add HCI emulation tool.
660         Add fake HID support for old EPoX presenters.
661         Reject connections from unknown HID devices.
662         Fix service discovery deadlocks with Samsung D600 phones.
663
664 ver 2.22:
665         Remove D-Bus 0.23 support.
666         Add initial version of the new D-Bus interface.
667         Add support for extended inquiry response commands.
668         Add support for the Logitech diNovo Media Desktop Laser.
669         Add compile time buffer checks (FORTIFY SOURCE).
670         Decode reserved LMP feature bits.
671         Fix errno overwrite problems.
672         Fix profile descriptor problem with Samsung phones.
673
674 ver 2.21:
675         Move create_dirs() and create_file() into the textfile library.
676         Let textfile_put() also replace the last key value pair.
677         Fix memory leaks with textfile_get() usage.
678         Fix infinite loops and false positive matches.
679         Don't retrieve stored link keys for RAW devices.
680         Document the putkey and delkey commands.
681         Show supported commands also in clear text.
682         Support volatile changes of the BD_ADDR for CSR chips.
683         Add support for identification of supported commands.
684         Add missing OCF declarations for the security filter.
685         Add two new company identifiers.
686
687 ver 2.20:
688         Add UUIDs for video distribution profile.
689         Add UUIDs for phonebook access profile.
690         Add attribute identifier for supported repositories.
691         Add definitions for extended inquiry response.
692         Add functions for extended inquiry response.
693         Add support for extended inquiry response.
694         Add support for HotSync service record.
695         Add support for ActiveSync service record.
696         Add ActiveSync networking support.
697         Fix D-Bus crashes with new API versions.
698
699 ver 2.19:
700         Fix the GCC 4.0 warnings.
701         Fix the routing for dealing with raw devices.
702         Fix off by one memory allocation error.
703         Fix security problem with escape characters in device name.
704         Add per device service record functions.
705         Send D-Bus signals for inquiry results and remote name resolves.
706         Add support for device specific SDP records.
707
708 ver 2.18:
709         Support D-Bus 0.23 and 0.33 API versions.
710         Support reading of complex BCCMD values.
711         Support minimum and maximum encryption key length.
712         Add support for reading and writing the inquiry scan type.
713         Add definitions for connection accept timeout and scan enable.
714         Add support for inquiry scan type.
715         Add tool for the CSR BCCMD interface.
716         Add first draft of the Audio/Video control utility.
717         Add disconnect timer support for the A2DP ALSA plugin.
718         Make SBC parameters configurable.
719         Replace non-printable characters in device names.
720         Remove hci_vhci.h header file.
721         Remove hci_uart.h header file.
722
723 ver 2.17:
724         Set the storage directory through ${localstatedir}.
725         Add the textfile library for ASCII based file access.
726         Add support for return link keys event.
727         Add support for voice setting configuration.
728         Add support for page scan timeout configuration.
729         Add support for storing and deleting of stored link keys.
730         Add support for searching for services with UUID-128.
731         Add support for retrieving all possible service records.
732         Add support for a raw mode view of service records.
733         Add support for HID information caching in hidd.
734         Add support for authentication in pand and dund.
735         Add support for changing BD_ADDR of CSR chips.
736         Add pskey utility for changing CSR persistent storage values.
737         Add the firmware upgrade utility.
738         Add connection caching for the A2DP ALSA plugin.
739         Add functions for stored link keys.
740         Add definitions for PIN type and unit key.
741         Add SDP_WAIT_ON_CLOSE flag for sdp_connect().
742         Include stdio.h in bluetooth.h header file.
743         Include sys/socket.h in the header files.
744
745 ver 2.16:
746         Store link keys in ASCII based file format.
747         Support device name caching.
748         Support zero length data sizes in l2test.
749         Change default l2ping data size to 44 bytes.
750         Hide the server record and the public browse group root.
751         Read BD_ADDR if not set and if it is a raw device.
752         Add SDP language attributes.
753         Add support for browsing the L2CAP group.
754         Add support for stored pin codes for outgoing connections.
755         Add support for local commands and extended features.
756         Add support for reading CSR panic and fault codes.
757         Add config option for setting the inquiry mode.
758         Add OUI decoding support.
759         Use unlimited inquiry responses as default.
760         Use cached device names for PIN request.
761         Use the clock offset when getting the remote names.
762         Add function for reading local supported commands.
763         Add function for reading local extended features.
764         Add function for reading remote extended features.
765         Add function for getting the remote name with a clock offset.
766         Add function for extracting the OUI from a BD_ADDR.
767         Add inquiry info structure with RSSI and page scan mode.
768         Fix buffer allocation for features to string conversion.
769         Support inquiry with unlimited number of responses.
770
771 ver 2.15:
772         Enable the RFCOMM service level security.
773         Add deprecated functions for reading the name.
774         Add command for reading the clock offset.
775         Add command for reading the clock.
776         Add function for reading the clock.
777         Add function for reading the local Bluetooth address.
778         Add function for reading the local supported features.
779         Don't configure raw devices.
780         Don't set inquiry scan or page scan on raw devices.
781         Don't show extended information for raw devices.
782         Support L2CAP signal sizes bigger than 2048 bytes.
783         Cleanup of the socket handling code of the test programs.
784         Use better way for unaligned access.
785         Remove sdp_internal.h and its usage.
786
787 ver 2.14:
788         Make use of additional connection information.
789         Use library function for reading the RSSI.
790         Use library function for reading the link quality.
791         Use library function for reading the transmit power level.
792         Use library functions for the link supervision timeout.
793         Add tool for changing the device address.
794         Add function for reading the RSSI.
795         Add function for reading the link quality.
796         Add function for reading the transmit power level.
797         Add functions for the link supervision timeout.
798         Remove deprecated functions.
799         Update AM_PATH_BLUEZ macro.
800
801 ver 2.13:
802         Use file permission 0600 for the link key file.
803         Add support for HID attribute descriptions.
804         Add support for Device ID attributes.
805         Add Device ID and HID attribute definitions.
806         Update the UUID constants and its translations.
807         Update L2CAP socket option definitions.
808         Update connection information definitions.
809         Various whitespace cleanups.
810
811 ver 2.12:
812         Inherit the device specific options from the default.
813         Use --device for selecting the source device.
814         Add --nosdp option for devices with resource limitation.
815         Add support and parameter option for secure mode.
816         Add a lot of build ids and hardware revisions.
817         Add service classes and profile ids for WAP.
818         Add simple AM_PATH_BLUEZ macro.
819         Update UUID translation tables.
820         Correct kernel interface for CMTP and HIDP support.
821
822 ver 2.11:
823         Initial support for the kernel security manager.
824         Various cleanups to avoid inclusion of kernel headers.
825         Fix output when the CUPS backend is called without arguments.
826         Fix problems with a 64 bit userland.
827         Use Bluetooth library functions if available.
828         Use standard numbering scheme of SDP record handles.
829         Use bit zero for vendor packets in the filter type bitmask.
830         Add SIM Access types for service discovery.
831         Add more audio/video profile translations.
832         Add another company identifier.
833         Add the missing HCI error codes.
834         Add RFCOMM socket options.
835         Add definition for the SECURE link mode.
836         Add functions for reading and writing the inquiry mode.
837         Add functions for AFH related settings and information.
838         Add version identifier for the Bluetooth 2.0 specification.
839         Add a master option to the hidd.
840         Add support for changing the link key of a connection.
841         Add support for requesting encryption on keyboards.
842         Add support for revision information of Digianswer devices.
843         Add support for the Zoom, IBM and TDK PCMCIA cards.
844         Add checks for the OpenOBEX and the ALSA libraries.
845         Add experimental mRouter support.
846
847 ver 2.10:
848         Use a define for the configuration directory.
849         Fix string initialization for flags translation.
850         Fix and extend the unaligned access macros.
851         Make compiling with debug information optional.
852         Don't override CFLAGS from configure.
853         Check for usb_get_busses() and usb_interrupt_read().
854         Add optional support for compiling with PIE.
855         Make installation of the init scripts optional.
856         Make compiling with debug information optional.
857         Don't override CFLAGS from configure.
858
859 ver 2.9:
860         Retry SDP connect if busy in the CUPS backend.
861         Use packet type and allow role switch in hcitool.
862         Use the functions from the USB library for hid2hci.
863         Add Broadcom firmware loader.
864         Add EPoX endian quirk for buggy keyboards.
865         Add L2CAP info type and info result definitions.
866         Add value for L2CAP_CONF_RFC_MODE.
867         Change RSSI value to signed instead of unsigned.
868         Allow UUID32 values as protocol identifiers.
869         Update the autoconf/automake scripts.
870
871 ver 2.8:
872         Use LIBS and LDADD instead of LDFLAGS.
873         Use HIDP subclass field for HID boot protocol.
874         Set olen before calling getsockopt() in pand.
875         Restore signals for dev-up script.
876         Add PID file support for pand.
877         Add size parameter to expand_name() in hcid.
878         Add support for audio source and audio sink SDP records.
879         Add support for HID virtual cable unplug.
880         Add support for AmbiCom BT2000C card.
881         Add defines and UUID's for audio/video profiles.
882         Add AVDTP protocol identifier.
883         Add HIDP subclass field.
884         Add PKGConfig support.
885         Fix the event code of inquiry with RSSI.
886         Remove dummy SDP library.
887
888 ver 2.7:
889         Fix display of decoded LMP features.
890         Update company identifiers.
891         Add AFH related types.
892         Add first bits from EDR prototyping specification.
893         Add support for inquiry with RSSI.
894         Add HCRP related SDP functions.
895         Add HIDP header file.
896         Add support for getting the AFH channel map.
897         Add support for AFH mode.
898         Add support for inquiry mode.
899         Add Bluetooth backend for CUPS.
900         Add the hid2hci utility.
901         Add the hidd utility.
902         Add the pand utility.
903         Add the dund utility.
904         More endian bug fixes.
905         Give udev some time to create the RFCOMM device nodes.
906         Release the TTY if no device node is found.
907         New startup script for the Bluetooth subsystem.
908         Update to the autoconf stuff.
909
910 ver 2.6:
911         Change default prefix to /usr.
912         Add manpages for hcid and hcid.conf.
913         Add the sdpd server daemon.
914         Add the sdptool utility.
915         Add the ciptool utility.
916         Add new company identifiers.
917         Add BNEP and CMTP header files.
918         Add the SDP library.
919         Use R2 for default value of pscan_rep_mode.
920
921 ver 2.5:
922         Add decoding of Bluetooth 1.2 features.
923         Add link manager version parameter for Bluetooth 1.2.
924         Add new company identifiers.
925         Add D-Bus support for PIN request.
926         Support for transmit power level.
927         Support for park, sniff and hold mode.
928         Support for role switch.
929         Support for reading the clock offset.
930         Support for requesting authentication.
931         Support for setting connection encryption.
932         Show revision information for Broadcom devices.
933         Replace unprintable characters in device name.
934         Use R1 for default value of pscan_rep_mode.
935         Fix some 64-bit problems.
936         Fix some endian problems.
937         Report an error on PIN helper failure.
938         Update bluepin script for GTK2.
939
940 ver 2.4:
941         Increase number of inquiry responses.
942         Support for transmit power level.
943         Display all 8 bytes of the features.
944         Add support for reading and writing of IAC.
945         Correct decoding class of device.
946         Use Ericsson revision command for ST Microelectronics devices.
947         Display AVM firmware version with 'revision' command.
948         New code for CSR specific revision information.
949         Support for ST Microelectronics specific initialization.
950         Support for 3Com card version 3.0.
951         Support for TDK, IBM and Socket cards.
952         Support for initial baud rate.
953         Update man pages.
954         Fixes for some memory leaks.
955
956 ver 2.3:
957         Added const qualifiers to appropriate function arguments.
958         Minor fixes.
959         CSR firmware version is now displayed by 'revision' command.
960         Voice command is working properly on big endian machines.
961         Added support for Texas Bluetooth modules.
962         Added support for high UART baud rates on Ericsson modules.
963         BCSP initialization fixes.
964         Support for role switch command (hcitool).
965         RFCOMM config file parser fixes.
966         Update man pages.
967         Removed GLib dependency.
968
969 ver 2.2:
970         Updated RFCOMM header file.
971         Additional HCI command and event defines.
972         Support for voice settings (hciconfig).
973         Minor hcitool fixes.
974         Improved configure script.
975         Added Headset testing tool.
976         Updated man pages.
977         RPM package.
978
979 ver 2.1.1:
980         Resurrect hci_remote_name.
981
982 ver 2.1:
983         Added hci_{read, write}_class_of_dev().
984         Added hci_{read, write}_current_iac_lap().
985         Added hci_write_local_name().
986         Added RFCOMM header file.
987         Minor fixes.
988         Improved BCSP initialization (hciattach).
989         Support for displaying link quality (hcitool).
990         Support for changing link supervision timeout (hcitool).
991         New RFCOMM TTY configuration tool (rfcomm).
992         Minor fixes and updates.
993
994 ver 2.0:
995         Additional company IDs.
996         BCSP initialization (hciattach).
997         Minor hciconfig fixes.
998
999 ver 2.0-pr13:
1000         Support for multiple pairing modes.
1001         Link key database handling fixes.
1002
1003 ver 2.0-pre12:
1004         Removed max link key limit. Keys never expire.
1005         Link key database is always updated. Reread PIN on SIGHUP (hcid).
1006         Bluetooth script starts SDPd, if installed.
1007         Other minor fixes.
1008
1009 ver 2.0-pre11:
1010         Improved link key management and more verbose logging (hcid).
1011         Fixed scan command (hcitool).
1012
1013 ver 2.0-pre10:
1014         Fix hci_inquiry function to return errors and accept user buffers.
1015         New functions hci_devba, hci_devid, hci_for_each_dev and hci_get_route.
1016         Additional company IDs.
1017         Makefile and other minor fixes.
1018         Support for reading RSSI, remote name and changing
1019         connection type (hcitool). 
1020         Device initialization fixes (hcid).
1021         Other minor fixes and improvements.
1022         Build environment cleanup and fixes.
1023
1024 ver 2.0-pre9:
1025         Improved bluepin. Working X authentication.
1026         Improved hcitool. New flexible cmd syntax, additional commands.
1027         Human readable display of the device features.
1028         LMP features to string translation support.
1029         Additional HCI command and event defines.
1030         Extended hci_filter API.
1031
1032 ver 2.0-pre8:
1033         Additional HCI ioctls and defines.
1034         All strings and buffers are allocated dynamically.
1035         ba2str, str2ba automatically swap bdaddress.
1036         Additional hciconfig commands. Support for ACL and SCO MTU ioctls.
1037         Support for Inventel and COM1 UART based devices.
1038         Minor hcitool fixes.
1039         Improved l2test. New L2CAP test modes.
1040         Minor fixes and cleanup.
1041
1042 ver 2.0-pre7:
1043         Bluetooth libraries and header files is now a separate package.
1044         New build environment uses automake and libtool.
1045         Massive header files cleanup.
1046         Bluetooth utilities is now a separate package.
1047         New build environment uses automake.
1048         Moved all config files and security data to /etc/bluetooth.
1049         Various cleanups.
1050
1051 ver 2.0-pre6:
1052         API cleanup and additions.
1053         Improved hcitool.
1054         l2test minor output fixes.
1055         hciattach opt to display list of supported devices.
1056
1057 ver 2.0-pre4:
1058         HCI filter enhancements.
1059
1060 ver 2.0-pre3:
1061         Cleanup.
1062
1063 ver 2.0-pre2:
1064         Additional HCI library functions.
1065         Improved CSR baud rate initialization.
1066         PCMCIA scripts fixes and enhancements.
1067         Documentation update.
1068
1069 ver 2.0-pre1:
1070         New UART initialization utility.
1071         Hot plugging support for UART based PCMCIA devices.
1072         SCO testing utility.
1073         New authentication utility (bluepin).
1074         Minor fixes and improvements.