[Open-scap] [PATCH 1/2] trac#167: Escape content of xccdf:value
Martin Preisler
mpreisle at redhat.com
Thu Aug 23 12:40:26 UTC 2012
Merged, thanks!
See de0f8bb2791e69ed29593889835dc219a46e9b48.
--
Martin Preisler
----- Original Message -----
> From: "Simon Lukasik" <slukasik at redhat.com>
> To: open-scap-list at redhat.com
> Sent: Thursday, August 23, 2012 12:52:22 PM
> Subject: [Open-scap] [PATCH 1/2] trac#167: Escape content of xccdf:value
>
> Subsequent xmlNodeSetContent call expects XML CDATA,
> thus we need the string to be escaped first.
>
> Addressing (suppose <xccdf:value>R&B</xccdf:value>):
> error : unterminated entity reference B
> ---
> src/XCCDF/value.c | 4 +++-
> 1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/src/XCCDF/value.c b/src/XCCDF/value.c
> index c499df4..01044a5 100644
> --- a/src/XCCDF/value.c
> +++ b/src/XCCDF/value.c
> @@ -153,7 +153,9 @@ static void xccdf_unit_node(struct oscap_list
> *list, xccdf_value_type_t type, co
> if (!given) return;
> xmlNode *node = xmlNewNode(ns, BAD_CAST elname);
> if ((selector) && (strlen(selector) > 0)) xmlNewProp(node, BAD_CAST
> "selector", BAD_CAST selector);
> - xmlNodeSetContent(node, BAD_CAST u);
> + xmlChar *escaped = xmlEncodeSpecialChars(NULL, BAD_CAST u);
> + xmlNodeSetContent(node, escaped);
> + xmlFree(escaped);
> oscap_list_add(list, node);
> }
>
> --
> 1.7.7.6
>
> _______________________________________________
> Open-scap-list mailing list
> Open-scap-list at redhat.com
> https://www.redhat.com/mailman/listinfo/open-scap-list
>
More information about the Open-scap-list
mailing list