From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id sOuQHt7EvWGVBQEAgWs5BA (envelope-from ) for ; Sat, 18 Dec 2021 12:24:14 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id 4BI5Gt7EvWGkMQAAbx9fmQ (envelope-from ) for ; Sat, 18 Dec 2021 11:24:14 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id D105E4D15 for ; Sat, 18 Dec 2021 12:24:13 +0100 (CET) Received: from localhost ([::1]:40082 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1myXoy-0000Jv-W4 for larch@yhetil.org; Sat, 18 Dec 2021 06:24:13 -0500 Received: from eggs.gnu.org ([209.51.188.92]:34930) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1myXop-0000J7-44 for guix-patches@gnu.org; Sat, 18 Dec 2021 06:24:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:58057) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1myXoo-000245-Rv for guix-patches@gnu.org; Sat, 18 Dec 2021 06:24:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1myXoo-0008DL-Ft for guix-patches@gnu.org; Sat, 18 Dec 2021 06:24:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#52575] [PATCH v3] services: bluetooth: Add missing config parameters Resent-From: Liliana Marie Prikler Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 18 Dec 2021 11:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52575 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Demis Balbach , 52575@debbugs.gnu.org Received: via spool by 52575-submit@debbugs.gnu.org id=B52575.163982659631523 (code B ref 52575); Sat, 18 Dec 2021 11:24:02 +0000 Received: (at 52575) by debbugs.gnu.org; 18 Dec 2021 11:23:16 +0000 Received: from localhost ([127.0.0.1]:41370 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1myXo4-0008CN-Aq for submit@debbugs.gnu.org; Sat, 18 Dec 2021 06:23:16 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:50732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1myXo3-0008CA-95 for 52575@debbugs.gnu.org; Sat, 18 Dec 2021 06:23:15 -0500 Received: by mail-wm1-f66.google.com with SMTP id b73so3333382wmd.0 for <52575@debbugs.gnu.org>; Sat, 18 Dec 2021 03:23:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:subject:from:to:date:in-reply-to:references:user-agent :mime-version:content-transfer-encoding; bh=ijIPxF+8S93L/+mCAiw3Nx0UXArFqEsGRKxVYScIlAs=; b=GMJwWaxjJcA8/VDQo7HBFHM5Ik8Eb5xXDoAZEZiEkh7+1+TkTOjha+ZWWTlb1YpwBV 7U4VZ+vLOAwbZ/n1oOEpg16ILbc/bEq+BbzXS5TzSG9eStm6QTlPC6X3ahgGkKX2345t RXEBrKkEvPvPph6RM2lFU1CNGxPJvNNWjhFUIMDNXF0hUbIy/N8oAp1A8o4mRVOZnyQy IDBSOCWoyrgZLFHYVxsj3F6VBW59OZbN14pbY/EmFWWICdeVWvvo1dKS5pK00NZa+3ss EUf/Gn+QMmu2gcSe9lqSMOCT3560+9EUScVDnuXpUQF/0lfFP2O1VwChlK+Z6fRxpt1/ SmbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:subject:from:to:date:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=ijIPxF+8S93L/+mCAiw3Nx0UXArFqEsGRKxVYScIlAs=; b=VN0iKhkfb2QGXQnuUBJ4BWn7bB5sbkc9vmXZJcCWsm9XikjjWiMhu4I8LU5EDRW3IX owjT8sxIR7wP0gS4ga5NF+sqIgRylSy5o/Ff2ZcexNCVVLSvZdvIZMqRUIZFia44ZX26 h4puacjgcgjS2qN2tWTUITB+HRt4Cl07d/UcGF3srQzVE5340UliMwAVJZHZe5n+5Us4 OOpMXuKUvQvT2vFE8/EMUi1OwhxRux6w2FusVIr1hk2QbBFyoxcn6fk7L9y53eHiHWJD 7NmKxPGitcl8Bu3bF5H8mQvYi/R8jFLf7RnLPKmzYSlsapsBsxj2qMdwtVNwLoxQlsW1 hSpw== X-Gm-Message-State: AOAM530XpzxiEeckqopEa8Ak/2fPx+48opUoK81uNetY6xrFI+FfsHjZ iKn+MU6zBeAbXe1bz9e9e9s= X-Google-Smtp-Source: ABdhPJy9sct1Ug0TZk6JsuLrSgkOdxqsCcl+dJZ8kncQ9eZoy4uDTA6VPQLbol00ss5uwNJd+mFy/Q== X-Received: by 2002:a05:600c:3b97:: with SMTP id n23mr3654681wms.88.1639826589098; Sat, 18 Dec 2021 03:23:09 -0800 (PST) Received: from nijino.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id m17sm5085408wms.25.2021.12.18.03.23.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 18 Dec 2021 03:23:08 -0800 (PST) Message-ID: <28358ddd3eee8d95b6a4a48d7e2f51b16b420563.camel@gmail.com> From: Liliana Marie Prikler Date: Sat, 18 Dec 2021 12:23:06 +0100 In-Reply-To: <20211217132610.26529-1-db@minikn.xyz> References: <20211217132610.26529-1-db@minikn.xyz> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.42.1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1639826653; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=ijIPxF+8S93L/+mCAiw3Nx0UXArFqEsGRKxVYScIlAs=; b=iJwtdm5N2Oily9z2qg/LKBbkCY1Jh5wP2aLsj3jllfgEDJBtaIFrm/ZzHKGgjiULz6RWAm E9cZ5nZfRCxH/YFgimXmDOGhAThAYzB1LDdFT7pY7ASTnMpreCgYRL+zkG+AI+oAuLC3+6 uFWJQCZPNY53y/0p3ydDec9i7SvHI4DHg8w2YQW2yi19RyqvtQl3+Tjqk1KhiAv3G8F0js Uu0hTGY02bs2BCaSzMMAMejHrNHIKDwQdLj+mt3iVf+8dPlpHE3WTFUGBrNLh+hA7eh0TA K8h+eiQEOY0DVNfa3fZ9nDWK3TF3Vn68KTC4HGJrJAC9fqHGjJqqkDRA0vPYSw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1639826653; a=rsa-sha256; cv=none; b=VFAE5nF2PzJTFwiz7NdU+jX0t9Eo++Gf+HfmEAHDHrVJL9/wg248OT23Uo9ok2Y/AJX9SZ 1bHvo1N2jrJ6HXHyTsXaAaHWNmxie/2w9o7GA8Er2K1rg71CyIOk2vOXfbGVgERJEH+zaR 8HYmzvWGJxk6zKifsj1pMZUk4tHmxqex7z3Q3uou5CwSxSNzOfd3BAx5W3Un46IzTCv/mP SgbGQkU/aTjxIgzFX/vPmW8aaOrJ9jhKfW0uc1j0naoeeH3qTeakqQX8zJ4ZY+hq+43kV+ 1vG1Y9oAkrK2w9Q8PXK0WQ5WMDfSOhOobkxYctsfH6N47isycjWwKmU6BCQLAQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=GMJwWaxj; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -3.40 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=GMJwWaxj; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: D105E4D15 X-Spam-Score: -3.40 X-Migadu-Scanner: scn0.migadu.com X-TUID: zK+NztVNAqu/ Hi, Am Freitag, dem 17.12.2021 um 14:26 +0100 schrieb Demis Balbach: > +@item @code{class} (default: @code{"0x000000"}) > +Default device class. Only the major and minor device class bits are > considered. Is it really a good idea to use a string-encoded number here? Why not a number? Why not two? A pair or list of symbols mayhaps? > +@item @code{device-id} (default: @code{#f}) > +Use vendor id source (assigner), vendor, product and version > information for > +DID profile support. The values are separated by ":" and > @var{assigner}, @var{VID}, > +@var{PID} and @var{version}. > + > +Possible values are: > + > +@itemize @bullet > +@item > +@code{#f} to disable it, > + > +@item > +@code{"assigner:1234:5678:abcd"}, where @var{assigner} is either > @code{usb} (default) > +or @code{bluetooth}. > + > +@end itemize You maybe want to have a record here, but fair enough, a string works too. > +@item @code{privacy} (default: @code{'off}) > +Default privacy settings. > + > +@itemize @bullet > +@item > +@code{'off}: Disable local privacy > + > +@item > +@code{'network/on}: A device will only accept advertising packets > from peer > +devices that contain private addresses. It may not be compatible > with some > +legacy devices since it requires the use of RPA(s) all the time > + > +@item > +@code{'device}: A device in device privacy mode is only concerned > about the > +privacy of the device and will accept advertising packets from peer > devices > +that contain their Identity Address as well as ones that contain a > private > +address, even if the peer device has distributed its IRK in the past > + > +@end itemize Why have a key network/on? Why not use 'on and 'network and document, that they function the same due to (insert implementation detail). > +@item @code{experimental} (default: @code{'false}) > +Enables experimental features and interfaces, alternatively a list > of UUIDs > +can be given. > + > +Possible values: > + > +@itemize @bullet > +@item > +@code{'true} > + > +@item > +@code{'false} > + > +@item > +@code{'d4992530-b9ec-469f-ab01-6c481c47da1c}: BlueZ Experimental > Debug, > + > +@item > +@code{'671b10b5-42c0-4696-9227-eb28d1b049d6}: BlueZ Experimental > Simultaneous Central and Peripheral, > + > +@item > +@code{'15c0a148-c273-11ea-b3de-0242ac130004}: BlueZ Experimental LL > privacy, > + > +@item > +@code{'330859bc-7506-492d-9370-9a6f0614037f}: BlueZ Experimental > Bluetooth Quality Report, > + > +@item > +@code{'a6695ace-ee7f-4fb9-881a-5fac66c629af}: BlueZ Experimental > Offload Codecs. > +@end itemize Why a list of UUIDs? Wouldn't it make more sense to use symbols like 'debug, 'll-privacy, 'quality-report, etc.? On that note, we have a UUID type, so use it. > +@item @code{enable-adv-mon-interleave-scan} (default: @code{1}) > +Enable/Disable Advertisement Monitor interleave scan for power > saving. > + > +Possible values are: > + > +@itemize @bullet > +@item > +@code{0}: disable > + > +@item > +@code{1}: enabled. > +@end itemize Should be a boolean. > +@item @code{cache} (default: @code{'always}) > +GATT attribute cache. > + > +Possible values are: > +@itemize @bullet > +@item > +@code{'always}: Always cache attributes even for devices not paired, > this is > +recommended as it is best for interoperability, with more consistent > +reconnection times and enables proper tracking of notifications for > all > +devices > + > +@item > +@code{'yes}: Only cache attributes of paired devices > + > +@item > +@code{'no}: Never cache attributes. > +@end itemize Might want to rename/alias 'yes to 'paired. > +@item @code{key-size} (default: @code{0}) > +Minimum required Encryption Key Size for accessing secured > characteristics. > + > +Possible values are: > +@itemize @bullet > +@item > +@code{0}: Don't care > + > +@item > +@code{7-16} > +@end itemize You probably want to write that as "an integer 7 <= N <= 16". > +@itemize @bullet > +@item > +@code{23-517} > +@end itemize As above. > +@item > +@code{2-5} > +@end itemize As above. > +@item @code{reconnect-uuids} (default: @code{'()}) > +The ReconnectUUIDs defines the set of remote services that should > try > +to be reconnected to in case of a link loss (link supervision > +timeout). The policy plugin should contain a sane set of values by > +default, but this list can be overridden here. By setting the list > to > +empty the reconnection feature gets disabled. Again, make sure that your code works with UUIDs here if it doesn't already. > +@item @code{rssi-sampling-period} (default: @code{"0xFF"}) > +Default RSSI Sampling Period. This is used when a client registers > an > +advertisement monitor and leaves the RSSISamplingPeriod unset. Use numbers, not strings. I've only reviewed the documentation and not the implementation, because that is the spec facing the user. If some implementation details look off, we can address those later on. Cheers