summaryrefslogtreecommitdiff
path: root/mesh/prv-beacon.h
diff options
context:
space:
mode:
authorBrian Gix <brian.gix@intel.com>2020-10-08 10:32:36 -0700
committerBrian Gix <brian.gix@gmail.com>2023-01-30 16:14:41 -0800
commit6619b24cc23710c3074fe90c6510cb3688bee701 (patch)
treeec6679a6f39e45e2e4498a4e1e6923a7f96fccbb /mesh/prv-beacon.h
parentcbeca2fba171efc51cd1d84026c282d1247c40f8 (diff)
downloadbluez-6619b24cc23710c3074fe90c6510cb3688bee701.tar.gz
mesh: Add Mesh Private Beacon server
This initial server supports only the Mesh Private Beacon and returns "Not Suppoerted" for Get/Set of Private GATT Proxy and Private Node Identity beacons.
Diffstat (limited to 'mesh/prv-beacon.h')
-rw-r--r--mesh/prv-beacon.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/mesh/prv-beacon.h b/mesh/prv-beacon.h
new file mode 100644
index 000000000..1e69e7fda
--- /dev/null
+++ b/mesh/prv-beacon.h
@@ -0,0 +1,36 @@
+/*
+ *
+ * BlueZ - Bluetooth protocol stack for Linux
+ *
+ * Copyright (C) 2023 Intel Corporation. All rights reserved.
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ */
+
+struct mesh_node;
+
+#define PRV_BEACON_SRV_MODEL SET_ID(SIG_VENDOR, 0x0008)
+#define PRV_BEACON_CLI_MODEL SET_ID(SIG_VENDOR, 0x0009)
+
+/* Private Beacon opcodes */
+#define OP_PRIVATE_BEACON_GET 0x8060
+#define OP_PRIVATE_BEACON_SET 0x8061
+#define OP_PRIVATE_BEACON_STATUS 0x8062
+#define OP_PRIVATE_GATT_PROXY_GET 0x8063
+#define OP_PRIVATE_GATT_PROXY_SET 0x8064
+#define OP_PRIVATE_GATT_PROXY_STATUS 0x8065
+#define OP_PRIVATE_NODE_ID_GET 0x8066
+#define OP_PRIVATE_NODE_ID_SET 0x8067
+#define OP_PRIVATE_NODE_ID_STATUS 0x8068
+
+void prv_beacon_server_init(struct mesh_node *node, uint8_t ele_idx);