fix unable to pair with headset having pin '1234' 11/154811/2
authorBiman Paul <biman.paul@samsung.com>
Wed, 11 Oct 2017 09:12:13 +0000 (18:12 +0900)
committerinjun.yang <injun.yang@samsung.com>
Thu, 12 Oct 2017 04:11:40 +0000 (13:11 +0900)
[Problem] unable to pair with headset having pin '1234'
[Cause & Measure] For headset, usually default pin is
'0000' and request is Pairing pin is send as '0000'. But
when pin is not '0000' first attempt fails and remote
device BD address is blacklisted(saved in a file) and for
all future requests blacklisted devices are checked and
pin popup is shown.
But here bt-service is unable to write to blacklist file.
Measure:
1. Allow write mode for blacklist file.
2. Give appropriate smack label.

[Checking Method] Use Mecapp:
1. Set COD such as Mecapp is recognised as Headset.
2. Initiate a pairing request to Mecapp.
3. Give pin 1234 or anything other than '0000' in mecapp.

Change-Id: I8629e782e98cbce88822094d1765fe4bad38994b

packaging/bluetooth-frwk.spec

index 7bc2f59..f164130 100644 (file)
@@ -316,6 +316,10 @@ ln -s ../bluetooth-frwk.service %{buildroot}%{_unitdir}/starter.target.wants/blu
 
 %postun -p /sbin/ldconfig
 
+%post service
+/usr/bin/chsmack -a '_' %{_varlibdir}/bluetooth/auto-pair-blacklist
+/usr/bin/chown 5001:100 %{_varlibdir}/bluetooth/auto-pair-blacklist
+
 %files
 %manifest %{name}.manifest
 %license LICENSE
@@ -361,6 +365,7 @@ popd
 %{_bindir}/bluetooth-frwk-test
 %{_varlibdir}/bluetooth
 %{_prefix}/etc/bluetooth
+%attr(-,owner,users) %{_varlibdir}/bluetooth/auto-pair-blacklist
 
 %files httpproxy
 %manifest %{name}.manifest