Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-99689

Windows BT service scan filter fails against Linux server

    XMLWordPrintable

    Details

    • Platform/s:
      Linux/X11, Windows
    • Story Points:
      8
    • Commits:
      0dd124498e (qt/qtconnectivity/dev) 0dd124498e (qt/tqtc-qtconnectivity/dev) dae4eabec5 (qt/qtconnectivity/6.2) 096ae8fdd4 (qt/qtconnectivity/6.3) dae4eabec5 (qt/tqtc-qtconnectivity/6.2) 096ae8fdd4 (qt/tqtc-qtconnectivity/6.3)
    • Sprint:
      Team One Foundation Sprint 50, Team One Foundation Sprint 51

      Description

      Service scan with QBluetoothServiceDiscoveryAgent first performs a device scan, and once the device scan is completed, a service (SDP) scan is triggered automatically.

      The service scan finds the right services but for some reason the setUuidFilter() fails to recognize the "pingpong" example application service, it filters it out and the example never connects.

      It is uncertain which is at fault - Linux or Windows - because both work against Android server.

      The problem happens in

      QBluetoothServiceDiscoveryAgentPrivate::processFoundService
          ... 
          // this is always false
          bool serviceNameMatched = uuidFilter.contains(info.serviceUuid());
      

      When checking the contents of the uuidFilter and the info.serviceUuid(), they indeed mismatch by some kind of endianess or other manipulation:

      info.serviceUuid:
      "{e8e10f95-1a70-4b27-c9e9-64020102cf9c}"
      uuidFilter:
      QList("{e8e10f95-1a70-4b27-9ccf-02010264e9c9}")
      

      => the bytewise contents seem same but ordering is different.

      Moving the whole check makes the pingpong application work Windows-client => Linux-server.

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            vuokko Juha Vuolle
            Reporter:
            vuokko Juha Vuolle
            PM Owner:
            Vladimir Minenko Vladimir Minenko
            RnD Owner:
            Alex Blasche Alex Blasche
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes