X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fsessiond-comm%2Fagent.h;h=92ac068fba0fc324514877bcf426b731deddd27f;hp=eced35185034bdc6fb7332e34303c5781b486e05;hb=7bd95aee4660c6419a4a65429fc27754481e7e90;hpb=2f2540d783c712f6100e53d1a9d28329ba286216 diff --git a/src/common/sessiond-comm/agent.h b/src/common/sessiond-comm/agent.h index eced35185..92ac068fb 100644 --- a/src/common/sessiond-comm/agent.h +++ b/src/common/sessiond-comm/agent.h @@ -1,45 +1,41 @@ /* - * Copyright (C) 2013 - David Goulet + * Copyright (C) 2013 David Goulet + * Copyright (C) 2016 Jérémie Galarneau * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License, version 2 only, as - * published by the Free Software Foundation. + * SPDX-License-Identifier: GPL-2.0-only * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 51 - * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef AGENT_COMM #define AGENT_COMM -#define _GNU_SOURCE #include +#include #include /* * Command value passed in the header. */ enum lttcomm_agent_command { - AGENT_CMD_LIST = 1, - AGENT_CMD_ENABLE = 2, - AGENT_CMD_DISABLE = 3, - AGENT_CMD_REG_DONE = 4, /* End registration process. */ + AGENT_CMD_LIST = 1, + AGENT_CMD_ENABLE = 2, + AGENT_CMD_DISABLE = 3, + AGENT_CMD_REG_DONE = 4, /* End registration process. */ + AGENT_CMD_APP_CTX_ENABLE = 5, + AGENT_CMD_APP_CTX_DISABLE = 6, }; /* - * Return code from the Java agent. + * Return codes from the agent. */ enum lttcomm_agent_ret_code { - AGENT_RET_CODE_SUCCESS = 1, - AGENT_RET_CODE_INVALID = 2, - AGENT_RET_CODE_UNKNOWN_NAME = 3, + /* Success, assumed to be the first entry */ + AGENT_RET_CODE_SUCCESS = 1, + /* Invalid command */ + AGENT_RET_CODE_INVALID = 2, + /* Unknown logger name */ + AGENT_RET_CODE_UNKNOWN_NAME = 3, AGENT_RET_CODE_NR, }; @@ -53,23 +49,25 @@ struct lttcomm_agent_hdr { } LTTNG_PACKED; /* - * Enable event command payload. + * Enable event command payload. Will be immediately followed by the + * variable-length string representing the filter expression. */ -struct lttcomm_agent_enable { - uint32_t loglevel; +struct lttcomm_agent_enable_event { + uint32_t loglevel_value; uint32_t loglevel_type; char name[LTTNG_SYMBOL_NAME_LEN]; + uint32_t filter_expression_length; } LTTNG_PACKED; /* * Disable event command payload. */ -struct lttcomm_agent_disable { +struct lttcomm_agent_disable_event { char name[LTTNG_SYMBOL_NAME_LEN]; } LTTNG_PACKED; /* - * Generic reply coming from the Java Agent. + * Generic reply coming from the agent. */ struct lttcomm_agent_generic_reply { uint32_t ret_code; @@ -84,7 +82,7 @@ struct lttcomm_agent_list_reply_hdr { } LTTNG_PACKED; /* - * List command reply payload coming from the Java Agent. + * List command reply payload coming from the agent. */ struct lttcomm_agent_list_reply { uint32_t nb_event;