OSDN Git Service

Release 4.76
[android-x86/external-bluetooth-bluez.git] / ChangeLog
1 ver 4.76:
2         Fix issue in telephony driver with hanging up held call.
3         Fix issue in telephony driver with notifications when on hold.
4         Fix issue with blocking on setconf confirmation callback.
5         Fix issue with not always signaling new streams as sinks.
6         Fix issue with errors in case of endpoint request timeout.
7         Fix issue with HFP/HSP microphone and speaker gain values.
8         Add source if the device attempt to configure local sink stream.
9         Add PSM option for GATT/ATT over BR/EDR on gatttool.
10         Add support for GATT/ATT Attribute Write Request.
11         Update MCAP and HDP support.
12
13 ver 4.75:
14         Fix use of uninitialized variable on legacy pairing.
15         Fix mismatch of attribute protocol opcode.
16
17 ver 4.74:
18         Fix regression for Legacy Pairing.
19         Fix wrong PSM value for attribute protocol.
20         Fix issue with RSSI field in advertising reports.
21         Add support for Add BR/EDR and LE interleaved discovery.
22         Add support for GATT write characteristic value option.
23         Add support for specifying download address for AR300x.
24
25 ver 4.73:
26         Fix problem with EIR data when setting the name.
27         Fix reading local name from command complete event.
28         Fix registering local endpoints with disabled socket interface.
29         Add support for more HCI operations using ops infrastructure.
30         Add support for GATT characteristic hierarchy.
31         Add support for GATT indications.
32
33 ver 4.72:
34         Fix memory leak while connecting BTIO channels.
35         Fix crash with GStreamer plugin if SBC is not supported.
36         Fix issue with GATT server stop sending notifications.
37         Fix issue with GATT and dealing with the minimum MTU size.
38         Fix issue with file descriptor leak in GATT client.
39         Add support for UUID 128-bit handling in attribute client.
40         Add support for encoders/decoders for MTU Exchange.
41         Add support for the MTU Exchange procedure to the server.
42         Add support for a per channel MTU to the ATT server.
43         Add support for Characteristic interface.
44         Add support for new Media API and framework.
45         Add initial support for HDP plugin.
46
47 ver 4.71:
48         Fix compilation when SBC support in not enabled.
49         Fix crash with RequestSession and application disconnects.
50         Fix memory leak and possible crash when removing audio device.
51         Fix issue with closing stream of locked sep when reconfiguring.
52         Fix issue where discovery could interfere with bonding.
53         Fix issue with Connected status when PS3 BD remote connects.
54         Fix issue with lifetime of fake input devices.
55         Add support for compile time option of oui.txt path.
56         Add support for printing IEEE1284 device ID for CUPS.
57         Add plugin for setting adapter class via DMI.
58         Add more features for attribute protocol and profile.
59         Add initial support for MCAP.
60
61 ver 4.70:
62         Fix incoming call indication handling when in WAITING state.
63         Fix various SDP related qualification test case issues.
64         Fix logic to write EIR when SDP records are changed.
65         Fix UTF-8 validity check for remote names in EIR.
66         Add support for UUID-128 extended inquiry response.
67         Add service UUIDs from EIR to the DeviceFound signal.
68         Add fast connectable feature for Handsfree profile.
69         Add HCI command and event definitions for AMP support.
70         Add firmware download support for Qualcommh devices.
71         Add host level support for Atheros AR300x device.
72         Add initial support of ATT and GATT for basic rate.
73
74 ver 4.69:
75         Fix issue with calling g_option_context_free() twice.
76         Fix inconsistencies with initial LE commands and events.
77         Add support for telephony ClearLastNumber method.
78         Add support for network server interface.
79
80 ver 4.68:
81         Fix initialization of adapters in RAW mode.
82         Fix signal strength for HFP in Maemo's telephony support.
83         Add support for following the radio state via Maemo's MCE.
84         Add initial set of LE commands and events definitions.
85         Add mode option for L2CAP sockets to the BtIO API.
86
87 ver 4.67:
88         Fix issue with authentication reply when bonding already completed.
89         Fix issue with not canceling authentication when bonding fails.
90         Fix issue with changed combination keys and temporary storage.
91         Fix issue with sdp_get_supp_feat library function.
92         Fix issue with missing unblock on device removal.
93         Fix issue with not waiting for mode change completion.
94         Add ARMv6 optimized version of analysis filter for SBC encoder.
95
96 ver 4.66:
97         Fix regression with full debug enabling via SIGUSR2.
98         Fix redundant speaker/microphone gains being sent.
99         Fix not emitting PropertyChanged for SpeakerGain/MicrophoneGain.
100         Fix issue with storage usage when a record is not found in memory.
101         Fix issue with DiscoverServices not retrieving any records.
102         Fix audio profile disconnection order to match whitepaper.
103         Fix auto-accept confirmation when local agent has NoInputNoOutput.
104         Fix remote just-works SSP when MITM protection is required.
105         Fix performing dedicated bonding without MITM requirement.
106         Add support for storing debug link keys in runtime memory.
107
108 ver 4.65:
109         Fix issues with general bonding being default setting now.
110         Fix driver removal upon device removal.
111         Add new "Blocked" property to device objects.
112         Add hciconfig support for blacklisting.
113         Add support for dynamic debug feature.
114
115 ver 4.64:
116         Fix invalid memory access in headset_get_nrec function.
117         Fix issue with disconnect event on higher protocol layers.
118         Fix issue with list parsing in sdp_set_supp_features function.
119         Fix device object reference counting for SDP browse requests.
120         Add missing memory checks whenever memory is allocated for SDP.
121         Add support for exporting local services via D-Bus.
122         Add more L2CAP Enhanced Retransmission test options.
123
124 ver 4.63:
125         Fix avdtp_abort not canceling pending requests.
126         Fix stale connection when abort gets rejected.
127
128 ver 4.62:
129         Fix accidental symbol breakage with inquiry transmit power.
130         Fix using invalid data from previous headset connection.
131         Fix double free on AVDTP Abort response.
132         Fix possible crash while verifying AVDTP version.
133         Fix missing inuse flag when AVDTP stream is configured.
134         Add support for Bluetooth controller types.
135
136 ver 4.61:
137         Fix issues with Read Inquiry Response Transmit Power Level.
138         Fix possible invalid read when removing a temporary device.
139         Fix mode restoration when remember_powered is false.
140         Fix conference call releasing in telephony-maemo.
141         Fix segmentation fault with authorization during headset disconnects.
142         Add support for handling unanswered AVDTP request on disconnect.
143         Add support for handling Inquiry Response Transmit Power Level.
144         Add support for caching of remote host features.
145         Add preliminary voice dialing support for HSP.
146
147 ver 4.60:
148         Fix voice mailbox number reading from SIM.
149         Fix some races with D-Bus mainloop integration.
150         Add helpers for D-Bus signal watches.
151
152 ver 4.59:
153         Add values for Bluetooth 4.0 specification.
154         Add SDP functions for HDP support.
155         Add test scripts for input and audio.
156         Fix missing close on BtIO create_io function.
157         Fix sending incorrect AVDTP commands after timeout occurs.
158         Fix timer removal when device disconnects unexpectedly.
159         Fix Extended Inquiry Response record for Device ID.
160
161 ver 4.58:
162         Fix crash when adapter agent exists during authentication.
163         Fix CK-20W quirks for play and pause events.
164
165 ver 4.57:
166         Fix unloading of drivers for uninitialized adapters.
167         Fix debug message to use requested and not opened SEID.
168         Fix codec selection for GStreamer plugin.
169         Fix deleting of SDP records during service updates.
170         Fix deleting of SDP records when a device is removed.
171         Fix handling when the SDP record is modified on remote device.
172         Fix potential buffer overflow by using snprintf instead of sprintf.
173         Fix const declarations for some storage function parameters.
174
175 ver 4.56:
176         Add missing values from Bluetooth 3.0 specification.
177         Add proper tracking of device paired status.
178         Fix tracking of devices without permanently stored link key.
179         Fix issue with link key removal after connection failures.
180         Fix legacy pairing information based on remote host features.
181         Fix off-by-one issue with AVDTP capability parsing.
182         Fix AVRCP, AVCTP, AVDTP, A2DP and HFP version numbers.
183         Fix agent canceling before calling agent_destroy.
184         Fix service record parsing with an empty UUID list.
185         Fix various SDP related memory leaks.
186
187 ver 4.55:
188         Add support for POSIX capabilities dropping.
189         Add special quirk for the Nokia CK-20W car kit.
190         Fix error code handling for AVDTP SetConfiguration response.
191         Fix updating out of range list when RSSI hasn't changed.
192         Fix various memory leaks and unnecessary error checks.
193
194 ver 4.54:
195         Add introspection interface to output of introspection calls.
196         Fix stream handling when media transport disconnects prematurely.
197         Fix command timeout handling when there's no stream.
198         Fix headset_suspend_stream behavior for invalid states
199         Fix issue with AVDTP ABORTING state transition.
200         Fix issue with AVDTP suspend while closing.
201
202 ver 4.53:
203         Fix issue with telephony connection state notifications.
204         Fix AVDTP stream leak for invalid media transport config.
205         Fix audio connection authorization handling with timeouts.
206         Fix race condition in authorizing audio connections.
207         Fix device authorized setting for AVRCP-only connections.
208         Fix duplicate attempts from device to connect signal channel.
209
210 ver 4.52:
211         Add AVCTP support to test utility.
212         Fix AVDTP Abort when transport closes before response.
213         Fix authorization when the audio profiles are slow to connect.
214         Fix potential AVDTP reference leaks.
215
216 ver 4.51:
217         Add utility for basic AVDTP testing.
218         Add support for configuring L2CAP FCS option.
219         Fix discovery mode for CUPS 1.4.x and later.
220         Fix global state tracking of audio service.
221         Fix last issues with the new build system.
222
223 ver 4.50:
224         Fix issue with missing manual pages in distribution.
225         Fix issue with the configuration and state directories.
226         Fix issue with creating include directory.
227         Fix dependencies of include file generation.
228
229 ver 4.49:
230         Add simple test program for basic GAP testing.
231         Add support for confirmation requests to agent example.
232         Add support for full non-recursive build.
233         Add five millisecond delay for Simple Pairing auto-accept.
234         Fix Class of Device setting when InitiallyPowered=false.
235
236 ver 4.48:
237         Add library function for comparing UUID values.
238         Add support for creating all plugins as builtins.
239         Add support for async handling of service class changes.
240         Add support for source interface to audio IPC.
241         Fix device name settings when device is off or down.
242         Fix issue with enabled SCO server when not necessary.
243         Fix missing D-Bus access policy for CUPS backend.
244         Fix discovery results of CUPS backend.
245         Fix initialization handling of Maemo telephony.
246
247 ver 4.47:
248         Add support for RFKILL unblock handling.
249         Add support for serial proxy configurations.
250         Add support for caching service class updates.
251         Fix issues with updating SDP service records.
252         Fix usage of limited discoverable mode.
253         Remove deprecated methods and signals for AudioSource.
254
255 ver 4.46:
256         Add support for A2DP sink role.
257         Fix clearing svc_cache before the adapter is up.
258         Fix various pointer after free usages.
259         Fix various memory leaks.
260
261 ver 4.45:
262         Fix UDEV_DATADIR fallback if pkg-config fails.
263         Fix adapter cleanup and setup prototypes.
264         Fix double-free with out-of-range devices.
265         Fix inband ring setting to be per-headset.
266         Fix handling of Maemo CSD startup.
267
268 ver 4.44:
269         Add some missing manual pages.
270         Fix missing number prefix when installing udev rules.
271         Fix program prefix used in Bluetooth udev rules.
272         Fix three-way calling indicator order.
273         Fix downgrade/upgrade of callheld indicator.
274         Fix +CIEV sending when indicator value changes.
275         Fix signal handling for Maemo telephony driver.
276         Fix parsing issues with messages from Maemo CSD.
277         Fix issue with duplicate active calls.
278
279 ver 4.43:
280         Add support for udev based on-demand startup.
281         Fix verbose error reporting of CUPS backend.
282         Fix various string length issues.
283         Fix issues with Maemo telephony driver.
284         Fix another device setup and temporary flag issue.
285         Fix and update example agent implementation.
286
287 ver 4.42:
288         Add TI WL1271 to Texas Instruments chip list.
289         Add special udev mode to bluetoothd.
290         Fix regression when there is no agent registered.
291         Fix error return when bonding socket hang up.
292         Fix SCO server socket for HFP handsfree role.
293         Fix shutdown on SCO socket before closing.
294         Fix shutdown on A2DP audio stream channel before closing.
295         Fix issue with asserting on AVDTP reference count bugs.
296         Fix authorization denied issue with certain headsets.
297         Fix AVRCP UNITINFO and SUBUNIT INFO responses.
298         Fix discovery cancel issues in case SDP discovery fails.
299
300 ver 4.41:
301         Fix pairing even if the ACL gets dropped before successful SDP.
302         Fix regression which caused device to be removed after pairing.
303         Fix HSP record fetching when remote device doesn't support it.
304         Fix SDP discovery canceling when clearing hs->pending.
305         Fix headset never connecting on the first attempt.
306         Fix headset state tracking if bt_search_service() fails.
307         Fix maximum headset connection count check.
308         Fix AVDTP Discover timeout handling.
309         Fix also UI_SET_KEYBIT for the new pause and play key codes.
310
311 ver 4.40:
312         Add telephony driver for oFono telephony stack.
313         Add support for Dell specific HID proxy switching.
314         Add support for running hid2hci from udev.
315         Add mapping for AVRCP Play and Pause to dedicated key codes.
316         Fix AVRCP keycodes to better match existing X keymap support.
317         Fix various quoting issues within telephony support.
318         Fix memory allocation issue when generating PDUs for SDP.
319         Fix race condition on device removal.
320         Fix non-cancelable issue with CreateDevice method.
321         Fix non-working CancelDiscovery method call.
322
323 ver 4.39:
324         Add workaround for dealing with unknown inquiry complete.
325         Fix discovering when using software scheduler.
326         Fix wrong NoInputNoOutput IO capability string.
327         Fix race condition with agent during pairing.
328         Fix agent cancellation for security mode 3 acceptor failure.
329         Fix temporary flag removal when device creation fails.
330         Fix hciattach to use ppoll instead of poll.
331         Fix service class update when adapter is down.
332         Fix service classes race condition during startup.
333         Fix release of audio client before freeing the device.
334
335 ver 4.38:
336         Add support for builtin plugins.
337         Add framework for adapter operations.
338         Add constants for Enhanced Retransmission modes.
339         Fix HCI socket leak in device_remove_bonding.
340         Fix various format string issues.
341         Fix crashes with various free functions.
342         Fix issues with Headset and A2DP drivers to load again.
343         Fix sending AVRCP button released passthrough messages
344         Fix bug which prevent input devices to work after restart.
345         Fix issue with interpretation of UUID-128 as channel.
346
347 ver 4.37:
348         Add version value for Bluetooth 3.0 devices.
349         Add additional L2CAP extended feature mask bits.
350         Add support for loading plugins in priority order.
351         Add support for more detailed usage of disconnect watches.
352         Add support for AVRCP volume control.
353         Add saturated clipping of SBC decoder output to 16-bit.
354         Fix potentially infinite recursion of adapter_up.
355         Fix SCO handling in the case of an incoming call.
356         Fix input service to use confirm callback.
357         Fix cleanup of temporary device entries from storage.
358
359 ver 4.36:
360         Add proper tracking of AVCTP connect attempts.
361         Add support to channel pattern in Serial interface.
362         Fix A2DP sink crash if removing device while connecting.
363         Fix error handling if HFP indicators aren't initialized.
364         Fix segfault while handling an incoming SCO connection.
365         Fix Serial.Disconnect to abort connection attempt.
366
367 ver 4.35:
368         Add support for Handsfree profile headset role.
369         Add additional checks for open SEIDs from clients.
370         Fix device removal while audio IPC client is connected.
371         Fix device removal when an authorization request is pending.
372         Fix incoming AVDTP connect while authorization in progress.
373         Fix disconnection timers for audio support.
374         Fix various potential NULL pointer deferences.
375         Fix callheld indicator value for multiple calls.
376         Fix voice number type usage.
377         Fix GDBus watch handling.
378
379 ver 4.34:
380         Add support for version checks of plugins.
381         Add support for class property on adapter interface.
382         Add support for second SDP attempt after connection reset.
383         Add support for more detailed audio states.
384         Add support for HFP+A2DP auto connection feature.
385         Add support for new and improved audio IPC.
386         Add program for testing audio IPC interface.
387         Fix various AVDTP qualification related issues.
388         Fix broken SDP AttributeIdList parsing.
389         Fix invalid memory access of SDP URL handling.
390         Fix local class of device race conditions.
391         Fix issue with periodic inquiry on startup.
392         Fix missing temporary devices in some situations.
393         Fix SBC alignment issue for encoding with four subbands.
394
395 ver 4.33:
396         Add Paired property to the DeviceFound signals.
397         Add support for Headset profile 1.2 version.
398         Fix broken network configuration when IPv6 is disabled.
399         Fix network regression that caused disconnection.
400         Fix SDP truncation of strings with NULL values.
401         Fix service discovery handling of CUPS helper.
402
403 ver 4.32:
404         Fix broken SDP record handling.
405         Fix SDP data buffer parsing.
406         Fix more SDP memory leaks.
407         Fix read scan enable calls.
408         Fix A2DP stream handling.
409
410 ver 4.31:
411         Add support for new BtIO helper library.
412         Fix AVDTP session close issue.
413         Fix SDP memory leaks.
414         Fix various uninitialized memory issues.
415         Fix duplicate signal emissions.
416         Fix property changes request handling.
417         Fix class of device storage handling.
418
419 ver 4.30:
420         Add CID field to L2CAP socket address structure.
421         Fix reset of authentication requirements after bonding.
422         Fix storing of link keys when using dedicated bonding.
423         Fix storing of pre-Bluetooth 2.1 link keys.
424         Fix resetting trust settings on every reboot.
425         Fix handling of local name changes.
426         Fix memory leaks in hciconfig and hcitool
427
428 ver 4.29:
429         Use AVRCP version 1.0 for now.
430         Decrease AVDTP idle timeout to one second.
431         Delay AVRCP connection when remote device connects A2DP.
432         Add workaround for AVDTP stream setup with broken headsets.
433         Add missing three-way calling feature bit for Handsfree.
434         Fix handsfree callheld indicator updating.
435         Fix parsing of all AT commands within the buffer.
436         Fix authentication replies when disconnected.
437         Fix handling of debug combination keys.
438         Fix handling of changed combination keys.
439         Fix handling of link keys when using no bonding.
440         Fix handling of invalid/unknown authentication requirements.
441         Fix closing of L2CAP raw socket used for dedicated bonding.
442
443 ver 4.28:
444         Add AVDTP signal fragmentation support.
445         Add more SBC performance optimizations.
446         Add more SBC audio quality improvements.
447         Use native byte order for audio plugins.
448         Set the adapter alias only after checking the EIR data.
449         Fix auto-disconnect issue with explicit A2DP connections.
450         Fix invalid memory access of ALSA plugin.
451         Fix compilation with -Wsign-compare.
452
453 ver 4.27:
454         Add more SBC optimization (MMX and ARM NEON).
455         Add BT_SECURITY and BT_DEFER_SETUP definitions.
456         Add support for deferred connection setup.
457         Add support for fragmentation of data packets.
458         Add option to trigger dedicated bonding.
459         Follow MITM requirements from remote device.
460         Require MITM for dedicated bonding if capabilities allow it.
461         Fix IO capabilities for non-pairing and pairing cases.
462         Fix no-bonding connections in non-bondable mode.
463         Fix new pairing detection with SSP.
464         Fix bonding with pre-2.1 devices and newer kernels.
465         Fix LIAC setting while toggling Pairable property.
466         Fix device creation for incoming security mode 3 connects.
467         Fix crash within A2DP with bogus pointer.
468         Fix issue with sdp_copy_record() function.
469         Fix crash with extract_des() if sdp_uuid_extract() fails.
470
471 ver 4.26:
472         Use of constant shift in SBC quantization code.
473         Add possibility to analyze 4 blocks at once in encoder.
474         Fix correct handling of frame sizes in the encoder.
475         Fix for big endian problems in SBC codec.
476         Fix audio client socket to always be non-blocking.
477         Update telephony support for Maemo.
478
479 ver 4.25:
480         Fix receiving data over the audio control socket.
481         Fix subbands selection for joint-stereo in SBC encoder.
482         Add new SBC analysis filter function.
483
484 ver 4.24:
485         Fix signal emissions when removing adapters.
486         Fix missing adapter signals on exit.
487         Add support for bringing adapters down on exit.
488         Add support for RememberPowered option.
489         Add support for verbose compiler warnings.
490         Add more options to SBC encoder.
491
492 ver 4.23:
493         Update audio IPC for better codec handling.
494         Fix bitstream optimization for SBC encoder.
495         Fix length header values of IPC messages.
496         Fix multiple coding style violations.
497         Fix FindDevice to handle temporary devices.
498         Add configuration option for DeviceID.
499         Add support for InitiallyPowered option.
500         Add missing signals for manager properties.
501         Add telephony support for Maemo.
502
503 ver 4.22:
504         Add deny statements to D-Bus access policy.
505         Add support for LegacyPairing property.
506         Add support for global properties.
507         Add more commands to telephony testing script.
508         Add sender checks for serial and network interfaces.
509         Remove deprecated methods and signals from input interface.
510         Remove deprecated methods and signals from network interface.
511         Remove OffMode option and always use device down.
512
513 ver 4.21:
514         Fix adapter initialization logic.
515         Fix adapter setup and start security manager early.
516         Fix usage issue with first_init variable.
517
518 ver 4.20:
519         Cleanup session handling.
520         Cleanup mode setting handling.
521         Fix issue with concurrent audio clients.
522         Fix issue with HFP/HSP suspending.
523         Fix AT result code syntax handling.
524         Add Handsfree support for AT+NREC.
525         Add PairableTimeout adapter property.
526
527 ver 4.19:
528         Fix installation of manual pages for old daemons.
529         Fix D-Bus signal emmissions for CreateDevice.
530         Fix issues with UUID probing.
531         Fix +BSRF syntax issue.
532         Add Pairable adapter property.
533         Add sdp_copy_record() library function.
534
535 ver 4.18:
536         Fix release before close issue with RFCOMM TTYs.
537         Fix Connected property on input interface.
538         Fix DeviceFound signals during initial name resolving.
539         Fix service discovery handling.
540         Fix duplicate UUID detection.
541         Fix SBC gain mismatch and decoding handling.
542         Add more options to SBC encoder and decoder.
543         Add special any adapter object for service interface.
544         Add variable prefix to adapter and device object paths.
545
546 ver 4.17:
547         Fix SBC encoder not writing last frame.
548         Fix missing timer for A2DP suspend.
549         Add more supported devices to hid2hci utility.
550         Add additional functionality to Handsfree support.
551
552 ver 4.16:
553         Fix wrong parameter usage of watch callbacks.
554         Fix parameters for callback upon path removal.
555         Fix unloading of adapter drivers.
556
557 ver 4.15:
558         Fix various A2DP state machine issues.
559         Fix some issues with the Handsfree error reporting.
560         Fix format string warnings with recent GCC versions.
561         Remove dependency on GModule.
562
563 ver 4.14:
564         Fix types of property arrays.
565         Fix potential crash with input devices.
566         Fix PS3 BD remote input event generation.
567         Allow dynamic adapter driver registration.
568         Update udev rules.
569
570 ver 4.13:
571         Fix service discovery and UUID handling.
572         Fix bonding issues with Simple Pairing.
573         Fix file descriptor misuse of SCO connections.
574         Fix various memory leaks in the device handling.
575         Fix AVCTP disconnect handling.
576         Fix GStreamer modes for MP3 encoding.
577         Add operator selection to Handsfree support.
578
579 ver 4.12:
580         Fix crash with missing icon value.
581         Fix error checks of HAL plugin.
582         Fix SCO server socket cleanup on exit.
583         Fix memory leaks from DBusPendingCall.
584         Fix handling of pending authorization requests.
585         Fix missing protocol UUIDs in record pattern.
586
587 ver 4.11:
588         Change SCO server socket into a generic one.
589         Add test script for dummy telephony plugin.
590         Fix uninitialized reply of multiple GetProperties methods.
591
592 ver 4.10:
593         Fix memory leaks with HAL messages.
594         Add more advanced handsfree features.
595         Add properties to audio, input and network interfaces.
596         Stop device discovery timer on device removal.
597
598 ver 4.9:
599         Fix signals for Powered and Discoverable properties.
600         Fix handling of Alias and Icon properties.
601         Fix duplicate entries for service UUIDs.
602
603 ver 4.8:
604         Fix retrieving of formfactor value.
605         Fix retrieving of local and remote extended features.
606         Fix potential NULL pointer dereference during pairing.
607         Fix crash with browsing due to a remotely initated pairing.
608
609 ver 4.7:
610         Fix pairing and service discovery logic.
611         Fix crashes during suspend and resume.
612         Fix race condition within devdown mode.
613         Add RequestSession and ReleaseSession methods.
614         Add Powered and Discoverable properties.
615         Add Devices property and deprecate ListDevices.
616         Add workaround for a broken carkit from Nokia.
617
618 ver 4.6:
619         Fix Device ID record handling.
620         Fix service browsing and storage.
621         Fix authentication and encryption for input devices.
622         Fix adapter name initialization.
623
624 ver 4.5:
625         Fix initialization issue with new adapters.
626         Send HID authentication request without blocking.
627         Hide the verbose SDP debug behind SDP_DEBUG.
628         Add extra UUIDs for service discovery.
629         Add SCO server socket listener.
630         Add authorization support to service plugin.
631
632 ver 4.4:
633         Add temporary fix for the CUPS compile issue.
634         Add service-api.txt to distribution.
635         Mention the variable prefix of an object path
636
637 ver 4.3:
638         Add dummy driver for telephony support.
639         Add support for discovery sessions.
640         Add service plugin for external services.
641         Various cleanups.
642
643 ver 4.2:
644         Avoid memory copies in A2DP write routine.
645         Fix broken logic with Simple Pairing check and old kernels.
646         Allow non-bondable and outgoing SDP without agent.
647         Only remove the bonding for non-temporary devices.
648         Cleanup various unnecessary includes.
649         Make more unexported functions static.
650         Add basic infrastructure for gtk-doc support.
651
652 ver 4.1:
653         Add 30 seconds timeout to BNEP connection setup phase.
654         Avoid memory copies in A2DP write routine for ALSA.
655         Make sure to include compat/sdp.h in the distribution.
656
657 ver 4.0:
658         Initial public release.
659
660 ver 3.36:
661         Add init routines for TI BRF chips.
662         Add extra attributes to the serial port record.
663         Add example record for headset audio gateway record.
664         Use Handsfree version 0x0105 for the gateway role.
665         Fix SDP record registration with specific record handles.
666         Fix BCSP sent/receive handling.
667         Fix various includes for cross-compilation.
668         Allow link mode settings for outgoing connections.
669         Allow bonding during periodic inquiry.
670
671 ver 3.35:
672         Add two additional company identifiers.
673         Add UUID-128 support for service discovery.
674         Fix usage of friendly names for service discovery.
675         Fix authorization when experiemental is disabled.
676         Fix uninitialized variable in passkey request handling.
677         Enable output of timestamps for l2test and rctest.
678
679 ver 3.34:
680         Replace various SDP functions with safe versions.
681         Add additional length validation for incoming SDP packets.
682         Use safe function versions for SDP client handling.
683         Fix issue with RemoveDevice during discovery procedure.
684         Fix collect for non-persistent service records.
685
686 ver 3.33:
687         Add functions for reading and writing the link policy settings.
688         Add definition for authentication requirements.
689         Add support for handling Simple Pairing.
690         Add Simple Pairing support to Agent interface.
691         Add ReleaseMode method to Adapter interface.
692         Add DiscoverServices method to Device interface.
693         Remove obsolete code and cleanup the repository.
694         Move over to use the libgdbus API.
695         Enable PIE by default if supported.
696
697 ver 3.32:
698         Add OCF constants for synchronous flow control enabling.
699         Add support for switching HID proxy devices from Dell.
700         Add more Bluetooth client/server helper functions.
701         Add support for input service idle timeout option.
702         Fix BNEP reconnection handling.
703         Fix return value for snd_pcm_hw_params() calls.
704         Use upper-case addresses for object paths.
705         Remove HAL support helpers.
706         Remove inotify support.
707         Remove service daemon activation handling.
708         Remove uneeded D-Bus API extension.
709
710 ver 3.31:
711         Create device object for all pairing cases.
712         Convert authorization to internal function calls.
713         Add initial support for Headset Audio Gateway role.
714         Add generic Bluetooth helper functions for GLib.
715         Fix endiannes handling of connection handles.
716         Don't optimize when debug is enabled.
717
718 ver 3.30:
719         Convert audio service into a plugin.
720         Convert input service into a plugin.
721         Convert serial service into a plugin.
722         Convert network service into a plugin.
723         Emit old device signals when a property is changed.
724         Fix missing DiscoverDevices and CancelDiscovery methods.
725         Add another company identifier.
726         Add basic support for Bluetooth sessions.
727         Add avinfo utility for AVDTP/A2DP classification.
728         Remove build option for deprecated sdpd binary.
729
730 ver 3.29:
731         Introduce new D-Bus based API.
732         Add more SBC optimizations.
733         Add support for PS3 remote devices.
734         Fix alignment trap in SDP server.
735         Fix memory leak in sdp_get_uuidseq_attr function.
736
737 ver 3.28:
738         Add support for MCAP UUIDs.
739         Add support for role switch for audio service.
740         Add disconnect timer for audio service.
741         Add disconnect detection to ALSA plugin.
742         Add more SBC optimizations.
743         Fix alignment issue of SDP server.
744         Remove support for SDP parsing via expat.
745
746 ver 3.27:
747         Update uinput.h with extra key definitions.
748         Add support for input connect/disconnect callbacks.
749         Add ifdefs around some baud rate definitions.
750         Add another company identifier.
751         Add proper HFP service level connection handling.
752         Add basic headset automatic disconnect support.
753         Add support for new SBC API.
754         Fix SBC decoder noise at high bitpools.
755         Use 32-bit multipliers for further SBC optimization.
756         Check for RFCOMM connection state in SCO connect callback.
757         Make use of parameters selected in ALSA plugin.
758
759 ver 3.26:
760         Fix compilation issues with UCHAR_MAX, USHRT_MAX and UINT_MAX.
761         Improve handling of different audio transports.
762         Enable services by default and keep old daemons disabled.
763
764 ver 3.25:
765         Add limited support for Handsfree profile.
766         Add limited support for MPEG12/MP3 codec.
767         Add basic support for UNITINFO and SUBUNITINFO.
768         Add more SBC optimizations.
769         Fix external service (un)registration.
770         Allow GetInfo and GetAddress to fail.
771
772 ver 3.24:
773         Add definitions for MDP.
774         Add TCP connection support for serial proxy.
775         Add fix for Logitech HID proxy switching.
776         Add missing macros, MIN, MAX, ABS and CLAMP.
777         Add more SBC encoder optimizations.
778         Add initial mechanism to handle headset commands.
779         Fix connecting to handsfree profile headsets.
780         Use proper function for checking signal name.
781
782 ver 3.23:
783         Fix remote name request handling bug.
784         Fix key search function to honor the mmap area size.
785         Fix Avahi integration of network service.
786         Add new plugin communication for audio service.
787         Enable basic AVRCP support by default.
788         More optimizations to the SBC library.
789         Create common error definitions.
790
791 ver 3.22:
792         Add missing include file from audio service.
793         Add SBC conformance test utility.
794         Add basic uinput support for AVRCP.
795         Fix L2CAP socket leak in audio service.
796         Fix buffer usage in GStreamer plugin.
797         Fix remote name request event handling.
798
799 ver 3.21:
800         Add constant for Bluetooth socket options level.
801         Add initial AVRCP support.
802         Add A2DP sink support to GStreamer plugin.
803         Fix interoperability with A2DP suspend.
804         Fix sign error in 8-subband encoder.
805         Fix handling of service classes length size.
806         Store Extended Inquiry Response data information.
807         Publish device id information through EIR.
808         Support higher baud rates for Ericcson based chips.
809
810 ver 3.20:
811         Fix GStreamer plugin file type detection.
812         Fix potential infinite loop in inotify support.
813         Fix D-Bus signatures for dict handling.
814         Fix issues with service activation.
815         Fix SDP failure handling of audio service.
816         Fix various memory leaks in input service.
817         Add secure device creation method to input service.
818         Add service information methods to serial service.
819         Add config file support to network service.
820         Add scripting capability to network service.
821         Add special on-mode handling.
822         Add optimization for SBC encoder.
823         Add tweaks for D-Bus 1.1.x libraries.
824         Add support for inquiry transmit power level.
825
826 ver 3.19:
827         Limit range of bitpool announced while in ACP side.
828         Use poll instead of usleep to wait for worker thread.
829         Use default event mask from the specification.
830         Add L2CAP mode constants.
831         Add HID proxy support for Logitech diNovo Edge dongle.
832         Add refresh option to re-request device names.
833         Show correct connection link type.
834
835 ver 3.18:
836         Don't allocate memory for the Bluetooth base UUID.
837         Implement proper locking for headsets.
838         Fix various A2DP SEP locking issues.
839         Fix and cleanup audio stream handling.
840         Fix stream starting if suspend request is pending.
841         Fix A2DP and AVDTP endianess problems.
842         Add network timeout and retransmission support.
843         Add more detailed decoding of EIR elements.
844
845 ver 3.17:
846         Fix supported commands bit calculation.
847         Fix crashes in audio and network services.
848         Check PAN source and destination roles.
849         Only export the needed symbols for the plugins.
850
851 ver 3.16:
852         Update company identifier list.
853         Add support for headsets with SCO audio over HCI.
854         Add support for auto-create through ALSA plugin.
855         Add support for ALSA plugin parameters.
856         Add GStreamer plugin with SBC decoder and encoder.
857         Fix network service NAP, GN and PANU servers.
858         Set EIR information from SDP database.
859
860 ver 3.15:
861         Add A2DP support to the audio service.
862         Add proxy support to the serial service.
863         Extract main service class for later use.
864         Set service classes value from SDP database.
865
866 ver 3.14:
867         Add missing signals for the adapter interface.
868         Add definitions and functions for Simple Pairing.
869         Add basic commands for Simple Pairing.
870         Add correct Simple Pairing and EIR interaction.
871         Add missing properties for remote information.
872         Add EPoX endian quirk to the input service.
873         Fix HID descriptor import and storage functions.
874         Fix handling of adapters in raw mode.
875         Fix remote device listing methods.
876
877 ver 3.13:
878         Fix some issues with the headset support.
879         Fix concurrent pending connection attempts.
880         Fix usage of devname instead of netdev.
881         Add identifier for Nokia SyncML records.
882         Add command for reading the CSR chip revision.
883         Add generic CSR radio test support.
884         Update HCI command table.
885
886 ver 3.12:
887         Add missing HCI command text descriptions
888         Add missing HCI commands structures.
889         Add missing HCI event structures.
890         Add common bachk() function.
891         Add support for limited discovery mode.
892         Add support for setting of event mask.
893         Add GetRemoteServiceIdentifiers method.
894         Add skeleton for local D-Bus server.
895         Add headset gain control methods.
896         Fix various headset implementation issues.
897         Fix various serial port service issues.
898         Fix various input service issues.
899         Let CUPS plugin discover printers in range.
900         Improve the BCM2035 UART init routine.
901         Ignore connection events for non-ACL links.
902
903 ver 3.11:
904         Update API documentation.
905         Minimize SDP root records and browse groups.
906         Use same decoder for text and URL strings.
907         Fix URL data size handling.
908         Fix SDP pattern extraction for XML.
909         Fix network connection persistent state.
910         Add network connection helper methods.
911         Add initial version of serial port support.
912         Add class of device tracking.
913
914 ver 3.10.1:
915         Add option to disable installation of manual pages.
916         Fix input service encryption setup.
917         Fix serial service methods.
918         Fix network service connection handling.
919         Provide a simple init script.
920
921 ver 3.10:
922         Add initial version of network service.
923         Add initial version of serial service.
924         Add initial version of input service.
925         Add initial version of audio service.
926         Add authorization framework.
927         Add integer based SBC library.
928         Add version code for Bluetooth 2.1 specification.
929         Add ESCO_LINK connection type constant.
930         Export sdp_uuid32_to_uuid128() function.
931
932 ver 3.9:
933         Add RemoteDeviceDisconnectRequested signal.
934         Add updated service framework.
935         Add embedded GLib library.
936         Add support for using system GLib library.
937         Create internal SDP server library.
938
939 ver 3.8:
940         Sort discovered devices list based on their RSSI.
941         Send DiscoverableTimeoutChanged signal.
942         Fix local and remote name validity checking.
943         Add ListRemoteDevices and ListRecentRemoteDevices methods.
944         Add basic integration of confirmation concept.
945         Add support for service record description via XML.
946         Add support for external commands to the RFCOMM utility.
947         Add experimental service and authorization API.
948         Add functions for registering binary records.
949
950 ver 3.7:
951         Fix class of device handling.
952         Fix error replies with pairing and security mode 3.
953         Fix disconnect method for RFCOMM connections.
954         Add match pattern for service searches.
955         Add support for prioritized watches.
956         Add additional PDU length checks.
957         Fix CSRC value for partial responses.
958
959 ver 3.6.1:
960         Fix IO channel race conditions.
961         Fix pairing issues on big endian systems.
962         Fix pairing issues with page timeout errors.
963         Fix pairing state for security mode 3 requests.
964         Switch to user as default security manager mode.
965
966 ver 3.6:
967         Update D-Bus based RFCOMM interface support.
968         Use L2CAP raw sockets for HCI connection creation.
969         Add periodic discovery support to the D-Bus interface.
970         Add initial support for device names via EIR.
971         Add proper UTF-8 validation of device names.
972         Add support for the J-Three keyboard.
973         Fix issues with the asynchronous API for SDP.
974
975 ver 3.5:
976         Fix and cleanup watch functionality.
977         Add support for periodic inquiry mode.
978         Add support for asynchronous SDP requests.
979         Add more request owner tracking.
980         Add asynchronous API for SDP.
981         Document pageto and discovto options.
982
983 ver 3.4:
984         Improve error reporting for failed HCI commands.
985         Improve handling of CancelBonding.
986         Fixed bonding reply message when disconnected.
987         Fix UUID128 string lookup handling.
988         Fix malloc() versus bt_malloc() usage.
989
990 ver 3.3:
991         Don't change inquiry mode for Bluetooth 1.1 adapters.
992         Add udev rules for Bluetooth serial PCMCIA cards.
993         Add Cancel and Release methods for passkey agents.
994         Add GetRemoteClass method.
995         Convert to using ppoll() and pselect().
996         Initialize allocated memory to zero.
997         Remove bcm203x firmware loader.
998         Remove kernel specific timeouts.
999         Add additional private data field for SDP sessions.
1000         Add host controller to host flow control defines.
1001         Add host number of completed packets defines.
1002         Initialize various memory to zero before usage.
1003
1004 ver 3.2:
1005         Only check for the low-level D-Bus library.
1006         Update possible device minor classes.
1007         Fix timeout for pending reply.
1008         Add more Inquiry with RSSI quirks.
1009         Sleep only 100 msecs for device detection.
1010         Don't send BondingCreated on link key renewal.
1011         Allow storing of all UTF-8 remote device names.
1012         Create storage filenames with a generic function.
1013         Fix handling of SDP strings.
1014         Add adapter type for SDIO cards.
1015         Add features bit for link supervision timeout.
1016
1017 ver 3.1:
1018         Add missing placeholders for feature bits.
1019         Fix handling of raw mode devices.
1020         Fix busy loop in UUID extraction routine.
1021         Remove inquiry mode setting.
1022         Remove auth and encrypt settings.
1023
1024 ver 3.0:
1025         Implement the new BlueZ D-Bus API.
1026         Fix broken behavior with EVT_CMD_STATUS.
1027         Add features bit for pause encryption.
1028         Add additional EIR error code.
1029         Add more company identifiers.
1030         Add another Phonebook Access identifier.
1031         Update sniff subrating data structures.
1032
1033 ver 2.25:
1034         Use %jx instead of %llx for uint64_t and int64_t.
1035         Allow null-terminated text strings.
1036         Add UUID for N-Gage games.
1037         Add UUID for Apple Macintosh Attributes.
1038         Add Apple attributes and iSync records.
1039         Add definitions for Apple Agent.
1040         Add support for the Handsfree Audio Gateway service.
1041         Add support for choosing a specific record handle.
1042         Add support for dialup/telephone connections.
1043         Add definitions for Apple Agent.
1044         Add support for record handle on service registration.
1045
1046 ver 2.24:
1047         Fix display of SDP text and data strings.
1048         Add support for device scan property.
1049         Add support for additional access protocols.
1050         Update the D-Bus policy configuration file.
1051
1052 ver 2.23:
1053         Update the new D-Bus interface.
1054         Make dfutool ready for big endian architectures.
1055         Add support for AVRCP specific service records.
1056         Add support for writing complex BCCMD commands.
1057         Add the new BCCMD interface utility.
1058         Add MicroBCSP implementation from CSR.
1059         Add constants and definitions for sniff subrating.
1060         Add support for allocation of binary text elements.
1061         Add HCI emulation tool.
1062         Add fake HID support for old EPoX presenters.
1063         Reject connections from unknown HID devices.
1064         Fix service discovery deadlocks with Samsung D600 phones.
1065
1066 ver 2.22:
1067         Remove D-Bus 0.23 support.
1068         Add initial version of the new D-Bus interface.
1069         Add support for extended inquiry response commands.
1070         Add support for the Logitech diNovo Media Desktop Laser.
1071         Add compile time buffer checks (FORTIFY SOURCE).
1072         Decode reserved LMP feature bits.
1073         Fix errno overwrite problems.
1074         Fix profile descriptor problem with Samsung phones.
1075
1076 ver 2.21:
1077         Move create_dirs() and create_file() into the textfile library.
1078         Let textfile_put() also replace the last key value pair.
1079         Fix memory leaks with textfile_get() usage.
1080         Fix infinite loops and false positive matches.
1081         Don't retrieve stored link keys for RAW devices.
1082         Document the putkey and delkey commands.
1083         Show supported commands also in clear text.
1084         Support volatile changes of the BD_ADDR for CSR chips.
1085         Add support for identification of supported commands.
1086         Add missing OCF declarations for the security filter.
1087         Add two new company identifiers.
1088
1089 ver 2.20:
1090         Add UUIDs for video distribution profile.
1091         Add UUIDs for phonebook access profile.
1092         Add attribute identifier for supported repositories.
1093         Add definitions for extended inquiry response.
1094         Add functions for extended inquiry response.
1095         Add support for extended inquiry response.
1096         Add support for HotSync service record.
1097         Add support for ActiveSync service record.
1098         Add ActiveSync networking support.
1099         Fix D-Bus crashes with new API versions.
1100
1101 ver 2.19:
1102         Fix the GCC 4.0 warnings.
1103         Fix the routing for dealing with raw devices.
1104         Fix off by one memory allocation error.
1105         Fix security problem with escape characters in device name.
1106         Add per device service record functions.
1107         Send D-Bus signals for inquiry results and remote name resolves.
1108         Add support for device specific SDP records.
1109
1110 ver 2.18:
1111         Support D-Bus 0.23 and 0.33 API versions.
1112         Support reading of complex BCCMD values.
1113         Support minimum and maximum encryption key length.
1114         Add support for reading and writing the inquiry scan type.
1115         Add definitions for connection accept timeout and scan enable.
1116         Add support for inquiry scan type.
1117         Add tool for the CSR BCCMD interface.
1118         Add first draft of the Audio/Video control utility.
1119         Add disconnect timer support for the A2DP ALSA plugin.
1120         Make SBC parameters configurable.
1121         Replace non-printable characters in device names.
1122         Remove hci_vhci.h header file.
1123         Remove hci_uart.h header file.
1124
1125 ver 2.17:
1126         Set the storage directory through ${localstatedir}.
1127         Add the textfile library for ASCII based file access.
1128         Add support for return link keys event.
1129         Add support for voice setting configuration.
1130         Add support for page scan timeout configuration.
1131         Add support for storing and deleting of stored link keys.
1132         Add support for searching for services with UUID-128.
1133         Add support for retrieving all possible service records.
1134         Add support for a raw mode view of service records.
1135         Add support for HID information caching in hidd.
1136         Add support for authentication in pand and dund.
1137         Add support for changing BD_ADDR of CSR chips.
1138         Add pskey utility for changing CSR persistent storage values.
1139         Add the firmware upgrade utility.
1140         Add connection caching for the A2DP ALSA plugin.
1141         Add functions for stored link keys.
1142         Add definitions for PIN type and unit key.
1143         Add SDP_WAIT_ON_CLOSE flag for sdp_connect().
1144         Include stdio.h in bluetooth.h header file.
1145         Include sys/socket.h in the header files.
1146
1147 ver 2.16:
1148         Store link keys in ASCII based file format.
1149         Support device name caching.
1150         Support zero length data sizes in l2test.
1151         Change default l2ping data size to 44 bytes.
1152         Hide the server record and the public browse group root.
1153         Read BD_ADDR if not set and if it is a raw device.
1154         Add SDP language attributes.
1155         Add support for browsing the L2CAP group.
1156         Add support for stored pin codes for outgoing connections.
1157         Add support for local commands and extended features.
1158         Add support for reading CSR panic and fault codes.
1159         Add config option for setting the inquiry mode.
1160         Add OUI decoding support.
1161         Use unlimited inquiry responses as default.
1162         Use cached device names for PIN request.
1163         Use the clock offset when getting the remote names.
1164         Add function for reading local supported commands.
1165         Add function for reading local extended features.
1166         Add function for reading remote extended features.
1167         Add function for getting the remote name with a clock offset.
1168         Add function for extracting the OUI from a BD_ADDR.
1169         Add inquiry info structure with RSSI and page scan mode.
1170         Fix buffer allocation for features to string conversion.
1171         Support inquiry with unlimited number of responses.
1172
1173 ver 2.15:
1174         Enable the RFCOMM service level security.
1175         Add deprecated functions for reading the name.
1176         Add command for reading the clock offset.
1177         Add command for reading the clock.
1178         Add function for reading the clock.
1179         Add function for reading the local Bluetooth address.
1180         Add function for reading the local supported features.
1181         Don't configure raw devices.
1182         Don't set inquiry scan or page scan on raw devices.
1183         Don't show extended information for raw devices.
1184         Support L2CAP signal sizes bigger than 2048 bytes.
1185         Cleanup of the socket handling code of the test programs.
1186         Use better way for unaligned access.
1187         Remove sdp_internal.h and its usage.
1188
1189 ver 2.14:
1190         Make use of additional connection information.
1191         Use library function for reading the RSSI.
1192         Use library function for reading the link quality.
1193         Use library function for reading the transmit power level.
1194         Use library functions for the link supervision timeout.
1195         Add tool for changing the device address.
1196         Add function for reading the RSSI.
1197         Add function for reading the link quality.
1198         Add function for reading the transmit power level.
1199         Add functions for the link supervision timeout.
1200         Remove deprecated functions.
1201         Update AM_PATH_BLUEZ macro.
1202
1203 ver 2.13:
1204         Use file permission 0600 for the link key file.
1205         Add support for HID attribute descriptions.
1206         Add support for Device ID attributes.
1207         Add Device ID and HID attribute definitions.
1208         Update the UUID constants and its translations.
1209         Update L2CAP socket option definitions.
1210         Update connection information definitions.
1211         Various whitespace cleanups.
1212
1213 ver 2.12:
1214         Inherit the device specific options from the default.
1215         Use --device for selecting the source device.
1216         Add --nosdp option for devices with resource limitation.
1217         Add support and parameter option for secure mode.
1218         Add a lot of build ids and hardware revisions.
1219         Add service classes and profile ids for WAP.
1220         Add simple AM_PATH_BLUEZ macro.
1221         Update UUID translation tables.
1222         Correct kernel interface for CMTP and HIDP support.
1223
1224 ver 2.11:
1225         Initial support for the kernel security manager.
1226         Various cleanups to avoid inclusion of kernel headers.
1227         Fix output when the CUPS backend is called without arguments.
1228         Fix problems with a 64 bit userland.
1229         Use Bluetooth library functions if available.
1230         Use standard numbering scheme of SDP record handles.
1231         Use bit zero for vendor packets in the filter type bitmask.
1232         Add SIM Access types for service discovery.
1233         Add more audio/video profile translations.
1234         Add another company identifier.
1235         Add the missing HCI error codes.
1236         Add RFCOMM socket options.
1237         Add definition for the SECURE link mode.
1238         Add functions for reading and writing the inquiry mode.
1239         Add functions for AFH related settings and information.
1240         Add version identifier for the Bluetooth 2.0 specification.
1241         Add a master option to the hidd.
1242         Add support for changing the link key of a connection.
1243         Add support for requesting encryption on keyboards.
1244         Add support for revision information of Digianswer devices.
1245         Add support for the Zoom, IBM and TDK PCMCIA cards.
1246         Add checks for the OpenOBEX and the ALSA libraries.
1247         Add experimental mRouter support.
1248
1249 ver 2.10:
1250         Use a define for the configuration directory.
1251         Fix string initialization for flags translation.
1252         Fix and extend the unaligned access macros.
1253         Make compiling with debug information optional.
1254         Don't override CFLAGS from configure.
1255         Check for usb_get_busses() and usb_interrupt_read().
1256         Add optional support for compiling with PIE.
1257         Make installation of the init scripts optional.
1258         Make compiling with debug information optional.
1259         Don't override CFLAGS from configure.
1260
1261 ver 2.9:
1262         Retry SDP connect if busy in the CUPS backend.
1263         Use packet type and allow role switch in hcitool.
1264         Use the functions from the USB library for hid2hci.
1265         Add Broadcom firmware loader.
1266         Add EPoX endian quirk for buggy keyboards.
1267         Add L2CAP info type and info result definitions.
1268         Add value for L2CAP_CONF_RFC_MODE.
1269         Change RSSI value to signed instead of unsigned.
1270         Allow UUID32 values as protocol identifiers.
1271         Update the autoconf/automake scripts.
1272
1273 ver 2.8:
1274         Use LIBS and LDADD instead of LDFLAGS.
1275         Use HIDP subclass field for HID boot protocol.
1276         Set olen before calling getsockopt() in pand.
1277         Restore signals for dev-up script.
1278         Add PID file support for pand.
1279         Add size parameter to expand_name() in hcid.
1280         Add support for audio source and audio sink SDP records.
1281         Add support for HID virtual cable unplug.
1282         Add support for AmbiCom BT2000C card.
1283         Add defines and UUID's for audio/video profiles.
1284         Add AVDTP protocol identifier.
1285         Add HIDP subclass field.
1286         Add PKGConfig support.
1287         Fix the event code of inquiry with RSSI.
1288         Remove dummy SDP library.
1289
1290 ver 2.7:
1291         Fix display of decoded LMP features.
1292         Update company identifiers.
1293         Add AFH related types.
1294         Add first bits from EDR prototyping specification.
1295         Add support for inquiry with RSSI.
1296         Add HCRP related SDP functions.
1297         Add HIDP header file.
1298         Add support for getting the AFH channel map.
1299         Add support for AFH mode.
1300         Add support for inquiry mode.
1301         Add Bluetooth backend for CUPS.
1302         Add the hid2hci utility.
1303         Add the hidd utility.
1304         Add the pand utility.
1305         Add the dund utility.
1306         More endian bug fixes.
1307         Give udev some time to create the RFCOMM device nodes.
1308         Release the TTY if no device node is found.
1309         New startup script for the Bluetooth subsystem.
1310         Update to the autoconf stuff.
1311
1312 ver 2.6:
1313         Change default prefix to /usr.
1314         Add manpages for hcid and hcid.conf.
1315         Add the sdpd server daemon.
1316         Add the sdptool utility.
1317         Add the ciptool utility.
1318         Add new company identifiers.
1319         Add BNEP and CMTP header files.
1320         Add the SDP library.
1321         Use R2 for default value of pscan_rep_mode.
1322
1323 ver 2.5:
1324         Add decoding of Bluetooth 1.2 features.
1325         Add link manager version parameter for Bluetooth 1.2.
1326         Add new company identifiers.
1327         Add D-Bus support for PIN request.
1328         Support for transmit power level.
1329         Support for park, sniff and hold mode.
1330         Support for role switch.
1331         Support for reading the clock offset.
1332         Support for requesting authentication.
1333         Support for setting connection encryption.
1334         Show revision information for Broadcom devices.
1335         Replace unprintable characters in device name.
1336         Use R1 for default value of pscan_rep_mode.
1337         Fix some 64-bit problems.
1338         Fix some endian problems.
1339         Report an error on PIN helper failure.
1340         Update bluepin script for GTK2.
1341
1342 ver 2.4:
1343         Increase number of inquiry responses.
1344         Support for transmit power level.
1345         Display all 8 bytes of the features.
1346         Add support for reading and writing of IAC.
1347         Correct decoding class of device.
1348         Use Ericsson revision command for ST Microelectronics devices.
1349         Display AVM firmware version with 'revision' command.
1350         New code for CSR specific revision information.
1351         Support for ST Microelectronics specific initialization.
1352         Support for 3Com card version 3.0.
1353         Support for TDK, IBM and Socket cards.
1354         Support for initial baud rate.
1355         Update man pages.
1356         Fixes for some memory leaks.
1357
1358 ver 2.3:
1359         Added const qualifiers to appropriate function arguments.
1360         Minor fixes.
1361         CSR firmware version is now displayed by 'revision' command.
1362         Voice command is working properly on big endian machines.
1363         Added support for Texas Bluetooth modules.
1364         Added support for high UART baud rates on Ericsson modules.
1365         BCSP initialization fixes.
1366         Support for role switch command (hcitool).
1367         RFCOMM config file parser fixes.
1368         Update man pages.
1369         Removed GLib dependency.
1370
1371 ver 2.2:
1372         Updated RFCOMM header file.
1373         Additional HCI command and event defines.
1374         Support for voice settings (hciconfig).
1375         Minor hcitool fixes.
1376         Improved configure script.
1377         Added Headset testing tool.
1378         Updated man pages.
1379         RPM package.
1380
1381 ver 2.1.1:
1382         Resurrect hci_remote_name.
1383
1384 ver 2.1:
1385         Added hci_{read, write}_class_of_dev().
1386         Added hci_{read, write}_current_iac_lap().
1387         Added hci_write_local_name().
1388         Added RFCOMM header file.
1389         Minor fixes.
1390         Improved BCSP initialization (hciattach).
1391         Support for displaying link quality (hcitool).
1392         Support for changing link supervision timeout (hcitool).
1393         New RFCOMM TTY configuration tool (rfcomm).
1394         Minor fixes and updates.
1395
1396 ver 2.0:
1397         Additional company IDs.
1398         BCSP initialization (hciattach).
1399         Minor hciconfig fixes.
1400
1401 ver 2.0-pr13:
1402         Support for multiple pairing modes.
1403         Link key database handling fixes.
1404
1405 ver 2.0-pre12:
1406         Removed max link key limit. Keys never expire.
1407         Link key database is always updated. Reread PIN on SIGHUP (hcid).
1408         Bluetooth script starts SDPd, if installed.
1409         Other minor fixes.
1410
1411 ver 2.0-pre11:
1412         Improved link key management and more verbose logging (hcid).
1413         Fixed scan command (hcitool).
1414
1415 ver 2.0-pre10:
1416         Fix hci_inquiry function to return errors and accept user buffers.
1417         New functions hci_devba, hci_devid, hci_for_each_dev and hci_get_route.
1418         Additional company IDs.
1419         Makefile and other minor fixes.
1420         Support for reading RSSI, remote name and changing
1421         connection type (hcitool). 
1422         Device initialization fixes (hcid).
1423         Other minor fixes and improvements.
1424         Build environment cleanup and fixes.
1425
1426 ver 2.0-pre9:
1427         Improved bluepin. Working X authentication.
1428         Improved hcitool. New flexible cmd syntax, additional commands.
1429         Human readable display of the device features.
1430         LMP features to string translation support.
1431         Additional HCI command and event defines.
1432         Extended hci_filter API.
1433
1434 ver 2.0-pre8:
1435         Additional HCI ioctls and defines.
1436         All strings and buffers are allocated dynamically.
1437         ba2str, str2ba automatically swap bdaddress.
1438         Additional hciconfig commands. Support for ACL and SCO MTU ioctls.
1439         Support for Inventel and COM1 UART based devices.
1440         Minor hcitool fixes.
1441         Improved l2test. New L2CAP test modes.
1442         Minor fixes and cleanup.
1443
1444 ver 2.0-pre7:
1445         Bluetooth libraries and header files is now a separate package.
1446         New build environment uses automake and libtool.
1447         Massive header files cleanup.
1448         Bluetooth utilities is now a separate package.
1449         New build environment uses automake.
1450         Moved all config files and security data to /etc/bluetooth.
1451         Various cleanups.
1452
1453 ver 2.0-pre6:
1454         API cleanup and additions.
1455         Improved hcitool.
1456         l2test minor output fixes.
1457         hciattach opt to display list of supported devices.
1458
1459 ver 2.0-pre4:
1460         HCI filter enhancements.
1461
1462 ver 2.0-pre3:
1463         Cleanup.
1464
1465 ver 2.0-pre2:
1466         Additional HCI library functions.
1467         Improved CSR baud rate initialization.
1468         PCMCIA scripts fixes and enhancements.
1469         Documentation update.
1470
1471 ver 2.0-pre1:
1472         New UART initialization utility.
1473         Hot plugging support for UART based PCMCIA devices.
1474         SCO testing utility.
1475         New authentication utility (bluepin).
1476         Minor fixes and improvements.