Package: libtinyxml2.6.2
Version: 2.6.2-2
Usertags: afl

TinyXML hangs forever (or at least for one minute :-P) when trying to load the attached file:

$ make prettyprintxml CXXFLAGS="-g -O2 -Wall" LDFLAGS=-ltinyxml
g++ -g -O2 -Wall  -ltinyxml  prettyprintxml.cc   -o prettyprintxml
$ ./prettyprintxml hang.xml
[nothing happens...]


This bug was found using American fuzzy lop:
http://lcamtuf.coredump.cx/afl/
(available in Debian experimental)

-- System Information:
Debian Release: 8.0
 APT prefers unstable
 APT policy: (990, 'unstable'), (500, 'experimental')
Architecture: i386 (x86_64)
Foreign Architectures: amd64

Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=pl_PL.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages libtinyxml2.6.2:i386 depends on:
ii  libc6              2.19-15
ii  libgcc1            1:5-20150307-1
ii  libstdc++6         5-20150307-1
ii  multiarch-support  2.19-15

--
Jakub Wilk
#include <stdio.h>

#define TIXML_USE_STL 1
#include <tinyxml.h>

int main(int argc, char ** argv)
{
	if (argc != 2) {
		fprintf(stderr, "Usage: %s <file>\n", argv[0]);
		return 1;
	}
	TiXmlDocument doc(argv[1]);
	if (!doc.LoadFile()) {
		fprintf(stderr, "invalid XML\n");
		return 1;
	}
	TiXmlPrinter printer;
	doc.Accept(&printer);
	puts(printer.CStr());
	return 0;
}

Attachment: hang.xml
Description: XML document

Reply via email to