[igt-dev] [PATCH i-g-t v3] tests/testdisplay: fix heap overflow
Petri Latvala
petri.latvala at intel.com
Wed Mar 20 12:17:49 UTC 2019
On Wed, Mar 20, 2019 at 12:00:13PM +0000, Chris Wilson wrote:
> Quoting Simon Ser (2019-03-20 11:48:57)
> > + argv0 = strdup(argv[0]);
> > + igt_assert(argv0);
> > + exec_path = dirname(argv0);
> > ret = chdir(exec_path);
> > igt_assert_eq(ret, 0);
>
> One should ask Petri if igt_assert_eq() is even legal inside the helper
> (i.e. outside of igt_main and igt_subtest).
*opens testdisplay.c*
*finds main()*
*runs away screaming*
Short answer: It's not legal there
Long answer:
It would be legal there if appropriate steps are taken to ensure IGT
core knows it's a test without subtests. testdisplay, being a dinosaur
that hasn't realized it's pushing up the daisies, doesn't use
igt_simple_main, or call igt_simple_init_parse_opts, or otherwise do
the common things any recently written test is doing.
It's also calling igt_skip_on_simulation in just about the only
possible context where it's not legal.
Note to self: Hurry up with removing all custom main functions.
--
Petri Latvala
More information about the igt-dev
mailing list