Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp3727702ybn; Fri, 27 Sep 2019 10:26:16 -0700 (PDT) X-Google-Smtp-Source: APXvYqzWUyLI63aKap+d5ey8e4sprW+I7NRZR0Ze963Q/wgR2LMWlWXbBhNbjNrHnUPydW/iXtxP X-Received: by 2002:a50:a666:: with SMTP id d93mr5819359edc.217.1569605176728; Fri, 27 Sep 2019 10:26:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569605176; cv=none; d=google.com; s=arc-20160816; b=XANmyd6VBk+wQrhsDOXWQej1hg1UoxAbrOIy0GrRZYau6mCd/se0JWEUn5tp8argPd 7Vt13lgn3Aj5yOl1caUJKfL4km0thAm4DlQVvh6rTQiEmXmVxrvYmz4FoMLmpP0an584 PPGiKg1RrZaEOwWDLZeOrfzsQJGVJYlfaqmKwcRfOaphzvc/EJqkcENrJkK9qvFlNSNC MPkHKXt6aTTO1oQabIjo0ancA5gqkx5EVZbiIiQN8tdEbWrPzLeHGWFuvD8OQfpci9+/ uA+qtwyUdyHMHqF5WTJXqoB2ZI0u1cm7er7c87PIr8LOM0wKPFTAWQSun9/vDh+bg/f5 y7yg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-language :accept-language:in-reply-to:references:message-id:date:thread-index :thread-topic:subject:cc:to:from; bh=+tsvxxglnMmRBeiJerTm8eSNMeIsKOSVOAsjaNvOHyo=; b=KKQwv/q39FT+ppUGxvww2u7GaUD9u9qo6JWclysSxPrv5vgz2GEUKmMh0ERj0uSKOe w7Sb65gwO2KKDE0AiXEdhuFndQv3VlJFsUl3k4WiBsyV+Zw+5bv3K06yokE3kA3SZtdb CnrYm/NuWzBiFQ7gr6i01Zw92HMX0gdEqXw+aAiJtcIsiS8fSZxzbCsDf3cZBTgVDoK1 XvJ634qVjVj9JtcOauvH+uHvAbVkksHeVOedgEQCv0laFZag7O0CWEZWCbjMU0wEBMCM 57NnLO6eMxQQrLxF+4R8n5YWslEpMmFNUehlyM38P7JCy7oPExTD7Q79+fW8PKWXt+5d ubDA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-bluetooth-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g8si2062777edb.335.2019.09.27.10.25.39; Fri, 27 Sep 2019 10:26:16 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-bluetooth-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-bluetooth-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726294AbfI0RZc (ORCPT + 99 others); Fri, 27 Sep 2019 13:25:32 -0400 Received: from mga04.intel.com ([192.55.52.120]:9034 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726027AbfI0RZc (ORCPT ); Fri, 27 Sep 2019 13:25:32 -0400 X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Sep 2019 10:25:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,556,1559545200"; d="p7s'?scan'208";a="214908116" Received: from orsmsx103.amr.corp.intel.com ([10.22.225.130]) by fmsmga004.fm.intel.com with ESMTP; 27 Sep 2019 10:25:31 -0700 Received: from orsmsx112.amr.corp.intel.com (10.22.240.13) by ORSMSX103.amr.corp.intel.com (10.22.225.130) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 27 Sep 2019 10:25:31 -0700 Received: from orsmsx103.amr.corp.intel.com ([169.254.5.5]) by ORSMSX112.amr.corp.intel.com ([169.254.3.161]) with mapi id 14.03.0439.000; Fri, 27 Sep 2019 10:25:31 -0700 From: "Stotland, Inga" To: "michal.lowas-rzechonek@silvair.com" , "Gix, Brian" CC: "linux-bluetooth@vger.kernel.org" Subject: Re: mesh: org.bluez.mesh.Element.MessageReceived method does not provide destination address Thread-Topic: mesh: org.bluez.mesh.Element.MessageReceived method does not provide destination address Thread-Index: AQHVX2LEtJoH6czNyE6Xu9DaIe4hzqcxs2yAgAuqpwCAAVPggIAAWhSAgADMPACAAHTCAIAAGquA Date: Fri, 27 Sep 2019 17:25:30 +0000 Message-ID: <856d4e6bfdbe84b7b7ac3742ebede263c7801346.camel@intel.com> References: <20190830184301.zd3zaqrw7mv6r252@kynes> <20190918085239.xhahxoeqjkcrk3bl@mlowasrzechonek2133> <3c5858c94b3e08a61c5ff8493f9b00f5f77d0aac.camel@intel.com> <4b57242b15ccb44ac123858ce7bdf6e0e526b3e0.camel@intel.com> <20190927085208.sxy2x5656ci3opo6@mlowasrzechonek2133> <01c84f55db98fbcc2790d11fd6090589881c36cf.camel@intel.com> In-Reply-To: <01c84f55db98fbcc2790d11fd6090589881c36cf.camel@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-originating-ip: [10.255.64.120] Content-Type: multipart/signed; micalg=sha-1; protocol="application/x-pkcs7-signature"; boundary="=-Phdn8mIb6iQrSPUNmNSP" MIME-Version: 1.0 Sender: linux-bluetooth-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org --=-Phdn8mIb6iQrSPUNmNSP Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Brian,=20 On Fri, 2019-09-27 at 15:50 +0000, Gix, Brian wrote: > On Fri, 2019-09-27 at 10:52 +0200, michal.lowas-rzechonek@silvair.com > wrote: > > Inga, Brian, > >=20 > > Still, even if we add a method, the application is free *not* to > > implement it, since we agreed back in the day that calls to > > MessageReceived do not require a response, so any errors would be > > simply > > ignored by the daemon. >=20 > This is not an option. >=20 > A node does not get to decide which susbscriptions are "valid". If a > Virtual Address subscription is added to > a node, and then a message is sent to that virtua address, the App > needs to be able to receive it. >=20 > Yes, any discrete message may be lost, but I don't think we have the > option of letting *all* virtual addressed > messages to an App to be ignored. If we add an App API, it will need > to be mandatory, which is why I am > against it. >=20 > I strongly believe we need: >=20 > 1. A single method for delivering (non dev key) received messages > 2. A method that does not require dictionary parsing >=20 > How are we feeling about: > void MessageReceived(uint16 source, uint16 key_index, > array{byte} destination, array{byte} data) >=20 >=20 > Where destination length of: > 0 - Unicast address of element > 2 - Group Address > 16 - Variable Label >=20 > I think this fulfills all of our requirements. >=20 For a single MessageReceived() method, the cleanest way is to have the subscription address parameter as a variant (suggested by Michal) or as a dictionary. An array introduces an extra consideration of byte ordering for group addresses. What I mostly about is that the represenation of the subscription address in the MessageReceived() method corresponds to the representation in the configuration dictionaries for the Attach() and UpdateModelConfiguration() methods. =20 --=-Phdn8mIb6iQrSPUNmNSP Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Disposition: attachment; filename="smime.p7s" Content-Transfer-Encoding: base64 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 k3sf6w6ZKbZbz2V54rncMEXM3N/P4C6ZHZR0XYqh5m1vWxZYYVzTuDEH1C8W+b3KzldrAgMBAAGj ggIwMIICLDAdBgNVHQ4EFgQUcdzZH9M8OSxLujP+AToiD5oYMRkwHwYDVR0jBBgwFoAU2kEjnFqP ca9Xgz4g0+Nl2wzLC9swZQYDVR0fBF4wXDBaoFigVoZUaHR0cDovL3d3dy5pbnRlbC5jb20vcmVw b3NpdG9yeS9DUkwvSW50ZWwlMjBFeHRlcm5hbCUyMEJhc2ljJTIwSXNzdWluZyUyMENBJTIwNEIu Y3JsMIGeBggrBgEFBQcBAQSBkTCBjjAhBggrBgEFBQcwAYYVaHR0cDovL29jc3AuaW50ZWwuY29t MGkGCCsGAQUFBzAChl1odHRwOi8vd3d3LmludGVsLmNvbS9yZXBvc2l0b3J5L2NlcnRpZmljYXRl cy9JbnRlbCUyMEV4dGVybmFsJTIwQmFzaWMlMjBJc3N1aW5nJTIwQ0ElMjA0Qi5jcnQwCwYDVR0P BAQDAgeAMDwGCSsGAQQBgjcVBwQvMC0GJSsGAQQBgjcVCIbDjHWEmeVRg/2BKIWOn1OCkcAJZ4He vTmV8EMCAWQCAQkwHwYDVR0lBBgwFgYIKwYBBQUHAwQGCisGAQQBgjcKAwwwKQYJKwYBBAGCNxUK BBwwGjAKBggrBgEFBQcDBDAMBgorBgEEAYI3CgMMMEsGA1UdEQREMEKgJwYKKwYBBAGCNxQCA6AZ DBdpbmdhLnN0b3RsYW5kQGludGVsLmNvbYEXaW5nYS5zdG90bGFuZEBpbnRlbC5jb20wDQYJKoZI hvcNAQEFBQADggEBALnl11xd+3X6fVS0VAKeoF0jCPLFZLCk4jMFifFzY2md3MLjVIB3lE5ffNnS mjG9ErOO6as95K6D6hzCJMqNodOyVPRSrMNey0tzFAPLRG3s2bgfmOcvYr4O3WmpDMx8YmH6O2YI 3Xxjyp11aXl5pk6VjpZV/hjN1jwZ/c/X00KsjoMB8mGSBvbwnV0EFQUJ99xsAlqQ4edj2T9z6pF1 WX189YL64c/t3a9LWNaT2CWbBZLIFoor9TpZsIj0lGObmGA76JKn5yxN+jzxhWIAzPi5KKYgJ9EU FDn6fGbJHisZdWX3bVamfpmPogThm1khlD7R4USu0eyym3JRh0tXJeAxggIXMIICEwIBATCBkDB5 MQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFDASBgNVBAcTC1NhbnRhIENsYXJhMRowGAYDVQQK ExFJbnRlbCBDb3Jwb3JhdGlvbjErMCkGA1UEAxMiSW50ZWwgRXh0ZXJuYWwgQmFzaWMgSXNzdWlu ZyBDQSA0QgITMwAAeRJvGZxlhdnerwAAAAB5EjAJBgUrDgMCGgUAoF0wGAYJKoZIhvcNAQkDMQsG CSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMTkwOTI3MTcyNTI5WjAjBgkqhkiG9w0BCQQxFgQU Egn41IK4nPPD87ggrrTYS9JY6a0wDQYJKoZIhvcNAQEBBQAEggEABAAQiqeI+2o3xv5bgeLNtr1c KxVxmXfoY/BTcbHb0F3Yeb5pDjhbIMjyOvssjEgoAXPeeEEeVN/c2vMRjrDAgx0ZLe84vH2/aRD1 iuRwxQYNLm0n7NT8+9LA2zrn/4vWbeNgGtc4GZUw85PXvdnkM90g3rEZLBeGLOMm7FRMPTC0Bs5f M2Rk4d4VNLowoMQIlsolooMjgHV9xg/sMxjQQkoBhG6kE1sdRMs4yZL5bnimo2Hwq/9y8DtMzXNk Hf+BZNaUsQkJB6BQrWrBrvkfw2IU/2E3L5tMwFp7g30erTo5xPeyAGDxQzH9ESRim0oRK8h3GUCx mta/PZoIp9ghFQAAAAAAAA== --=-Phdn8mIb6iQrSPUNmNSP--