monitor/att: Simplify CCC decoders
authorLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Thu, 26 May 2022 20:47:13 +0000 (13:47 -0700)
committerAyush Garg <ayush.garg@samsung.com>
Mon, 15 May 2023 09:25:54 +0000 (14:55 +0530)
This simplify callbacks moving the decoding of the value to
print_ccc_value.

Signed-off-by: Manika Shrivastava <manika.sh@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
monitor/att.c

index 4de7fd3..ad6bc04 100644 (file)
@@ -220,38 +220,30 @@ static const struct bitfield_data ccc_value_table[] = {
        { }
 };
 
-static void print_ccc_value(uint8_t value)
-{
-       uint8_t mask = value;
-
-       mask = print_bitfield(4, value, ccc_value_table);
-       if (mask)
-               print_text(COLOR_WHITE_BG, "    Unknown fields (0x%2.2x)",
-                                                               mask);
-}
-
-static void gatt_ccc_read(const struct l2cap_frame *frame)
+static void print_ccc_value(const struct l2cap_frame *frame)
 {
        uint8_t value;
+       uint8_t mask;
 
        if (!l2cap_frame_get_u8((void *)frame, &value)) {
                print_text(COLOR_ERROR, "invalid size");
                return;
        }
 
-       print_ccc_value(value);
+       mask = print_bitfield(4, value, ccc_value_table);
+       if (mask)
+               print_text(COLOR_WHITE_BG, "    Unknown fields (0x%2.2x)",
+                                                               mask);
 }
 
-static void gatt_ccc_write(const struct l2cap_frame *frame)
+static void ccc_read(const struct l2cap_frame *frame)
 {
-       uint8_t value;
-
-       if (!l2cap_frame_get_u8((void *)frame, &value)) {
-               print_text(COLOR_ERROR, "invalid size");
-               return;
-       }
+       print_ccc_value(frame);
+}
 
-       print_ccc_value(value);
+static void ccc_write(const struct l2cap_frame *frame)
+{
+       print_ccc_value(frame);
 }
 
 #define GATT_HANDLER(_uuid, _read, _write, _notify) \
@@ -271,8 +263,7 @@ struct gatt_handler {
        void (*write)(const struct l2cap_frame *frame);
        void (*notify)(const struct l2cap_frame *frame);
 } gatt_handlers[] = {
-       GATT_HANDLER(GATT_CLIENT_CHARAC_CFG_UUID, gatt_ccc_read,
-                                       gatt_ccc_write, NULL)
+       GATT_HANDLER(0x2902, ccc_read, ccc_write, NULL),
 };
 
 static struct gatt_handler *get_handler(struct gatt_db_attribute *attr)