Blob Blame History Raw
From 89fb68570e72a854f10d50bec99112d294597483 Mon Sep 17 00:00:00 2001
From: Gopal Tiwari <gtiwari@redhat.com>
Date: Fri, 24 Apr 2020 16:06:37 +0530
Subject: [PATCH BlueZ 1/2]     HOGP must only accept data from bonded devices.

commit 8cdbd3b09f29da29374e2f83369df24228da0ad1
Author: Alain Michaud <alainm@chromium.org>
Date:   Tue Mar 10 02:35:16 2020 +0000

    HOGP must only accept data from bonded devices.

    HOGP 1.0 Section 6.1 establishes that the HOGP must require bonding.

    Reference:
    https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00352.htm
---
 profiles/input/hog.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/profiles/input/hog.c b/profiles/input/hog.c
index 23c9c1529..f8a82bc20 100644
--- a/profiles/input/hog.c
+++ b/profiles/input/hog.c
@@ -186,6 +186,10 @@ static int hog_accept(struct btd_service *service)
 			return -EINVAL;
 	}
 
+	/* HOGP 1.0 Section 6.1 requires bonding */
+	if (!device_is_bonded(device, btd_device_get_bdaddr_type(device)))
+		return -ECONNREFUSED;
+
 	/* TODO: Replace GAttrib with bt_gatt_client */
 	bt_hog_attach(dev->hog, attrib);
 
-- 
2.21.1