Received: by 2002:a05:6358:a55:b0:ec:fcf4:3ecf with SMTP id 21csp1802276rwb; Thu, 19 Jan 2023 15:58:45 -0800 (PST) X-Google-Smtp-Source: AMrXdXuO9vUsODZgGda/5V2w8s7dckwm399WT2dFQtiJNSd3h+ZLdl2ekkLdFOBw+bYNHAClXmQP X-Received: by 2002:a17:90a:b38c:b0:223:4308:1ab4 with SMTP id e12-20020a17090ab38c00b0022343081ab4mr13188625pjr.46.1674172724623; Thu, 19 Jan 2023 15:58:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674172724; cv=none; d=google.com; s=arc-20160816; b=xOku2vhfOR7eGGaeKrm8cwFgsTI3C9hulOqgnCYHnY3bbI6vVcbJ9X0exov6LelJGS cjdO7RaLJ5spee40iw1qZ9cb/C250eibjrPddL3v2N0DPBO1/SzIzPHEOtSDXSEp+yEH 649D+br+222lQR8aFyyM2t4NhNMxhPbkhogH7rCiVZqwbYT+r8zHPa6UPqig5dbThSql bJtxirRWFG67qqF7pleHnARY//K39tTycrADhzL+MCgmLormqZHb7OujtnOvzPNh1J1y mKxHat2IU/Nq0S6xLa2UeGCmIJ1gLP6QODee2uuOVQDEt69qQc7gkzCua3T72CU/vcij w/FA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=JhW84Hd08Yh0djZ/IA1tMAN3nBncRabhVhFuk8nl7rU=; b=kglSSnur/VWh7+zSVKShHD1e7Ee2ei2prfUubBeUoEGz3KCFGHC9a+MnwNNnYWRick sC2tDWPYwI8RFk9UPjvkDS6O2kbTacsCelZCmIktzcVOx6rwfIIZToxELUeVaLydxshd hMxj0Iw3uV329FmfqX2XUIPfAx6L+VYm8F4NXRAVOxwaX3O2npACKv1B/cSTLTXSBlmM uq/UvZvloOnmMuoPqqRDYqIXBJo7h0lxSuBp6L0VRXp1eqdTw30Cc/wZoL8pCAfpjNxB Dx3Gq1XPLpN9DIqCTN/2iHT1aXlWWn6CswE/6qU5+260p9skc/Ww0dhaAtXWec/ukAyl 9W2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Qt7YHupD; 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 z3-20020a631903000000b0049bef470e05si39577233pgl.528.2023.01.19.15.58.20; Thu, 19 Jan 2023 15:58:44 -0800 (PST) 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=Qt7YHupD; 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 S230340AbjASX6O (ORCPT + 99 others); Thu, 19 Jan 2023 18:58:14 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53714 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230361AbjASX6K (ORCPT ); Thu, 19 Jan 2023 18:58:10 -0500 Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CB14A9F3B5 for ; Thu, 19 Jan 2023 15:58:04 -0800 (PST) Received: by mail-pl1-x630.google.com with SMTP id d9so3850947pll.9 for ; Thu, 19 Jan 2023 15:58:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=JhW84Hd08Yh0djZ/IA1tMAN3nBncRabhVhFuk8nl7rU=; b=Qt7YHupDuK0YOP7o4FTXRXY8HSZFKkyz0q20z/bcTRjUjYBM5ApFWJM7Zto90hsd++ NBbUMl7DteLJuVMcCsPJZylUObJxa1RUJ4uTzpTdnisW6SIhHMI3ONhHYWyMgHCgqsNl HWCrc4CPam8xr+3iA4Wt/U7rYO8P6Gz4IBHn7pKewTuEnv8NfGkqqo3+Kkvwyl/misTi Ap5QPs8xjTL6XNBzUYIU3EohPdakyd9UOcQ/IP/KpOsu/cuihLS6uriJHascnrO4tAoB TL2cl4Gw0b3oOxurFMsrg2KeeD6nv/Tmd6e5l4LKGn8TWh1yTLwAI4JyCYfK5skP2jQq qeWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=JhW84Hd08Yh0djZ/IA1tMAN3nBncRabhVhFuk8nl7rU=; b=jX4bNQA+rEbwPrGgvedxbIpHgcK6dLKM8Dt+ddaINCp68nNC5XjflMVkllFx8oW+5x 58wHXCldhasl9axEh0BF9M0G2cDzJeku94nmkgoindN+ybQqzkp96+/No7owVcJi40PJ PKJX+ljHRxNDRCLJSUOWl7ix9LmBOZ2w2f0HT+cOcYwOp+CUaPCushTkauwuTznF468r Vaq28IR6CPhAk3vlrugqpmqezekZHIDcAkb5MFXbqdvOoINf0H1VW9NCLvqTjZ0gkJty tR6HHfD98Fiy24gL7fWnFCSSrk83uxhMV80GPzB+afHDAxtO/3QgFiTDrG1D1Fi4zWvg D+dA== X-Gm-Message-State: AFqh2koCCNrmmn7shfqr9QW/9z0O+8ydAVyNYMeXnSfdQ1ud4++PZsVy YXtp3dFXhNQn7SUuBwJZdNzUd4PkKFG2sg== X-Received: by 2002:a17:902:cf08:b0:192:c125:ac2f with SMTP id i8-20020a170902cf0800b00192c125ac2fmr14632415plg.8.1674172683578; Thu, 19 Jan 2023 15:58:03 -0800 (PST) Received: from fedora.. (97-113-173-242.tukw.qwest.net. [97.113.173.242]) by smtp.gmail.com with ESMTPSA id n10-20020a170902d2ca00b0019460c34839sm14826373plc.185.2023.01.19.15.58.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Jan 2023 15:58:03 -0800 (PST) From: Brian Gix To: linux-bluetooth@vger.kernel.org Cc: Brian Gix Subject: [PATCH BlueZ 00/12] Mesh v1.1 additions Date: Thu, 19 Jan 2023 15:57:43 -0800 Message-Id: <20230119235755.46002-1-brian.gix@gmail.com> X-Mailer: git-send-email 2.39.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 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 This patch-set includes implementations for Client/Server Remote Provisioning, and Client/Server Mesh Private Beacons Brian Gix (12): doc/mesh: Add Remote Provisioning DBus APIs mesh: Add Remote Provisioning tools/mesh: Optimize for multiple RPR servers and NPPI mesh: Rename parameter list per crypto usage unit/mesh: Add unit testing of Mesh Private Beaconing mesh: Add storage of Mesh Private Beacon settings mesh: Add Mesh Private Beacon server mesh: Add Tx/Rx support of Mesh Private Beacons mesh: Add internal Mesh Private Beacon model mesh: Plumb in Mesh Private Beacon model tools/mesh: Add support for Mesh Private Beacons mesh: Switch beaconing net key Makefile.mesh | 2 + doc/mesh-api.txt | 140 ++++++- mesh/cfgmod-server.c | 2 +- mesh/crypto.c | 4 +- mesh/crypto.h | 2 +- mesh/keyring.c | 29 +- mesh/keyring.h | 1 + mesh/manager.c | 533 ++++++++++++++++++----- mesh/mesh-config-json.c | 428 +++++++++++++------ mesh/mesh-config.h | 12 +- mesh/model.c | 37 +- mesh/net-keys.c | 502 +++++++++++++++++----- mesh/net-keys.h | 11 +- mesh/net.c | 188 ++++++--- mesh/net.h | 6 +- mesh/node.c | 326 ++++++++++++--- mesh/node.h | 5 + mesh/pb-adv.c | 4 +- mesh/pb-adv.h | 2 +- mesh/prov-acceptor.c | 87 ++-- mesh/prov-initiator.c | 266 +++++++++++- mesh/prov.h | 4 +- mesh/provision.h | 23 +- mesh/prv-beacon.h | 36 ++ mesh/prvbeac-server.c | 128 ++++++ mesh/remprv-server.c | 908 ++++++++++++++++++++++++++++++++++++++++ mesh/remprv.h | 78 ++++ tools/mesh-cfgclient.c | 488 +++++++++++++++++---- tools/mesh/cfgcli.c | 99 ++++- tools/mesh/mesh-db.c | 36 +- tools/mesh/mesh-db.h | 1 + tools/mesh/remote.c | 122 ++++++ tools/mesh/remote.h | 9 + tools/mesh/util.c | 3 + unit/test-mesh-crypto.c | 87 +++- 35 files changed, 3943 insertions(+), 666 deletions(-) create mode 100644 mesh/prv-beacon.h create mode 100644 mesh/prvbeac-server.c create mode 100644 mesh/remprv-server.c create mode 100644 mesh/remprv.h -- 2.39.0