diff options
author | Bastien Nocera <hadess@hadess.net> | 2017-11-27 16:26:50 +0100 |
---|---|---|
committer | Szymon Janc <szymon.janc@codecoup.pl> | 2019-03-26 11:48:56 +0100 |
commit | c8ef6d8abe61f2b6c8a2a53677b91ba8759b0065 (patch) | |
tree | 6c1b57dd8f65df21d60f906f0f7b5a17d159254b /plugins | |
parent | b9b070ff307a56324063ecfa98da5af76a9aefb6 (diff) | |
download | bluez-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.c | 18 |
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; |