X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=include%2Flttng%2Ftracker.h;h=f8f493e6650c1cd504fc44841a37907c6458d664;hb=28f23191dcbf047429d51950a337a57d7a3f866a;hp=fa91abab6225c98c032043e14151c2bf1d310e2f;hpb=159b042f34366d0fde5dcd73b4231c558922a664;p=lttng-tools.git diff --git a/include/lttng/tracker.h b/include/lttng/tracker.h index fa91abab6..f8f493e66 100644 --- a/include/lttng/tracker.h +++ b/include/lttng/tracker.h @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -115,17 +116,17 @@ struct lttng_process_attr_values; * The tracker's ownership is transfered to the caller. Use * lttng_process_attr_tracker_handle_destroy() to dispose of it. */ -extern enum lttng_error_code lttng_session_get_tracker_handle( - const char *session_name, - enum lttng_domain_type domain, - enum lttng_process_attr process_attr, - struct lttng_process_attr_tracker_handle **out_tracker_handle); +LTTNG_EXPORT extern enum lttng_error_code +lttng_session_get_tracker_handle(const char *session_name, + enum lttng_domain_type domain, + enum lttng_process_attr process_attr, + struct lttng_process_attr_tracker_handle **out_tracker_handle); /* * Destroy a process attribute tracker handle. */ -extern void lttng_process_attr_tracker_handle_destroy( - struct lttng_process_attr_tracker_handle *tracker_handle); +LTTNG_EXPORT extern void +lttng_process_attr_tracker_handle_destroy(struct lttng_process_attr_tracker_handle *tracker_handle); /* * Get the tracking policy of a process attribute tracker. @@ -134,10 +135,10 @@ extern void lttng_process_attr_tracker_handle_destroy( * policy of a process attribute tracker on success, * LTTNG_PROCESS_ATTR_TRACKER_HANDLE_STATUS_INVALID on error. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_tracker_handle_get_tracking_policy( - const struct lttng_process_attr_tracker_handle *tracker_handle, - enum lttng_tracking_policy *policy); + const struct lttng_process_attr_tracker_handle *tracker_handle, + enum lttng_tracking_policy *policy); /* * Set the tracking policy of a process attribute tracker. @@ -147,10 +148,10 @@ lttng_process_attr_tracker_handle_get_tracking_policy( * Returns the LTTNG_PROCESS_ATTR_TRACKER_HANDLE_STATUS_OK on success, * LTTNG_PROCESS_ATTR_TRACKER_HANDLE_STATUS_INVALID on error. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_tracker_handle_set_tracking_policy( - const struct lttng_process_attr_tracker_handle *tracker_handle, - enum lttng_tracking_policy policy); + const struct lttng_process_attr_tracker_handle *tracker_handle, + enum lttng_tracking_policy policy); /* * Add a numerical PID to the process ID process attribute tracker inclusion @@ -162,11 +163,9 @@ lttng_process_attr_tracker_handle_set_tracking_policy( * LTTNG_PROCESS_ATTR_TRACKER_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_process_id_tracker_handle_add_pid( - const struct lttng_process_attr_tracker_handle - *process_id_tracker, - pid_t pid); + const struct lttng_process_attr_tracker_handle *process_id_tracker, pid_t pid); /* * Remove a numerical PID from the process ID process attribute tracker include @@ -177,11 +176,9 @@ lttng_process_attr_process_id_tracker_handle_add_pid( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_process_id_tracker_handle_remove_pid( - const struct lttng_process_attr_tracker_handle - *process_id_tracker, - pid_t pid); + const struct lttng_process_attr_tracker_handle *process_id_tracker, pid_t pid); /* * Add a numerical PID to the virtual process ID process attribute tracker @@ -193,11 +190,9 @@ lttng_process_attr_process_id_tracker_handle_remove_pid( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_process_id_tracker_handle_add_pid( - const struct lttng_process_attr_tracker_handle - *process_id_tracker, - pid_t vpid); + const struct lttng_process_attr_tracker_handle *process_id_tracker, pid_t vpid); /* * Remove a numerical PID from the virtual process ID process attribute tracker @@ -208,11 +203,9 @@ lttng_process_attr_virtual_process_id_tracker_handle_add_pid( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_process_id_tracker_handle_remove_pid( - const struct lttng_process_attr_tracker_handle - *process_id_tracker, - pid_t vpid); + const struct lttng_process_attr_tracker_handle *process_id_tracker, pid_t vpid); /* * Add a numerical UID to the user ID process attribute tracker inclusion set. @@ -223,10 +216,9 @@ lttng_process_attr_virtual_process_id_tracker_handle_remove_pid( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_user_id_tracker_handle_add_uid( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - uid_t uid); + const struct lttng_process_attr_tracker_handle *user_id_tracker, uid_t uid); /* * Remove a numerical UID from the user ID process attribute tracker include @@ -237,10 +229,9 @@ lttng_process_attr_user_id_tracker_handle_add_uid( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_user_id_tracker_handle_remove_uid( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - uid_t uid); + const struct lttng_process_attr_tracker_handle *user_id_tracker, uid_t uid); /* * Add a user name to the user ID process attribute tracker inclusion set. @@ -254,10 +245,9 @@ lttng_process_attr_user_id_tracker_handle_remove_uid( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_user_id_tracker_handle_add_user_name( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - const char *user_name); + const struct lttng_process_attr_tracker_handle *user_id_tracker, const char *user_name); /* * Remove a user name from the user ID process attribute tracker include @@ -271,10 +261,9 @@ lttng_process_attr_user_id_tracker_handle_add_user_name( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_user_id_tracker_handle_remove_user_name( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - const char *user_name); + const struct lttng_process_attr_tracker_handle *user_id_tracker, const char *user_name); /* * Add a numerical UID to the virtual user ID process attribute tracker @@ -286,10 +275,9 @@ lttng_process_attr_user_id_tracker_handle_remove_user_name( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_user_id_tracker_handle_add_uid( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - uid_t vuid); + const struct lttng_process_attr_tracker_handle *user_id_tracker, uid_t vuid); /* * Remove a numerical UID from the virtual user ID process attribute tracker @@ -300,10 +288,9 @@ lttng_process_attr_virtual_user_id_tracker_handle_add_uid( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_user_id_tracker_handle_remove_uid( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - uid_t vuid); + const struct lttng_process_attr_tracker_handle *user_id_tracker, uid_t vuid); /* * Add a user name to the virtual user ID process attribute tracker include @@ -318,10 +305,10 @@ lttng_process_attr_virtual_user_id_tracker_handle_remove_uid( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_user_id_tracker_handle_add_user_name( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - const char *virtual_user_name); + const struct lttng_process_attr_tracker_handle *user_id_tracker, + const char *virtual_user_name); /* * Remove a user name from the virtual user ID process attribute tracker @@ -335,10 +322,10 @@ lttng_process_attr_virtual_user_id_tracker_handle_add_user_name( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_user_id_tracker_handle_remove_user_name( - const struct lttng_process_attr_tracker_handle *user_id_tracker, - const char *virtual_user_name); + const struct lttng_process_attr_tracker_handle *user_id_tracker, + const char *virtual_user_name); /* * Add a numerical GID to the group ID process attribute tracker inclusion set. @@ -349,10 +336,9 @@ lttng_process_attr_virtual_user_id_tracker_handle_remove_user_name( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_group_id_tracker_handle_add_gid( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - gid_t gid); + const struct lttng_process_attr_tracker_handle *group_id_tracker, gid_t gid); /* * Remove a numerical GID from the group ID process attribute tracker include @@ -363,10 +349,9 @@ lttng_process_attr_group_id_tracker_handle_add_gid( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_group_id_tracker_handle_remove_gid( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - gid_t gid); + const struct lttng_process_attr_tracker_handle *group_id_tracker, gid_t gid); /* * Add a group name to the group ID process attribute tracker inclusion set. @@ -380,10 +365,9 @@ lttng_process_attr_group_id_tracker_handle_remove_gid( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_group_id_tracker_handle_add_group_name( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - const char *group_name); + const struct lttng_process_attr_tracker_handle *group_id_tracker, const char *group_name); /* * Remove a group name from the group ID process attribute tracker include @@ -397,10 +381,9 @@ lttng_process_attr_group_id_tracker_handle_add_group_name( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_group_id_tracker_handle_remove_group_name( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - const char *group_name); + const struct lttng_process_attr_tracker_handle *group_id_tracker, const char *group_name); /* * Add a numerical GID to the virtual group ID process attribute tracker @@ -412,10 +395,9 @@ lttng_process_attr_group_id_tracker_handle_remove_group_name( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_group_id_tracker_handle_add_gid( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - gid_t vgid); + const struct lttng_process_attr_tracker_handle *group_id_tracker, gid_t vgid); /* * Remove a numerical GID from the virtual group ID process attribute tracker @@ -426,10 +408,9 @@ lttng_process_attr_virtual_group_id_tracker_handle_add_gid( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_group_id_tracker_handle_remove_gid( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - gid_t vgid); + const struct lttng_process_attr_tracker_handle *group_id_tracker, gid_t vgid); /* * Add a group name to the virtual group ID process attribute tracker include @@ -444,10 +425,10 @@ lttng_process_attr_virtual_group_id_tracker_handle_remove_gid( * LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if an invalid tracker * argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_group_id_tracker_handle_add_group_name( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - const char *virtual_group_name); + const struct lttng_process_attr_tracker_handle *group_id_tracker, + const char *virtual_group_name); /* * Remove a group name from the virtual group ID process attribute tracker @@ -461,10 +442,10 @@ lttng_process_attr_virtual_group_id_tracker_handle_add_group_name( * in the inclusion set, and LTTNG_PROCESS_ATTR_TRACKED_HANDLE_STATUS_INVALID if * an invalid tracker argument was provided. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_virtual_group_id_tracker_handle_remove_group_name( - const struct lttng_process_attr_tracker_handle *group_id_tracker, - const char *virtual_group_name); + const struct lttng_process_attr_tracker_handle *group_id_tracker, + const char *virtual_group_name); /* * Get the process attribute values that are part of a tracker's inclusion set. @@ -479,10 +460,10 @@ lttng_process_attr_virtual_group_id_tracker_handle_remove_group_name( * LTTNG_PROCESS_ATTR_TRACKER_HANDLE_STATUS_INVALID if the tracker's policy is * not LTTNG_POLICY_INCLUDE_SET. */ -extern enum lttng_process_attr_tracker_handle_status +LTTNG_EXPORT extern enum lttng_process_attr_tracker_handle_status lttng_process_attr_tracker_handle_get_inclusion_set( - struct lttng_process_attr_tracker_handle *tracker_handle, - const struct lttng_process_attr_values **values); + struct lttng_process_attr_tracker_handle *tracker_handle, + const struct lttng_process_attr_values **values); /* * Get the count of values within a set of process attribute values. @@ -490,10 +471,9 @@ lttng_process_attr_tracker_handle_get_inclusion_set( * Returns LTTNG_PROCESS_ATTR_VALUES_STATUS_OK on success, * LTTNG_PROCESS_ATTR_VALUES_STATUS_INVALID if an invalid argument is provided. */ -extern enum lttng_process_attr_values_status -lttng_process_attr_values_get_count( - const struct lttng_process_attr_values *values, - unsigned int *count); +LTTNG_EXPORT extern enum lttng_process_attr_values_status +lttng_process_attr_values_get_count(const struct lttng_process_attr_values *values, + unsigned int *count); /* * Get the type of a process attribute value at a given index. @@ -501,10 +481,9 @@ lttng_process_attr_values_get_count( * Returns a process attribute value type on success, * LTTNG_PROCESS_ATTR_VALUE_TYPE_INVALID if an invalid argument is provided. */ -extern enum lttng_process_attr_value_type -lttng_process_attr_values_get_type_at_index( - const struct lttng_process_attr_values *values, - unsigned int index); +LTTNG_EXPORT extern enum lttng_process_attr_value_type +lttng_process_attr_values_get_type_at_index(const struct lttng_process_attr_values *values, + unsigned int index); /* * Get a process ID process attribute value. @@ -513,11 +492,10 @@ lttng_process_attr_values_get_type_at_index( * LTTNG_PROCESS_ATTR_VALUES_STATUS_INVALID_TYPE if the process attribute value * is not a process ID. */ -extern enum lttng_process_attr_values_status -lttng_process_attr_values_get_pid_at_index( - const struct lttng_process_attr_values *values, - unsigned int index, - pid_t *pid); +LTTNG_EXPORT extern enum lttng_process_attr_values_status +lttng_process_attr_values_get_pid_at_index(const struct lttng_process_attr_values *values, + unsigned int index, + pid_t *pid); /* * Get a user ID process attribute value. @@ -526,11 +504,10 @@ lttng_process_attr_values_get_pid_at_index( * LTTNG_PROCESS_ATTR_VALUES_STATUS_INVALID_TYPE if the process attribute value * is not a user ID. */ -extern enum lttng_process_attr_values_status -lttng_process_attr_values_get_uid_at_index( - const struct lttng_process_attr_values *values, - unsigned int index, - uid_t *uid); +LTTNG_EXPORT extern enum lttng_process_attr_values_status +lttng_process_attr_values_get_uid_at_index(const struct lttng_process_attr_values *values, + unsigned int index, + uid_t *uid); /* * Get a user name process attribute value. @@ -539,11 +516,10 @@ lttng_process_attr_values_get_uid_at_index( * LTTNG_PROCESS_ATTR_VALUES_STATUS_INVALID_TYPE if the process attribute value * is not a user name. */ -extern enum lttng_process_attr_values_status -lttng_process_attr_values_get_user_name_at_index( - const struct lttng_process_attr_values *values, - unsigned int index, - const char **user_name); +LTTNG_EXPORT extern enum lttng_process_attr_values_status +lttng_process_attr_values_get_user_name_at_index(const struct lttng_process_attr_values *values, + unsigned int index, + const char **user_name); /* * Get a group ID process attribute value. @@ -552,11 +528,10 @@ lttng_process_attr_values_get_user_name_at_index( * LTTNG_PROCESS_ATTR_VALUES_STATUS_INVALID_TYPE if the process attribute value * is not a group ID. */ -extern enum lttng_process_attr_values_status -lttng_process_attr_values_get_gid_at_index( - const struct lttng_process_attr_values *values, - unsigned int index, - gid_t *gid); +LTTNG_EXPORT extern enum lttng_process_attr_values_status +lttng_process_attr_values_get_gid_at_index(const struct lttng_process_attr_values *values, + unsigned int index, + gid_t *gid); /* * Get a group name process attribute value. @@ -565,11 +540,10 @@ lttng_process_attr_values_get_gid_at_index( * LTTNG_PROCESS_ATTR_VALUES_STATUS_INVALID_TYPE if the process attribute value * is not a group name. */ -extern enum lttng_process_attr_values_status -lttng_process_attr_values_get_group_name_at_index( - const struct lttng_process_attr_values *values, - unsigned int index, - const char **group_name); +LTTNG_EXPORT extern enum lttng_process_attr_values_status +lttng_process_attr_values_get_group_name_at_index(const struct lttng_process_attr_values *values, + unsigned int index, + const char **group_name); /* The following entry points are deprecated. */ @@ -588,10 +562,8 @@ lttng_process_attr_values_get_group_name_at_index( * * Returns 0 on success, else a negative LTTng error code. */ -extern int lttng_list_tracker_pids(struct lttng_handle *handle, - int *enabled, - int32_t **pids, - size_t *nr_pids); +LTTNG_EXPORT extern int +lttng_list_tracker_pids(struct lttng_handle *handle, int *enabled, int32_t **pids, size_t *nr_pids); /* * Deprecated: see `lttng_process_attr_process_id_tracker_handle_add_pid`. @@ -610,7 +582,7 @@ extern int lttng_list_tracker_pids(struct lttng_handle *handle, * * Returns 0 on success, else a negative LTTng error code. */ -extern int lttng_track_pid(struct lttng_handle *handle, int pid); +LTTNG_EXPORT extern int lttng_track_pid(struct lttng_handle *handle, int pid); /* * Deprecated: see `lttng_process_attr_process_id_tracker_handle_remove_pid`. @@ -629,7 +601,7 @@ extern int lttng_track_pid(struct lttng_handle *handle, int pid); * * Returns 0 on success, else a negative LTTng error code. */ -extern int lttng_untrack_pid(struct lttng_handle *handle, int pid); +LTTNG_EXPORT extern int lttng_untrack_pid(struct lttng_handle *handle, int pid); #ifdef __cplusplus }