diff options
Diffstat (limited to 'src/expr/log.c')
-rw-r--r-- | src/expr/log.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/expr/log.c b/src/expr/log.c index 9ff2d32..0872ee0 100644 --- a/src/expr/log.c +++ b/src/expr/log.c @@ -156,16 +156,13 @@ static int nft_rule_expr_log_xml_parse(struct nft_rule_expr *e, mxml_node_t *tre { #ifdef XML_PARSING struct nft_expr_log *log = nft_expr_data(e); - mxml_node_t *node = NULL; + const char *prefix; - node = mxmlFindElement(tree, tree, "prefix", NULL, NULL, - MXML_DESCEND_FIRST); - if (node == NULL) { - errno = EINVAL; + prefix = nft_mxml_str_parse(tree, "prefix", MXML_DESCEND_FIRST); + if (prefix == NULL) return -1; - } - log->prefix = strdup(node->child->value.opaque); + log->prefix = strdup(prefix); e->flags |= (1 << NFT_EXPR_LOG_PREFIX); if (nft_mxml_num_parse(tree, "group", MXML_DESCEND_FIRST, BASE_DEC, |