DescriptionRe-enable Object.observe and add enforcement for security invariants.
This patch reverts r21062 which disabled Object.observe and the relevant tests.
It also adds enforcement for the following three invariants:
1) No observer may receive a change record describing changes to an object which is in different security origin (context have differing security tokens)
2) No observer may receive a change record whose context's security token is different from that of the object described by the change.
3) Object.getNotifier will return null if the caller and the provided object are in differing security origins
Further, it ensures that the global object can never be observed nor a notifier retrieved for it.
Tests are included.
R=verwaest@chromium.org, rossberg
LOG=Y
Committed: https://code.google.com/p/v8/source/detail?r=21122
Patch Set 1 #Patch Set 2 : cleanup #
Total comments: 22
Patch Set 3 : last #Patch Set 4 : sync #Patch Set 5 : sync #Patch Set 6 : throw on Observe or getNotifier with global object #
Total comments: 1
Patch Set 7 : cr comment #
Messages
Total messages: 9 (0 generated)
|