WebGL converts freely from WebGLintptr to GLintptr, which truncates on 32bit (also WebGLsizeiptr->GLsizeiptr)
Categories
(Core :: Graphics: CanvasWebGL, enhancement, P1)
Tracking
()
People
(Reporter: jgilbert, Assigned: jgilbert)
References
Details
(Keywords: sec-audit, Whiteboard: gfx-noted [post-critsmash-triage][adv-main68-])
Attachments
(1 file)
This isn't necessarily dangerous, but it is risky.
Best case, we just truncate the requests consistently, which is incorrect, but safe.
Worst case would be if we're inconsistent.
Just to be safe, marking this sec, but it's probably not an issue.
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Updated•6 years ago
|
Updated•6 years ago
|
Assignee | ||
Comment 1•6 years ago
|
||
Comment 2•6 years ago
|
||
Landed: https://hg.mozilla.org/integration/mozilla-inbound/rev/bdc40c000b29ba024a7014d3ff5fc31d98e608df
Backed out for build bustages in WebGLTypes.h: https://hg.mozilla.org/integration/mozilla-inbound/rev/36570e7c5eb7191101d786823427ed70707e5606
Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=239227194&repo=mozilla-inbound
[task 2019-04-10T00:11:25.088Z] 00:11:25 INFO - In file included from /builds/worker/workspace/build/src/dom/canvas/TexUnpackBlob.h:12:
[task 2019-04-10T00:11:25.089Z] 00:11:25 ERROR - /builds/worker/workspace/build/src/dom/canvas/WebGLTypes.h:42:5: error: static_assert failed due to requirement 'std::numeric_limits<unsigned long long>::max() <= std::numeric_limits<unsigned int>::max()' "SrcT must be narrower than DestT."
[task 2019-04-10T00:11:25.089Z] 00:11:25 INFO - static_assert(
[task 2019-04-10T00:11:25.089Z] 00:11:25 INFO - ^
[task 2019-04-10T00:11:25.089Z] 00:11:25 INFO - /builds/worker/workspace/build/src/dom/canvas/WebGLBuffer.cpp:109:28: note: in instantiation of function template specialization 'mozilla::ForbidNarrowing<unsigned int>::ForbidNarrowing<unsigned long long>' requested here
[task 2019-04-10T00:11:25.090Z] 00:11:25 INFO - newIndexCache = malloc(size);
[task 2019-04-10T00:11:25.090Z] 00:11:25 INFO - ^
[task 2019-04-10T00:11:25.090Z] 00:11:25 INFO - 1 error generated.
[task 2019-04-10T00:11:25.090Z] 00:11:25 INFO - /builds/worker/workspace/build/src/config/rules.mk:805: recipe for target 'Unified_cpp_dom_canvas1.o' failed
[task 2019-04-10T00:11:25.091Z] 00:11:25 ERROR - make[4]: *** [Unified_cpp_dom_canvas1.o] Error 1
[task 2019-04-10T00:11:25.091Z] 00:11:25 INFO - make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/canvas'
[task 2019-04-10T00:11:25.091Z] 00:11:25 INFO - make[4]: *** Waiting for unfinished jobs....
Comment 3•6 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/256eff8cc0f8c1a7c3a37dc75353474c3309f900
https://hg.mozilla.org/mozilla-central/rev/256eff8cc0f8
Assignee | ||
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Updated•5 years ago
|
Updated•4 years ago
|
Description
•