/* * Check if session daemon is alive. * * Return 1 if alive or 0 if not. * On error returns a negative value. */ int lttng_session_daemon_alive(void) { int ret; ret = set_session_daemon_path(); if (ret < 0) { /* Error */ return ret; } if (*sessiond_sock_path == '\0') { /* * No socket path set. Weird error which means the constructor was not * called. */ assert(0); } ret = try_connect_sessiond(sessiond_sock_path); if (ret < 0) { /* Not alive */ return 0; } /* Is alive */ return 1; }
/* * Connect to the LTTng session daemon. * * On success, return 0. On error, return -1. */ static int connect_sessiond(void) { int ret; /* Don't try to connect if already connected. */ if (connected) { return 0; } ret = set_session_daemon_path(); if (ret < 0) { goto error; } /* Connect to the sesssion daemon */ ret = lttcomm_connect_unix_sock(sessiond_sock_path); if (ret < 0) { goto error; } sessiond_socket = ret; connected = 1; return 0; error: return -1; }
/* * Connect to the LTTng session daemon. * * On success, return 0. On error, return -1. */ static int connect_sessiond(void) { int ret; ret = set_session_daemon_path(); if (ret < 0) { goto error; } /* Connect to the sesssion daemon */ ret = lttcomm_connect_unix_sock(sessiond_sock_path); if (ret < 0) { goto error; } sessiond_socket = ret; connected = 1; return 0; error: return -1; }