summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2017-11-27 16:26:50 +0100
committerSzymon Janc <szymon.janc@codecoup.pl>2019-03-26 11:48:56 +0100
commitc8ef6d8abe61f2b6c8a2a53677b91ba8759b0065 (patch)
tree6c1b57dd8f65df21d60f906f0f7b5a17d159254b /plugins
parentb9b070ff307a56324063ecfa98da5af76a9aefb6 (diff)
downloadbluez-c8ef6d8abe61f2b6c8a2a53677b91ba8759b0065.tar.gz
autopair: Add more common PIN codes for audio devices
PIN codes "1111", and "1234" are fairly common PIN codes used for audio devices such as speakers and headsets. This replaces similar quirks already present in gnome-bluetooth's PIN database.
Diffstat (limited to 'plugins')
-rw-r--r--plugins/autopair.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/plugins/autopair.c b/plugins/autopair.c
index 6980b0a64..70e19930e 100644
--- a/plugins/autopair.c
+++ b/plugins/autopair.c
@@ -92,10 +92,20 @@ static ssize_t autopair_pincb(struct btd_adapter *adapter,
case 0x06: /* Headphones */
case 0x07: /* Portable Audio */
case 0x0a: /* HiFi Audio Device */
- if (attempt > 1)
- return 0;
- memcpy(pinbuf, "0000", 4);
- return 4;
+ {
+ const char *pincodes[] = {
+ "0000",
+ "1234",
+ "1111"
+ };
+ const char *pincode;
+
+ if (attempt > G_N_ELEMENTS(pincodes))
+ return 0;
+ pincode = pincodes[attempt - 1];
+ memcpy(pinbuf, pincode, strlen(pincode));
+ return strlen(pincode);
+ }
}
break;