mirror of
https://github.com/dgibson/dtc.git
synced 2025-10-13 16:27:39 -04:00
Mirror of DTC
In order to work with preprocessed dts files more easily, dts will parse line number information in the form emitted by cpp. Anton Blanchard (using a fuzzer) reported that including a line number directive with a nul character (a literal nul in the input file, not a \0 sequence) would cause dtc to SEGV. I spotted several more problems on examining the code: * It modified yytext in place which seems to work, but is ugly and I'm not sure if it's safe on all lex/flex versions * The regexp used in the lexer to recognize line number information accepts strings with escape characters, but it won't process these escapes. - GNU cpp at least, will generate \ escapes in line number information, at least with files containing " or \ in the name This patch reworks the handling of line number information to address these problems. \ escapes should now be handled directly. nuls in file names (either with a literal nul in the input file, or with a \0 escape sequence) are still not permitted, but will now result in a lexical error rather than a SEGV. Reported-by: Anton Blanchard <anton@samba.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au> |
||
---|---|---|
Documentation | ||
libfdt | ||
scripts | ||
tests | ||
.gitignore | ||
.travis.yml | ||
checks.c | ||
convert-dtsv0-lexer.l | ||
data.c | ||
dtc-lexer.l | ||
dtc-parser.y | ||
dtc.c | ||
dtc.h | ||
dtdiff | ||
fdtdump.c | ||
fdtget.c | ||
fdtput.c | ||
flattree.c | ||
fstree.c | ||
GPL | ||
livetree.c | ||
Makefile | ||
Makefile.convert-dtsv0 | ||
Makefile.dtc | ||
Makefile.utils | ||
README | ||
README.license | ||
srcpos.c | ||
srcpos.h | ||
TODO | ||
treesource.c | ||
util.c | ||
util.h |
The source tree contains the Device Tree Compiler (dtc) toolchain for working with device tree source and binary files and also libfdt, a utility library for reading and manipulating the binary format. DTC and LIBFDT are maintained by: David Gibson <david@gibson.dropbear.id.au> Jon Loeliger <jdl@jdl.com> Mailing list ------------ The following list is for discussion about dtc and libfdt implementation mailto:devicetree-compiler@vger.kernel.org Core device tree bindings are discussed on the devicetree-spec list: mailto:devicetree-spec@vger.kernel.org Home Page --------- http://devicetree.org/Device_Tree_Compiler