skia2/gn
John Stiles 7cde28909f Enforce basic limits on function stack size in SkSL.
Functions that declare variables totaling more than 100,000 slots will
now generate an error.

This is only a partial mitigation to the problem, as a sophisticated
attack could still chain/nest multiple functions together to consume
extremely large amounts of stack. However, this mitigation is still more
sophisticated than our peers; both WebGL and glslang are susceptible to
similar problems, and in the general case (ES3+ with full flow control)
it's intractable.

Change-Id: I153c75267c017a23f59fe9e59f6e391197ee6101
Bug: oss-fuzz:40304, oss-fuzz:40694
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/467759
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-11-04 18:17:44 +00:00
..
portable Separate general defaults from Skia defaults 2021-03-22 15:30:56 +00:00
skia Add Android HWAddress Sanitizer tasks. 2021-10-21 15:22:44 +00:00
toolchain
__init__.py
bench.gni [graphite] Add an IntersectionTree class 2021-10-19 19:45:01 +00:00
BUILDCONFIG.gn Separate general defaults from Skia defaults 2021-03-22 15:30:56 +00:00
call.py
checkdir.py
checkpath.py
codesign_ios.py
compile_ib_files.py
compile_sksl_tests.py Remove (unused) geometry shader support 2021-08-27 19:41:10 +00:00
copy_git_directory.py
core.gni Move GrBlockAllocator and GrTBlockList to src/core/ 2021-08-25 13:21:32 +00:00
cp.py
dehydrate_sksl.py
effects_imagefilters.gni Implement separate crop filter 2021-09-24 20:18:36 +00:00
effects.gni Arithmetic blender 2021-07-08 17:06:17 +00:00
find_headers.py
find_msvc.py
find_xcode_sysroot.py
flutter_defines.gni rm flutter support for filterquality 2021-07-17 14:39:38 +00:00
fuchsia_defines.gni
gen_plist_ios.py
gm.gni [graphite] Partially connect Recorder, DrawBufferManager, DrawPass, and UniformCache. 2021-10-29 22:31:34 +00:00
gn_meta_sln.py
gn_to_bp_utils.py Update gn_to_bp_utils to support python3 2021-08-03 17:52:43 +00:00
gn_to_bp.py Remove mssse3 flag of host builds for Android skia 2021-09-22 18:36:20 +00:00
gn_to_cmake.py Fix CMakeLists to find Emscripten headers 2021-04-16 16:45:22 +00:00
gpu.gni Reland "Lift recursive curve culling out of tessellators" 2021-10-29 21:59:30 +00:00
graphite.gni [graphite] Add caches for uniformdata and programs 2021-10-28 17:02:57 +00:00
highest_version_dir.py
ios.gni Fix iOS build for skpinfo. 2021-06-18 20:53:06 +00:00
is_clang.py
make_gm_gni.py
opts.gni
pdf.gni
push_to_android.py
rm.py
run_sksllex.py
samples.gni Prepare headers for making all ops V1-only 2021-08-12 15:09:11 +00:00
shared_sources.gni Update sprint to graphite name 2021-09-21 16:44:10 +00:00
skia.gni Update sprint to graphite name 2021-09-21 16:44:10 +00:00
sksl_tests.gni Enforce basic limits on function stack size in SkSL. 2021-11-04 18:17:44 +00:00
sksl.gni Removed the final remnants of IRGenerator 2021-10-19 13:17:01 +00:00
tests.gni [graphite] Add caches for uniformdata and programs 2021-10-28 17:02:57 +00:00
utils.gni OrderedFontMgr utility 2021-04-27 18:10:41 +00:00
xps.gni