Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp895593iob; Fri, 13 May 2022 15:52:15 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyHloyI4lHC1qS8ALxIoIIh9ZTI+s/xat0+sZfB+QDaydxkpYZDBL7nzsNjXFAFi+UGuv24 X-Received: by 2002:a05:600c:1c84:b0:394:5de0:2475 with SMTP id k4-20020a05600c1c8400b003945de02475mr6518644wms.27.1652482335682; Fri, 13 May 2022 15:52:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1652482335; cv=none; d=google.com; s=arc-20160816; b=tUPxdycVwH6vQhO5d5RQ2lV/svm+0keQrW2liSIYD+5EqCNWvCAQASria9aeWbXb4F VVfq9vALRbtImQdXPuuol7xb1+J3lQc5tAjSBDUSEY/KLMTC8rrdCffIniqtYU5H8t7m OgZxUD6Hf5yQHeUaBCQ5K7cl/LrB+ZVFIYv/RTaDNM868Z31FGVtWSHGBeAtJIiZek8a jfDgNyOMpD2xoMAkbvlNZZe7AlwHNElcOdcnFlRLzmVpFJ6G8JJNu47C5+ebD3PGgA8k ob8UtBVpfqaoULpIK+MXqM5JcF5aZ5LLc3ImLqzljAuy52xyX5wxdMDjFIO4zr0inmcg r3Sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:to:subject:message-id:date:from:mime-version :dkim-signature; bh=eonf2ZVHysiL4hTDeDclGsY2nu2rdUrA68BKo3IhBpQ=; b=UD6MSwp+BcdtGwu23MxAHirFN/SuzT/hLy0JC743pp1CcjHfqkWNnxVKmQUINI8piN VcXy9U/wNZoL9AtK5FuacIGd9HUIddquBU2dAMqw991iClRX5GGJEy2rXmQ4J2w3wWFw 2Zl4l8eGnnbYoRWNnBa0YL75Z1Ww/3dyTkrxAWHihC6RO39qz1SMD217W8t/qyywvmqM Zm4hjNn2YrTVurteHQb/H2Kkphb3SPdMWO5aMuQwdSrpITW6QO/jt5l8FL16JvSuhaPQ +QGP/EbbZLjxbJilv4KU9FP0AeFTXsQwfTF5kgXpv48nZGYGBdp0V1GmomTX10hM7pKf Jqxw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=ggw53YiX; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id a14-20020a5d4d4e000000b0020c78292a9csi3225561wru.895.2022.05.13.15.51.30; Fri, 13 May 2022 15:52:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=ggw53YiX; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1384371AbiEMVNO (ORCPT + 99 others); Fri, 13 May 2022 17:13:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33986 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1343722AbiEMVNN (ORCPT ); Fri, 13 May 2022 17:13:13 -0400 Received: from mail-yw1-x112d.google.com (mail-yw1-x112d.google.com [IPv6:2607:f8b0:4864:20::112d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C9748369E6 for ; Fri, 13 May 2022 14:13:12 -0700 (PDT) Received: by mail-yw1-x112d.google.com with SMTP id 00721157ae682-2ef5380669cso102610557b3.9 for ; Fri, 13 May 2022 14:13:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=eonf2ZVHysiL4hTDeDclGsY2nu2rdUrA68BKo3IhBpQ=; b=ggw53YiXQq6rE1V1jw19A9OJqcr6IY84SYEDm/7wzmlKO0ZsemYmDhwq+5pIiZoQ0P WdraDfL0HijkJ7z7I2ABZYQ+4lL9Q/XF8Mn44vleW53QJCtfd/2PGCSpa8MhQIiIgSvb 7WbNLzIEd+Ofb8y2MmrqMkpE0RyURd7RPfe9aUh3hUg0bpD5m9gGKrHjYeIZAv27RT2U RbxGb/yGOX09EDnB3aJSLJ/5RKS//0C51S9VOd4GiMdVRFV4vqluSTeO3fvvsk/6u3X1 1ODYO3/i+24Aq6qju7TXKNCjDaaBMWbu+TlHhPtaw/b8ICbcxzQ6Cf/e7DVeZU5q4rWW R2BQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=eonf2ZVHysiL4hTDeDclGsY2nu2rdUrA68BKo3IhBpQ=; b=vEbA2OO31AieqQHLj112pAjmQ6qCaGyW2ZoH40EjIj44XNcChMkDIiO32xD8oClsfF cJjWZU0Adn4cbWNApAoxMRquEyEChrFPdebcF809KXuOKT4N8M1JcaXPeQwv2jP19Q+l Q3YDogWN6AxCJnsJrqwULAeLx24MUQ/vHe5RITamB4X1vHj38bZDCV/9Fa3ZbgcXRLa/ T0XB2BEjzSOAVVY0WdWqYcUNkMZn334tuUQoOvD9WMQl4VsJ5ZBbDupLeAPdr/EoBptp vBLAo/9AV0YGzWxHe0mnCc7n5yp+0kjvxi3YqSCk8xTafaOjpFCSUXA+S5oHX6HKIL5w WkaA== X-Gm-Message-State: AOAM533fs+I5ZITeG/9t7Sge7IQblUVba/Uh/58TT8Y/tca9lvGar6GI u4apBvVT/f611mCbk3KsbNV5pl+LurxHoeKlyZXomXbjQRE= X-Received: by 2002:a81:1585:0:b0:2f4:e1bb:d752 with SMTP id 127-20020a811585000000b002f4e1bbd752mr7997210ywv.338.1652476391873; Fri, 13 May 2022 14:13:11 -0700 (PDT) MIME-Version: 1.0 From: Mike Date: Fri, 13 May 2022 16:13:01 -0500 Message-ID: Subject: LE OOB pairing To: linux-bluetooth Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org Hi, I'm working on getting a prototype together that is intended to use NFC to pair a Linux tablet with a device that contains a Nordic BLE chip. The tablet contains an NFC module with a non-standard host interface, so at present I'm not able to use neard, but we have some code running to the extent that we can read the NDEF record from the Nordic chip. I've run that through an NDEF parser to get at the EIR data, which is what bluetoothd would be looking for. I've looked through the bluez codebase and it appears everything is set up for BR/EDR pairing for mime-type application/vnd.bluetooth.ep.oob. The Nordic NDEF provides the mimetype application/vnd.bluetooth.le.oob, which is as expected for an LE device. Nothing too far looks terrible in terms of modifications to BlueZ to process this information, but I do note that at present eir.c doesn't look for LE Secure Connections Confirmation Value, LE Secure Connections Random Value, or LE Bluetooth Device Address, all of which are found in the EIR I parsed. Eventually we get to the point of creating the device and a bonding, which both are expecting type BDADDR_BREDR. Before I go too far down this rabbit hole, what I'm wondering is if anyone has thought through this implementation and whether this is as simple as I hope, or if there will be difficult issues ahead? Thanks!