Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
xmlNodePtr *events_node)
{
int ret;
+ bool name_set = false;
assert(attr_node);
assert(channel);
strncpy(channel->name, (const char *) content, name_len);
free(content);
+ name_set = true;
} else if (!strcmp((const char *) attr_node->name,
config_element_enabled)) {
xmlChar *content;
/* contexts */
*contexts_node = attr_node;
}
+
+ if (!name_set) {
+ ERR("Encountered a channel with no name attribute.");
+ ret = -LTTNG_ERR_LOAD_INVALID_CONFIG;
+ goto end;
+ }
ret = 0;
end:
return ret;
<!-- Maps to struct lttng_channel -->
<xs:complexType name="channel_type">
<xs:all>
- <xs:element name="name" type="name_type"/>
+ <xs:element name="name" type="name_type" minOccurs="0"/>
<xs:element name="enabled" type="xs:boolean" default="true" minOccurs="0"/>
<xs:element name="overwrite_mode" type="channel_overwrite_mode_type" default="DISCARD" minOccurs="0"/>
<xs:element name="subbuffer_size" type="uint64_type" minOccurs="0"/> <!-- bytes -->