X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=include%2Flttng%2Fsession.h;h=4e515ad7703bc03b3bb5530118063f29ac7051f5;hp=c87efbd1d1b54c7291b76ead401ddb0498220d7c;hb=36d2e35df61339e4394e84ad9790b984d259e0f0;hpb=d7ba13889c8692b14f99238ddf2721ed78df89d2 diff --git a/include/lttng/session.h b/include/lttng/session.h index c87efbd1d..4e515ad77 100644 --- a/include/lttng/session.h +++ b/include/lttng/session.h @@ -32,7 +32,7 @@ extern "C" { */ #define LTTNG_SESSION_PADDING1 12 struct lttng_session { - char name[NAME_MAX]; + char name[LTTNG_NAME_MAX]; /* The path where traces are written */ char path[PATH_MAX]; uint32_t enabled; /* enabled/started: 1, disabled/stopped: 0 */ @@ -116,6 +116,39 @@ extern int lttng_list_sessions(struct lttng_session **sessions); extern int lttng_set_session_shm_path(const char *session_name, const char *shm_path); +/* + * Add PID to session tracker. + * + * A pid argument >= 0 adds the PID to the session tracker. + * A pid argument of -1 means "track all PIDs". + * + * Return 0 on success else a negative LTTng error code. + */ +extern int lttng_track_pid(struct lttng_handle *handle, int pid); + +/* + * Remove PID from session tracker. + * + * A pid argument >= 0 removes the PID from the session tracker. + * A pid argument of -1 means "untrack all PIDs". + * + * Return 0 on success else a negative LTTng error code. + */ +extern int lttng_untrack_pid(struct lttng_handle *handle, int pid); + +/* + * List PIDs in the tracker. + * + * enabled is set to whether the PID tracker is enabled. + * pids is set to an allocated array of PIDs currently tracked. On + * success, pids must be freed by the caller. + * nr_pids is set to the number of entries contained by the pids array. + * + * 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); + #ifdef __cplusplus } #endif