diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f09de7d..1215d15c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -56,6 +56,7 @@ Users may have to change how they access the system ### Corrected Bugs +* Fixed: [clixon_netconf errors on client XML Declaration with valid encoding spec](https://github.com/clicon/clixon/issues/250) * Fixed: Yang patterns: \n and other non-printable characters were broken * Example: Clixon interpereted them two characters: `\\ n` instead of ascii 10 * Fixed: The auto-cli identityref did not expand identities in grouping/usecases properly. diff --git a/lib/src/clixon_xml_parse.y b/lib/src/clixon_xml_parse.y index 9bfd6d00..19683ccb 100644 --- a/lib/src/clixon_xml_parse.y +++ b/lib/src/clixon_xml_parse.y @@ -196,7 +196,7 @@ static int xml_parse_encoding(clixon_xml_yacc *xy, char *enc) { - if(strcmp(enc, "UTF-8")){ + if(strcasecmp(enc, "UTF-8")){ clicon_err(OE_XML, XMLPARSE_ERRNO, "Unsupported XML encoding: %s expected UTF-8", enc); free(enc); return -1; diff --git a/test/test_xml.sh b/test/test_xml.sh index 2d6f57d6..65d76646 100755 --- a/test/test_xml.sh +++ b/test/test_xml.sh @@ -127,6 +127,10 @@ expecteof "$clixon_util_xml -ol o" 255 '' '' 2> /dev/nul new "XMLdecl version + encoding" expecteof "$clixon_util_xml -o" 0 '' '' +# XML processors SHOULD match character encoding names in a case-insensitive way +new "XMLdecl encoding case-insensitive" +expecteof "$clixon_util_xml -o" 0 '' '' + new "XMLdecl version + wrong encoding" expecteof "$clixon_util_xml -o" 255 '' '' 2> /dev/null