+ /*
+ * function to call when we receive a new fd, it receives a
+ * newly allocated kconsumerd_fd, depending on the return code
+ * of this function, the new FD will be handled by the
+ * application or the library.
+ *
+ * Returns:
+ * > 0 (success, FD is kept by application)
+ * == 0 (success, FD is left to library)
+ * < 0 (error)
+ */
+ int (*on_recv_fd)(struct lttng_kconsumerd_fd *kconsumerd_fd);
+ /*
+ * function to call when a FD is getting updated by the session
+ * daemon, this function receives the FD as seen by the session
+ * daemon (sessiond_fd) and the new state, depending on the
+ * return code of this function the update of state for the FD
+ * is handled by the application or the library.
+ *
+ * Returns:
+ * > 0 (success, FD is kept by application)
+ * == 0 (success, FD is left to library)
+ * < 0 (error)
+ */
+ int (*on_update_fd)(int sessiond_fd, uint32_t state);