forked from epitaph60/android_external_bluetooth_bluez
-
Notifications
You must be signed in to change notification settings - Fork 40
/
ChangeLog
1629 lines (1458 loc) · 60.1 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
ver 4.93:
Fix issue with property type and Health Main channel.
Fix issue with crash when removing devices.
Add support for hid2hci and udev integration.
ver 4.92:
Fix issue with handling of A2DP suspend response.
Fix issue with crashing when acquiring A2DP stream.
Fix issue with missing check for valid SCO before shutdown.
Fix issue with waiting for POLLERR when disconnecting SCO.
Fix issue with disconnect after primary service discovery.
Fix issue with attribute interface registration.
Add support for primary services over BR/EDR.
Add support for flushable packets of A2DP media.
ver 4.91:
Fix issue with LMP version string and hciconfig.
Fix issue with missing discovery signal when scanning.
Fix issue with wrong state and canceling name resolving.
Fix issue with missing check during adapter initialization.
Fix issue with missing protocol not supported error and A2DP.
Fix issue with crash during driver unregistering and A2DP.
Fix issue with crash when receiving AVDTP close command.
Fix issue with remote SEP handling when A2DP codec changes.
Fix issue with SCO hangup handling and state changes.
Fix issue with security level and MCAP instances.
Fix issue with memory leak and HDP data channels.
Add support for discover characteristics by UUID to gatttool.
Add initial support for Out-of-Band association model.
Add initial support for SIM Access Profile.
ver 4.90:
Fix issue with setting of global mode property.
Fix issue with handling of RequestSession responses.
Fix issue with TP_BNEP_CTRL_BV_01_C qualification test.
Fix issue with too short AVDTP request timeout.
Add support for SIM Access Profile manager.
Add support for new UUID utility functions.
Add support for attribute server notifications.
Add support for client characteristic configuration.
Update support for interactive GATT utility.
ver 4.89:
Fix issue with name resolving when discovery is suspended.
Fix issue with parsing flags of advertising report.
Fix issue with SEP handling if interface is disabled.
Fix issue with device object creation on disconnect event.
Fix issue with indicators whenever the driver is initialized.
Fix issue with call indicator when parsing call info reply.
Fix issue with crash and allowed GATT MTU was too large.
Add support for SDP record of Primary GATT services.
Add support for interactive mode for GATT utility.
ver 4.88:
Fix issue with HID channel reference count handling.
Fix issue with daemon exit on badly formatted AT+VTS.
Fix issue with crash while parsing of endpoint properties.
Fix issue with possible crash on AVDTP Suspend request timeout.
Fix issue with stopping inquiry before adapter is initialized.
Fix issue with creating device object when connection fails.
Fix issue with sending HCIDEVUP when adapter is already up.
Fix issue with handling bonding IO channel closing.
Fix agent cancellation in security mode 3 situations.
Update pairing code to support management interface.
ver 4.87:
Fix issue with initialization when adapter is already up.
Fix issue with attribute server MTU and incoming connections.
Fix issue with duplicate characteristics after discovery.
ver 4.86:
Revert wrong fix for SDP PDU size error response.
Fix various memory leaks in A2DP and AVDTP support.
Add Routing property to MediaTransport interface
Add proper tracking mechanism to NREC status.
Add READ_BLOB_REQUEST support to attribute server.
ver 4.85:
Fix issue with event mask setting for older adapters.
Fix issue with device creation and pairing failures.
Add support for telephony support via oFono.
Add support for characteristic security level.
Update support for service registration.
ver 4.84:
Fix issue with wrong parameters and device found signals.
Fix issue with leaking EIR data if RSSI does not change.
Fix issue with adapter initialization state.
Fix issue with closing of SDP server sockets.
ver 4.83:
Fix issue with already connected HFP/HSP endpoints.
Fix missing reply when create device is canceled.
Fix memory leak within the attribute server.
Fix memory leak with unused extended inquiry name.
Fix setting paired state when device->authr is false.
Fix clearing authentication request for renewed keys.
Add support for storing link keys in runtime memory.
Update support for primary service discovery.
ver 4.82:
Fix crash with mmap of files with multiples of page size.
Fix HFP response and hold (AT+BTRH) command response.
Fix device creation error response when powered off.
Fix device removal when connecting/browsing fails.
Add initial attribute permission implementation.
Add AVDTP SRC stream send buffer size verification.
Add support for setting link policy based on features.
ver 4.81:
Fix issue with telephony driver initialization.
Fix issue with adapter services list initialization.
Fix crash after simultaneous authentication requests.
Add support for primary service search on device creation.
ver 4.80:
Fix legacy link key storing for some buggy adapters.
Fix invalid memory access when EIR field length is zero.
Fix adapter initialization to wait for kernel HCI commands.
Fix initialization of adapters which are already up.
Fix possible race condition when initializing adapters.
Fix possible crashes when attempting to connect AVDTP.
Fix not aborting sink stream configuration on disconnect.
Fix not indicating disconnected state when connecting to AVDTP.
Fix not dropping AVDTP session when canceling stream setup.
Fix AVDTP abort not being send when the state is idle.
Fix regression with Low Energy and interleave discovery.
Add a new configuration option to disable Low Energy support.
Add iwmmxt optimization for SBC for ARM PXA series CPUs.
Update support for GATT Primary Service Discovery.
Update MCAP and HDP support.
ver 4.79:
Fix issue with adapter initialization race condition.
Update new Bluetooth Management interface support.
ver 4.78:
Fix various issues with AVDTP timer handling.
Fix various issues with handling of mode changes.
Fix issue with audio disconnect watch in connecting state.
Fix issue with handling call waiting indicators in telephony.
Fix issue with handling UUID parameter and RegisterEndpoint.
Add initial support for Bluetooth Management interface.
Add support for Application property to HealthChannel.
ver 4.77:
Fix issue with device name and accessing already freed memory.
Fix issue with handling CHLD=0 command for handsfree.
Fix issue with manager properties and no adapters.
Fix issue with properties and broken service records.
Fix issue with A2DP playback and sample rate changes.
Update MCAP and HDP support.
ver 4.76:
Fix issue in telephony driver with hanging up held call.
Fix issue in telephony driver with notifications when on hold.
Fix issue with blocking on setconf confirmation callback.
Fix issue with not always signaling new streams as sinks.
Fix issue with errors in case of endpoint request timeout.
Fix issue with HFP/HSP microphone and speaker gain values.
Add source if the device attempt to configure local sink stream.
Add PSM option for GATT/ATT over BR/EDR on gatttool.
Add support for GATT/ATT Attribute Write Request.
Update MCAP and HDP support.
ver 4.75:
Fix use of uninitialized variable on legacy pairing.
Fix mismatch of attribute protocol opcode.
ver 4.74:
Fix regression for Legacy Pairing.
Fix wrong PSM value for attribute protocol.
Fix issue with RSSI field in advertising reports.
Add support for Add BR/EDR and LE interleaved discovery.
Add support for GATT write characteristic value option.
Add support for specifying download address for AR300x.
ver 4.73:
Fix problem with EIR data when setting the name.
Fix reading local name from command complete event.
Fix registering local endpoints with disabled socket interface.
Add support for more HCI operations using ops infrastructure.
Add support for GATT characteristic hierarchy.
Add support for GATT indications.
ver 4.72:
Fix memory leak while connecting BTIO channels.
Fix crash with GStreamer plugin if SBC is not supported.
Fix issue with GATT server stop sending notifications.
Fix issue with GATT and dealing with the minimum MTU size.
Fix issue with file descriptor leak in GATT client.
Add support for UUID 128-bit handling in attribute client.
Add support for encoders/decoders for MTU Exchange.
Add support for the MTU Exchange procedure to the server.
Add support for a per channel MTU to the ATT server.
Add support for Characteristic interface.
Add support for new Media API and framework.
Add initial support for HDP plugin.
ver 4.71:
Fix compilation when SBC support in not enabled.
Fix crash with RequestSession and application disconnects.
Fix memory leak and possible crash when removing audio device.
Fix issue with closing stream of locked sep when reconfiguring.
Fix issue where discovery could interfere with bonding.
Fix issue with Connected status when PS3 BD remote connects.
Fix issue with lifetime of fake input devices.
Add support for compile time option of oui.txt path.
Add support for printing IEEE1284 device ID for CUPS.
Add plugin for setting adapter class via DMI.
Add more features for attribute protocol and profile.
Add initial support for MCAP.
ver 4.70:
Fix incoming call indication handling when in WAITING state.
Fix various SDP related qualification test case issues.
Fix logic to write EIR when SDP records are changed.
Fix UTF-8 validity check for remote names in EIR.
Add support for UUID-128 extended inquiry response.
Add service UUIDs from EIR to the DeviceFound signal.
Add fast connectable feature for Handsfree profile.
Add HCI command and event definitions for AMP support.
Add firmware download support for Qualcommh devices.
Add host level support for Atheros AR300x device.
Add initial support of ATT and GATT for basic rate.
ver 4.69:
Fix issue with calling g_option_context_free() twice.
Fix inconsistencies with initial LE commands and events.
Add support for telephony ClearLastNumber method.
Add support for network server interface.
ver 4.68:
Fix initialization of adapters in RAW mode.
Fix signal strength for HFP in Maemo's telephony support.
Add support for following the radio state via Maemo's MCE.
Add initial set of LE commands and events definitions.
Add mode option for L2CAP sockets to the BtIO API.
ver 4.67:
Fix issue with authentication reply when bonding already completed.
Fix issue with not canceling authentication when bonding fails.
Fix issue with changed combination keys and temporary storage.
Fix issue with sdp_get_supp_feat library function.
Fix issue with missing unblock on device removal.
Fix issue with not waiting for mode change completion.
Add ARMv6 optimized version of analysis filter for SBC encoder.
ver 4.66:
Fix regression with full debug enabling via SIGUSR2.
Fix redundant speaker/microphone gains being sent.
Fix not emitting PropertyChanged for SpeakerGain/MicrophoneGain.
Fix issue with storage usage when a record is not found in memory.
Fix issue with DiscoverServices not retrieving any records.
Fix audio profile disconnection order to match whitepaper.
Fix auto-accept confirmation when local agent has NoInputNoOutput.
Fix remote just-works SSP when MITM protection is required.
Fix performing dedicated bonding without MITM requirement.
Add support for storing debug link keys in runtime memory.
ver 4.65:
Fix issues with general bonding being default setting now.
Fix driver removal upon device removal.
Add new "Blocked" property to device objects.
Add hciconfig support for blacklisting.
Add support for dynamic debug feature.
ver 4.64:
Fix invalid memory access in headset_get_nrec function.
Fix issue with disconnect event on higher protocol layers.
Fix issue with list parsing in sdp_set_supp_features function.
Fix device object reference counting for SDP browse requests.
Add missing memory checks whenever memory is allocated for SDP.
Add support for exporting local services via D-Bus.
Add more L2CAP Enhanced Retransmission test options.
ver 4.63:
Fix avdtp_abort not canceling pending requests.
Fix stale connection when abort gets rejected.
ver 4.62:
Fix accidental symbol breakage with inquiry transmit power.
Fix using invalid data from previous headset connection.
Fix double free on AVDTP Abort response.
Fix possible crash while verifying AVDTP version.
Fix missing inuse flag when AVDTP stream is configured.
Add support for Bluetooth controller types.
ver 4.61:
Fix issues with Read Inquiry Response Transmit Power Level.
Fix possible invalid read when removing a temporary device.
Fix mode restoration when remember_powered is false.
Fix conference call releasing in telephony-maemo.
Fix segmentation fault with authorization during headset disconnects.
Add support for handling unanswered AVDTP request on disconnect.
Add support for handling Inquiry Response Transmit Power Level.
Add support for caching of remote host features.
Add preliminary voice dialing support for HSP.
ver 4.60:
Fix voice mailbox number reading from SIM.
Fix some races with D-Bus mainloop integration.
Add helpers for D-Bus signal watches.
ver 4.59:
Add values for Bluetooth 4.0 specification.
Add SDP functions for HDP support.
Add test scripts for input and audio.
Fix missing close on BtIO create_io function.
Fix sending incorrect AVDTP commands after timeout occurs.
Fix timer removal when device disconnects unexpectedly.
Fix Extended Inquiry Response record for Device ID.
ver 4.58:
Fix crash when adapter agent exists during authentication.
Fix CK-20W quirks for play and pause events.
ver 4.57:
Fix unloading of drivers for uninitialized adapters.
Fix debug message to use requested and not opened SEID.
Fix codec selection for GStreamer plugin.
Fix deleting of SDP records during service updates.
Fix deleting of SDP records when a device is removed.
Fix handling when the SDP record is modified on remote device.
Fix potential buffer overflow by using snprintf instead of sprintf.
Fix const declarations for some storage function parameters.
ver 4.56:
Add missing values from Bluetooth 3.0 specification.
Add proper tracking of device paired status.
Fix tracking of devices without permanently stored link key.
Fix issue with link key removal after connection failures.
Fix legacy pairing information based on remote host features.
Fix off-by-one issue with AVDTP capability parsing.
Fix AVRCP, AVCTP, AVDTP, A2DP and HFP version numbers.
Fix agent canceling before calling agent_destroy.
Fix service record parsing with an empty UUID list.
Fix various SDP related memory leaks.
ver 4.55:
Add support for POSIX capabilities dropping.
Add special quirk for the Nokia CK-20W car kit.
Fix error code handling for AVDTP SetConfiguration response.
Fix updating out of range list when RSSI hasn't changed.
Fix various memory leaks and unnecessary error checks.
ver 4.54:
Add introspection interface to output of introspection calls.
Fix stream handling when media transport disconnects prematurely.
Fix command timeout handling when there's no stream.
Fix headset_suspend_stream behavior for invalid states
Fix issue with AVDTP ABORTING state transition.
Fix issue with AVDTP suspend while closing.
ver 4.53:
Fix issue with telephony connection state notifications.
Fix AVDTP stream leak for invalid media transport config.
Fix audio connection authorization handling with timeouts.
Fix race condition in authorizing audio connections.
Fix device authorized setting for AVRCP-only connections.
Fix duplicate attempts from device to connect signal channel.
ver 4.52:
Add AVCTP support to test utility.
Fix AVDTP Abort when transport closes before response.
Fix authorization when the audio profiles are slow to connect.
Fix potential AVDTP reference leaks.
ver 4.51:
Add utility for basic AVDTP testing.
Add support for configuring L2CAP FCS option.
Fix discovery mode for CUPS 1.4.x and later.
Fix global state tracking of audio service.
Fix last issues with the new build system.
ver 4.50:
Fix issue with missing manual pages in distribution.
Fix issue with the configuration and state directories.
Fix issue with creating include directory.
Fix dependencies of include file generation.
ver 4.49:
Add simple test program for basic GAP testing.
Add support for confirmation requests to agent example.
Add support for full non-recursive build.
Add five millisecond delay for Simple Pairing auto-accept.
Fix Class of Device setting when InitiallyPowered=false.
ver 4.48:
Add library function for comparing UUID values.
Add support for creating all plugins as builtins.
Add support for async handling of service class changes.
Add support for source interface to audio IPC.
Fix device name settings when device is off or down.
Fix issue with enabled SCO server when not necessary.
Fix missing D-Bus access policy for CUPS backend.
Fix discovery results of CUPS backend.
Fix initialization handling of Maemo telephony.
ver 4.47:
Add support for RFKILL unblock handling.
Add support for serial proxy configurations.
Add support for caching service class updates.
Fix issues with updating SDP service records.
Fix usage of limited discoverable mode.
Remove deprecated methods and signals for AudioSource.
ver 4.46:
Add support for A2DP sink role.
Fix clearing svc_cache before the adapter is up.
Fix various pointer after free usages.
Fix various memory leaks.
ver 4.45:
Fix UDEV_DATADIR fallback if pkg-config fails.
Fix adapter cleanup and setup prototypes.
Fix double-free with out-of-range devices.
Fix inband ring setting to be per-headset.
Fix handling of Maemo CSD startup.
ver 4.44:
Add some missing manual pages.
Fix missing number prefix when installing udev rules.
Fix program prefix used in Bluetooth udev rules.
Fix three-way calling indicator order.
Fix downgrade/upgrade of callheld indicator.
Fix +CIEV sending when indicator value changes.
Fix signal handling for Maemo telephony driver.
Fix parsing issues with messages from Maemo CSD.
Fix issue with duplicate active calls.
ver 4.43:
Add support for udev based on-demand startup.
Fix verbose error reporting of CUPS backend.
Fix various string length issues.
Fix issues with Maemo telephony driver.
Fix another device setup and temporary flag issue.
Fix and update example agent implementation.
ver 4.42:
Add TI WL1271 to Texas Instruments chip list.
Add special udev mode to bluetoothd.
Fix regression when there is no agent registered.
Fix error return when bonding socket hang up.
Fix SCO server socket for HFP handsfree role.
Fix shutdown on SCO socket before closing.
Fix shutdown on A2DP audio stream channel before closing.
Fix issue with asserting on AVDTP reference count bugs.
Fix authorization denied issue with certain headsets.
Fix AVRCP UNITINFO and SUBUNIT INFO responses.
Fix discovery cancel issues in case SDP discovery fails.
ver 4.41:
Fix pairing even if the ACL gets dropped before successful SDP.
Fix regression which caused device to be removed after pairing.
Fix HSP record fetching when remote device doesn't support it.
Fix SDP discovery canceling when clearing hs->pending.
Fix headset never connecting on the first attempt.
Fix headset state tracking if bt_search_service() fails.
Fix maximum headset connection count check.
Fix AVDTP Discover timeout handling.
Fix also UI_SET_KEYBIT for the new pause and play key codes.
ver 4.40:
Add telephony driver for oFono telephony stack.
Add support for Dell specific HID proxy switching.
Add support for running hid2hci from udev.
Add mapping for AVRCP Play and Pause to dedicated key codes.
Fix AVRCP keycodes to better match existing X keymap support.
Fix various quoting issues within telephony support.
Fix memory allocation issue when generating PDUs for SDP.
Fix race condition on device removal.
Fix non-cancelable issue with CreateDevice method.
Fix non-working CancelDiscovery method call.
ver 4.39:
Add workaround for dealing with unknown inquiry complete.
Fix discovering when using software scheduler.
Fix wrong NoInputNoOutput IO capability string.
Fix race condition with agent during pairing.
Fix agent cancellation for security mode 3 acceptor failure.
Fix temporary flag removal when device creation fails.
Fix hciattach to use ppoll instead of poll.
Fix service class update when adapter is down.
Fix service classes race condition during startup.
Fix release of audio client before freeing the device.
ver 4.38:
Add support for builtin plugins.
Add framework for adapter operations.
Add constants for Enhanced Retransmission modes.
Fix HCI socket leak in device_remove_bonding.
Fix various format string issues.
Fix crashes with various free functions.
Fix issues with Headset and A2DP drivers to load again.
Fix sending AVRCP button released passthrough messages
Fix bug which prevent input devices to work after restart.
Fix issue with interpretation of UUID-128 as channel.
ver 4.37:
Add version value for Bluetooth 3.0 devices.
Add additional L2CAP extended feature mask bits.
Add support for loading plugins in priority order.
Add support for more detailed usage of disconnect watches.
Add support for AVRCP volume control.
Add saturated clipping of SBC decoder output to 16-bit.
Fix potentially infinite recursion of adapter_up.
Fix SCO handling in the case of an incoming call.
Fix input service to use confirm callback.
Fix cleanup of temporary device entries from storage.
ver 4.36:
Add proper tracking of AVCTP connect attempts.
Add support to channel pattern in Serial interface.
Fix A2DP sink crash if removing device while connecting.
Fix error handling if HFP indicators aren't initialized.
Fix segfault while handling an incoming SCO connection.
Fix Serial.Disconnect to abort connection attempt.
ver 4.35:
Add support for Handsfree profile headset role.
Add additional checks for open SEIDs from clients.
Fix device removal while audio IPC client is connected.
Fix device removal when an authorization request is pending.
Fix incoming AVDTP connect while authorization in progress.
Fix disconnection timers for audio support.
Fix various potential NULL pointer deferences.
Fix callheld indicator value for multiple calls.
Fix voice number type usage.
Fix GDBus watch handling.
ver 4.34:
Add support for version checks of plugins.
Add support for class property on adapter interface.
Add support for second SDP attempt after connection reset.
Add support for more detailed audio states.
Add support for HFP+A2DP auto connection feature.
Add support for new and improved audio IPC.
Add program for testing audio IPC interface.
Fix various AVDTP qualification related issues.
Fix broken SDP AttributeIdList parsing.
Fix invalid memory access of SDP URL handling.
Fix local class of device race conditions.
Fix issue with periodic inquiry on startup.
Fix missing temporary devices in some situations.
Fix SBC alignment issue for encoding with four subbands.
ver 4.33:
Add Paired property to the DeviceFound signals.
Add support for Headset profile 1.2 version.
Fix broken network configuration when IPv6 is disabled.
Fix network regression that caused disconnection.
Fix SDP truncation of strings with NULL values.
Fix service discovery handling of CUPS helper.
ver 4.32:
Fix broken SDP record handling.
Fix SDP data buffer parsing.
Fix more SDP memory leaks.
Fix read scan enable calls.
Fix A2DP stream handling.
ver 4.31:
Add support for new BtIO helper library.
Fix AVDTP session close issue.
Fix SDP memory leaks.
Fix various uninitialized memory issues.
Fix duplicate signal emissions.
Fix property changes request handling.
Fix class of device storage handling.
ver 4.30:
Add CID field to L2CAP socket address structure.
Fix reset of authentication requirements after bonding.
Fix storing of link keys when using dedicated bonding.
Fix storing of pre-Bluetooth 2.1 link keys.
Fix resetting trust settings on every reboot.
Fix handling of local name changes.
Fix memory leaks in hciconfig and hcitool
ver 4.29:
Use AVRCP version 1.0 for now.
Decrease AVDTP idle timeout to one second.
Delay AVRCP connection when remote device connects A2DP.
Add workaround for AVDTP stream setup with broken headsets.
Add missing three-way calling feature bit for Handsfree.
Fix handsfree callheld indicator updating.
Fix parsing of all AT commands within the buffer.
Fix authentication replies when disconnected.
Fix handling of debug combination keys.
Fix handling of changed combination keys.
Fix handling of link keys when using no bonding.
Fix handling of invalid/unknown authentication requirements.
Fix closing of L2CAP raw socket used for dedicated bonding.
ver 4.28:
Add AVDTP signal fragmentation support.
Add more SBC performance optimizations.
Add more SBC audio quality improvements.
Use native byte order for audio plugins.
Set the adapter alias only after checking the EIR data.
Fix auto-disconnect issue with explicit A2DP connections.
Fix invalid memory access of ALSA plugin.
Fix compilation with -Wsign-compare.
ver 4.27:
Add more SBC optimization (MMX and ARM NEON).
Add BT_SECURITY and BT_DEFER_SETUP definitions.
Add support for deferred connection setup.
Add support for fragmentation of data packets.
Add option to trigger dedicated bonding.
Follow MITM requirements from remote device.
Require MITM for dedicated bonding if capabilities allow it.
Fix IO capabilities for non-pairing and pairing cases.
Fix no-bonding connections in non-bondable mode.
Fix new pairing detection with SSP.
Fix bonding with pre-2.1 devices and newer kernels.
Fix LIAC setting while toggling Pairable property.
Fix device creation for incoming security mode 3 connects.
Fix crash within A2DP with bogus pointer.
Fix issue with sdp_copy_record() function.
Fix crash with extract_des() if sdp_uuid_extract() fails.
ver 4.26:
Use of constant shift in SBC quantization code.
Add possibility to analyze 4 blocks at once in encoder.
Fix correct handling of frame sizes in the encoder.
Fix for big endian problems in SBC codec.
Fix audio client socket to always be non-blocking.
Update telephony support for Maemo.
ver 4.25:
Fix receiving data over the audio control socket.
Fix subbands selection for joint-stereo in SBC encoder.
Add new SBC analysis filter function.
ver 4.24:
Fix signal emissions when removing adapters.
Fix missing adapter signals on exit.
Add support for bringing adapters down on exit.
Add support for RememberPowered option.
Add support for verbose compiler warnings.
Add more options to SBC encoder.
ver 4.23:
Update audio IPC for better codec handling.
Fix bitstream optimization for SBC encoder.
Fix length header values of IPC messages.
Fix multiple coding style violations.
Fix FindDevice to handle temporary devices.
Add configuration option for DeviceID.
Add support for InitiallyPowered option.
Add missing signals for manager properties.
Add telephony support for Maemo.
ver 4.22:
Add deny statements to D-Bus access policy.
Add support for LegacyPairing property.
Add support for global properties.
Add more commands to telephony testing script.
Add sender checks for serial and network interfaces.
Remove deprecated methods and signals from input interface.
Remove deprecated methods and signals from network interface.
Remove OffMode option and always use device down.
ver 4.21:
Fix adapter initialization logic.
Fix adapter setup and start security manager early.
Fix usage issue with first_init variable.
ver 4.20:
Cleanup session handling.
Cleanup mode setting handling.
Fix issue with concurrent audio clients.
Fix issue with HFP/HSP suspending.
Fix AT result code syntax handling.
Add Handsfree support for AT+NREC.
Add PairableTimeout adapter property.
ver 4.19:
Fix installation of manual pages for old daemons.
Fix D-Bus signal emmissions for CreateDevice.
Fix issues with UUID probing.
Fix +BSRF syntax issue.
Add Pairable adapter property.
Add sdp_copy_record() library function.
ver 4.18:
Fix release before close issue with RFCOMM TTYs.
Fix Connected property on input interface.
Fix DeviceFound signals during initial name resolving.
Fix service discovery handling.
Fix duplicate UUID detection.
Fix SBC gain mismatch and decoding handling.
Add more options to SBC encoder and decoder.
Add special any adapter object for service interface.
Add variable prefix to adapter and device object paths.
ver 4.17:
Fix SBC encoder not writing last frame.
Fix missing timer for A2DP suspend.
Add more supported devices to hid2hci utility.
Add additional functionality to Handsfree support.
ver 4.16:
Fix wrong parameter usage of watch callbacks.
Fix parameters for callback upon path removal.
Fix unloading of adapter drivers.
ver 4.15:
Fix various A2DP state machine issues.
Fix some issues with the Handsfree error reporting.
Fix format string warnings with recent GCC versions.
Remove dependency on GModule.
ver 4.14:
Fix types of property arrays.
Fix potential crash with input devices.
Fix PS3 BD remote input event generation.
Allow dynamic adapter driver registration.
Update udev rules.
ver 4.13:
Fix service discovery and UUID handling.
Fix bonding issues with Simple Pairing.
Fix file descriptor misuse of SCO connections.
Fix various memory leaks in the device handling.
Fix AVCTP disconnect handling.
Fix GStreamer modes for MP3 encoding.
Add operator selection to Handsfree support.
ver 4.12:
Fix crash with missing icon value.
Fix error checks of HAL plugin.
Fix SCO server socket cleanup on exit.
Fix memory leaks from DBusPendingCall.
Fix handling of pending authorization requests.
Fix missing protocol UUIDs in record pattern.
ver 4.11:
Change SCO server socket into a generic one.
Add test script for dummy telephony plugin.
Fix uninitialized reply of multiple GetProperties methods.
ver 4.10:
Fix memory leaks with HAL messages.
Add more advanced handsfree features.
Add properties to audio, input and network interfaces.
Stop device discovery timer on device removal.
ver 4.9:
Fix signals for Powered and Discoverable properties.
Fix handling of Alias and Icon properties.
Fix duplicate entries for service UUIDs.
ver 4.8:
Fix retrieving of formfactor value.
Fix retrieving of local and remote extended features.
Fix potential NULL pointer dereference during pairing.
Fix crash with browsing due to a remotely initated pairing.
ver 4.7:
Fix pairing and service discovery logic.
Fix crashes during suspend and resume.
Fix race condition within devdown mode.
Add RequestSession and ReleaseSession methods.
Add Powered and Discoverable properties.
Add Devices property and deprecate ListDevices.
Add workaround for a broken carkit from Nokia.
ver 4.6:
Fix Device ID record handling.
Fix service browsing and storage.
Fix authentication and encryption for input devices.
Fix adapter name initialization.
ver 4.5:
Fix initialization issue with new adapters.
Send HID authentication request without blocking.
Hide the verbose SDP debug behind SDP_DEBUG.
Add extra UUIDs for service discovery.
Add SCO server socket listener.
Add authorization support to service plugin.
ver 4.4:
Add temporary fix for the CUPS compile issue.
Add service-api.txt to distribution.
Mention the variable prefix of an object path
ver 4.3:
Add dummy driver for telephony support.
Add support for discovery sessions.
Add service plugin for external services.
Various cleanups.
ver 4.2:
Avoid memory copies in A2DP write routine.
Fix broken logic with Simple Pairing check and old kernels.
Allow non-bondable and outgoing SDP without agent.
Only remove the bonding for non-temporary devices.
Cleanup various unnecessary includes.
Make more unexported functions static.
Add basic infrastructure for gtk-doc support.
ver 4.1:
Add 30 seconds timeout to BNEP connection setup phase.
Avoid memory copies in A2DP write routine for ALSA.
Make sure to include compat/sdp.h in the distribution.
ver 4.0:
Initial public release.
ver 3.36:
Add init routines for TI BRF chips.
Add extra attributes to the serial port record.
Add example record for headset audio gateway record.
Use Handsfree version 0x0105 for the gateway role.
Fix SDP record registration with specific record handles.
Fix BCSP sent/receive handling.
Fix various includes for cross-compilation.
Allow link mode settings for outgoing connections.
Allow bonding during periodic inquiry.
ver 3.35:
Add two additional company identifiers.
Add UUID-128 support for service discovery.
Fix usage of friendly names for service discovery.
Fix authorization when experiemental is disabled.
Fix uninitialized variable in passkey request handling.
Enable output of timestamps for l2test and rctest.
ver 3.34:
Replace various SDP functions with safe versions.
Add additional length validation for incoming SDP packets.
Use safe function versions for SDP client handling.
Fix issue with RemoveDevice during discovery procedure.
Fix collect for non-persistent service records.
ver 3.33:
Add functions for reading and writing the link policy settings.
Add definition for authentication requirements.
Add support for handling Simple Pairing.
Add Simple Pairing support to Agent interface.
Add ReleaseMode method to Adapter interface.
Add DiscoverServices method to Device interface.
Remove obsolete code and cleanup the repository.
Move over to use the libgdbus API.
Enable PIE by default if supported.
ver 3.32:
Add OCF constants for synchronous flow control enabling.
Add support for switching HID proxy devices from Dell.
Add more Bluetooth client/server helper functions.
Add support for input service idle timeout option.
Fix BNEP reconnection handling.
Fix return value for snd_pcm_hw_params() calls.
Use upper-case addresses for object paths.
Remove HAL support helpers.
Remove inotify support.
Remove service daemon activation handling.
Remove uneeded D-Bus API extension.
ver 3.31:
Create device object for all pairing cases.
Convert authorization to internal function calls.
Add initial support for Headset Audio Gateway role.
Add generic Bluetooth helper functions for GLib.
Fix endiannes handling of connection handles.
Don't optimize when debug is enabled.
ver 3.30:
Convert audio service into a plugin.
Convert input service into a plugin.
Convert serial service into a plugin.
Convert network service into a plugin.
Emit old device signals when a property is changed.
Fix missing DiscoverDevices and CancelDiscovery methods.
Add another company identifier.
Add basic support for Bluetooth sessions.
Add avinfo utility for AVDTP/A2DP classification.
Remove build option for deprecated sdpd binary.
ver 3.29:
Introduce new D-Bus based API.
Add more SBC optimizations.
Add support for PS3 remote devices.
Fix alignment trap in SDP server.
Fix memory leak in sdp_get_uuidseq_attr function.
ver 3.28:
Add support for MCAP UUIDs.
Add support for role switch for audio service.
Add disconnect timer for audio service.
Add disconnect detection to ALSA plugin.
Add more SBC optimizations.
Fix alignment issue of SDP server.
Remove support for SDP parsing via expat.
ver 3.27:
Update uinput.h with extra key definitions.
Add support for input connect/disconnect callbacks.
Add ifdefs around some baud rate definitions.
Add another company identifier.
Add proper HFP service level connection handling.
Add basic headset automatic disconnect support.
Add support for new SBC API.
Fix SBC decoder noise at high bitpools.
Use 32-bit multipliers for further SBC optimization.
Check for RFCOMM connection state in SCO connect callback.
Make use of parameters selected in ALSA plugin.
ver 3.26:
Fix compilation issues with UCHAR_MAX, USHRT_MAX and UINT_MAX.
Improve handling of different audio transports.
Enable services by default and keep old daemons disabled.
ver 3.25:
Add limited support for Handsfree profile.
Add limited support for MPEG12/MP3 codec.
Add basic support for UNITINFO and SUBUNITINFO.
Add more SBC optimizations.
Fix external service (un)registration.
Allow GetInfo and GetAddress to fail.
ver 3.24:
Add definitions for MDP.
Add TCP connection support for serial proxy.
Add fix for Logitech HID proxy switching.
Add missing macros, MIN, MAX, ABS and CLAMP.
Add more SBC encoder optimizations.
Add initial mechanism to handle headset commands.
Fix connecting to handsfree profile headsets.
Use proper function for checking signal name.
ver 3.23:
Fix remote name request handling bug.
Fix key search function to honor the mmap area size.
Fix Avahi integration of network service.
Add new plugin communication for audio service.
Enable basic AVRCP support by default.
More optimizations to the SBC library.
Create common error definitions.
ver 3.22:
Add missing include file from audio service.
Add SBC conformance test utility.
Add basic uinput support for AVRCP.
Fix L2CAP socket leak in audio service.
Fix buffer usage in GStreamer plugin.
Fix remote name request event handling.
ver 3.21:
Add constant for Bluetooth socket options level.
Add initial AVRCP support.
Add A2DP sink support to GStreamer plugin.
Fix interoperability with A2DP suspend.
Fix sign error in 8-subband encoder.
Fix handling of service classes length size.
Store Extended Inquiry Response data information.
Publish device id information through EIR.
Support higher baud rates for Ericcson based chips.
ver 3.20:
Fix GStreamer plugin file type detection.
Fix potential infinite loop in inotify support.
Fix D-Bus signatures for dict handling.
Fix issues with service activation.
Fix SDP failure handling of audio service.
Fix various memory leaks in input service.
Add secure device creation method to input service.
Add service information methods to serial service.
Add config file support to network service.
Add scripting capability to network service.
Add special on-mode handling.
Add optimization for SBC encoder.
Add tweaks for D-Bus 1.1.x libraries.
Add support for inquiry transmit power level.
ver 3.19:
Limit range of bitpool announced while in ACP side.
Use poll instead of usleep to wait for worker thread.
Use default event mask from the specification.
Add L2CAP mode constants.
Add HID proxy support for Logitech diNovo Edge dongle.
Add refresh option to re-request device names.
Show correct connection link type.
ver 3.18:
Don't allocate memory for the Bluetooth base UUID.
Implement proper locking for headsets.
Fix various A2DP SEP locking issues.
Fix and cleanup audio stream handling.
Fix stream starting if suspend request is pending.
Fix A2DP and AVDTP endianess problems.
Add network timeout and retransmission support.
Add more detailed decoding of EIR elements.
ver 3.17:
Fix supported commands bit calculation.
Fix crashes in audio and network services.