Hide Forgot
Created attachment 1702118 [details] error message Description of problem: When passing a very large XML string to cr_xml_parser_generic_from_string, an error message is printed. In this case the XML is from filelists for the "flat-remix-icon-theme" package present in Fedora 30 and 31 (and probably others but I haven't looked). This package has many tens of thousands of icon files. Version-Release number of selected component (if applicable): 0.16.0 How reproducible: Always Additional info: It looks like the file-based XML parsing function uses a buffer of a bounded size whereas the string-based XML parsing function simply passes along the entire string to xmlParseChunk() https://github.com/rpm-software-management/createrepo_c/blob/7fbb4f9258e6d2f00b4add4da05f34adf43078db/src/xml_parser.c#L252
You are correct, the buffer size is the problem. Thanks for the investigation! Here is a PR that should help: https://github.com/rpm-software-management/createrepo_c/pull/225 It also contains a python unit test.
I tested your branch against the case where we initially discovered this and I can confirm that the patch does fix the issue for us, thank you!
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (createrepo_c bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2020:4700