+/* KDBUS_CMD_MATCH_ADD/REMOVE */
+enum {
+ _KDBUS_MATCH_NULL,
+ KDBUS_MATCH_BLOOM, /* Matches a mask blob against KDBUS_MSG_BLOOM */
+ KDBUS_MATCH_SRC_NAME, /* Matches a name string against KDBUS_MSG_SRC_NAMES */
+ KDBUS_MATCH_NAME_ADD, /* Matches a name string against KDBUS_MSG_NAME_ADD */
+ KDBUS_MATCH_NAME_REMOVE, /* Matches a name string against KDBUS_MSG_NAME_REMOVE */
+ KDBUS_MATCH_NAME_CHANGE, /* Matches a name string against KDBUS_MSG_NAME_CHANGE */
+ KDBUS_MATCH_ID_ADD, /* Matches an ID against KDBUS_MSG_ID_ADD */
+ KDBUS_MATCH_ID_REMOVE, /* Matches an ID against KDBUS_MSG_ID_REMOVE */
+};
+
+/**
+ * struct kdbus_cmd_match - struct to add or remove matches
+ * @size: The total size of the struct
+ * @id: Priviledged users may (de)register matches on behalf
+ * of other peers.
+ * In other cases, set to 0.
+ * @cookie: Userspace supplied cookie. When removing, the cookie is
+ * suffices as information
+ * @src_id: The source ID to match against. Use KDBUS_MATCH_SRC_ID_ANY or
+ * any other value for a unique match.
+ * @items: A list of items for additional information
+ *
+ * This structure is used with the KDBUS_CMD_ADD_MATCH and
+ * KDBUS_CMD_REMOVE_MATCH ioctl. Refer to the documentation for more
+ * information.
+ */