Public bug reported: [ Impact ]
When the ebook (EDS) phonebook backend is in use, PBAP phonebook pull requests fail with "Internal Server Error" and no data is returned to the client. This means users cannot download contacts (phonebook entries) over Bluetooth PBAP when obexd is built with/using the ebook backend. For example, copying a vCard from the phonebook fails. Root cause: phonebook_pull() in phonebook-ebook.c does not set *err = 0 on the success path, unlike the tracker and dummy backends. The caller vobject_pull_open() in pbap.c declares 'ret' without initialization and passes &ret to phonebook_pull(), so 'ret' retains an indeterminate stack value. The subsequent 'if (ret < 0)' check then incorrectly triggers and rejects the request. The fix sets *err = 0 on the success path in phonebook-ebook.c, and additionally initializes 'ret' to 0 in vobject_pull_open() as a defensive measure to guard against any backend that omits this assignment. Upstream fix: https://github.com/bluez/bluez/commit/7a0c8ebf91e69c3b2d2d48f8f4b0074fddde1fa4 [ Test Plan ] Pair and connect a phone (or other device with a populated phonebook) to the machine running the affected obexd/ebook backend. Using obexctl, run: 1. obexctl 2. connect 8C:FD:F0:96:52:80 pbap (replace with the target device's Bluetooth address) 3. cd pb 4. cp *.vcf contact.vcf Without the fix: the pull fails with "Internal Server Error" and no vCard is retrieved. With the fix: the phonebook is pulled successfully and contact.vcf is created containing the expected vCard data. [ Where problems could occur ] The change touches the PBAP phonebook pull path in obexd. If the fix were wrong, it could show up as PBAP pull requests returning incorrect or empty data, or errors, when retrieving contacts. The scope is limited to the phonebook pull code path, so any regression would be confined to PBAP phonebook operations and would not affect other Bluetooth profiles or obexd functionality. ** Affects: bluez (Ubuntu) Importance: Undecided Status: New ** Tags: fixed-upstream ** Tags added: fixed-upstream -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2164618 Title: [SRU][Resolute] Fix PBAP PullPhoneBook failure with ebook backend To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/2164618/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
