diff options
20 files changed, 60 insertions, 0 deletions
diff --git a/arm/arch-arm-armv7-a-neon/shared/vndk-core/libgui.so b/arm/arch-arm-armv7-a-neon/shared/vndk-core/libgui.so Binary files differindex 19f7608..4383e2c 100755 --- a/arm/arch-arm-armv7-a-neon/shared/vndk-core/libgui.so +++ b/arm/arch-arm-armv7-a-neon/shared/vndk-core/libgui.so diff --git a/arm/arch-arm-armv7-a-neon/shared/vndk-core/libstagefright_omx.so b/arm/arch-arm-armv7-a-neon/shared/vndk-core/libstagefright_omx.so Binary files differindex 47e9930..f1aaf07 100755 --- a/arm/arch-arm-armv7-a-neon/shared/vndk-core/libstagefright_omx.so +++ b/arm/arch-arm-armv7-a-neon/shared/vndk-core/libstagefright_omx.so diff --git a/arm/include/frameworks/native/libs/gui/include/gui/LayerState.h b/arm/include/frameworks/native/libs/gui/include/gui/LayerState.h index 3e57ff6..4ffd324 100644 --- a/arm/include/frameworks/native/libs/gui/include/gui/LayerState.h +++ b/arm/include/frameworks/native/libs/gui/include/gui/LayerState.h @@ -62,6 +62,12 @@ struct client_cache_t { * Used to communicate layer information between SurfaceFlinger and its clients. */ struct layer_state_t { + enum Permission { + ACCESS_SURFACE_FLINGER = 0x1, + ROTATE_SURFACE_FLINGER = 0x2, + INTERNAL_SYSTEM_WINDOW = 0x4, + }; + enum { eLayerHidden = 0x01, // SURFACE_HIDDEN in SurfaceControl.java eLayerOpaque = 0x02, // SURFACE_OPAQUE @@ -128,6 +134,7 @@ struct layer_state_t { status_t read(const Parcel& input); bool hasBufferChanges() const; bool hasValidBuffer() const; + void sanitize(int32_t permissions); struct matrix22_t { float dsdx{0}; diff --git a/arm/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h b/arm/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h index 4164ca3..6eae1f9 100644 --- a/arm/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h +++ b/arm/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h @@ -586,6 +586,14 @@ public: void setAnimationTransaction(); void setEarlyWakeupStart(); void setEarlyWakeupEnd(); + + /** + * Strip the transaction of all permissioned requests, required when + * accepting transactions across process boundaries. + * + * TODO (b/213644870): Remove all permissioned things from Transaction + */ + void sanitize(); }; status_t clearLayerFrameStats(const sp<IBinder>& token) const; diff --git a/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so b/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so Binary files differindex f27fbbe..beaa6c3 100755 --- a/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so +++ b/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so diff --git a/arm64/arch-arm-armv8-a/shared/vndk-core/libstagefright_omx.so b/arm64/arch-arm-armv8-a/shared/vndk-core/libstagefright_omx.so Binary files differindex ca898b7..15cd7f0 100755 --- a/arm64/arch-arm-armv8-a/shared/vndk-core/libstagefright_omx.so +++ b/arm64/arch-arm-armv8-a/shared/vndk-core/libstagefright_omx.so diff --git a/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so b/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so Binary files differindex f9a0d0a..b1fd7ce 100755 --- a/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so +++ b/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so diff --git a/arm64/arch-arm64-armv8-a/shared/vndk-core/libstagefright_omx.so b/arm64/arch-arm64-armv8-a/shared/vndk-core/libstagefright_omx.so Binary files differindex e94e36f..dbfc961 100755 --- a/arm64/arch-arm64-armv8-a/shared/vndk-core/libstagefright_omx.so +++ b/arm64/arch-arm64-armv8-a/shared/vndk-core/libstagefright_omx.so diff --git a/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h b/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h index 3e57ff6..4ffd324 100644 --- a/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h +++ b/arm64/include/frameworks/native/libs/gui/include/gui/LayerState.h @@ -62,6 +62,12 @@ struct client_cache_t { * Used to communicate layer information between SurfaceFlinger and its clients. */ struct layer_state_t { + enum Permission { + ACCESS_SURFACE_FLINGER = 0x1, + ROTATE_SURFACE_FLINGER = 0x2, + INTERNAL_SYSTEM_WINDOW = 0x4, + }; + enum { eLayerHidden = 0x01, // SURFACE_HIDDEN in SurfaceControl.java eLayerOpaque = 0x02, // SURFACE_OPAQUE @@ -128,6 +134,7 @@ struct layer_state_t { status_t read(const Parcel& input); bool hasBufferChanges() const; bool hasValidBuffer() const; + void sanitize(int32_t permissions); struct matrix22_t { float dsdx{0}; diff --git a/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h b/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h index 4164ca3..6eae1f9 100644 --- a/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h +++ b/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h @@ -586,6 +586,14 @@ public: void setAnimationTransaction(); void setEarlyWakeupStart(); void setEarlyWakeupEnd(); + + /** + * Strip the transaction of all permissioned requests, required when + * accepting transactions across process boundaries. + * + * TODO (b/213644870): Remove all permissioned things from Transaction + */ + void sanitize(); }; status_t clearLayerFrameStats(const sp<IBinder>& token) const; diff --git a/x86/arch-x86/shared/vndk-core/libgui.so b/x86/arch-x86/shared/vndk-core/libgui.so Binary files differindex 718669f..1b51e3a 100755 --- a/x86/arch-x86/shared/vndk-core/libgui.so +++ b/x86/arch-x86/shared/vndk-core/libgui.so diff --git a/x86/arch-x86/shared/vndk-core/libstagefright_omx.so b/x86/arch-x86/shared/vndk-core/libstagefright_omx.so Binary files differindex 27be50b..c4d45af 100755 --- a/x86/arch-x86/shared/vndk-core/libstagefright_omx.so +++ b/x86/arch-x86/shared/vndk-core/libstagefright_omx.so diff --git a/x86/include/frameworks/native/libs/gui/include/gui/LayerState.h b/x86/include/frameworks/native/libs/gui/include/gui/LayerState.h index 3e57ff6..4ffd324 100644 --- a/x86/include/frameworks/native/libs/gui/include/gui/LayerState.h +++ b/x86/include/frameworks/native/libs/gui/include/gui/LayerState.h @@ -62,6 +62,12 @@ struct client_cache_t { * Used to communicate layer information between SurfaceFlinger and its clients. */ struct layer_state_t { + enum Permission { + ACCESS_SURFACE_FLINGER = 0x1, + ROTATE_SURFACE_FLINGER = 0x2, + INTERNAL_SYSTEM_WINDOW = 0x4, + }; + enum { eLayerHidden = 0x01, // SURFACE_HIDDEN in SurfaceControl.java eLayerOpaque = 0x02, // SURFACE_OPAQUE @@ -128,6 +134,7 @@ struct layer_state_t { status_t read(const Parcel& input); bool hasBufferChanges() const; bool hasValidBuffer() const; + void sanitize(int32_t permissions); struct matrix22_t { float dsdx{0}; diff --git a/x86/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h b/x86/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h index 4164ca3..6eae1f9 100644 --- a/x86/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h +++ b/x86/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h @@ -586,6 +586,14 @@ public: void setAnimationTransaction(); void setEarlyWakeupStart(); void setEarlyWakeupEnd(); + + /** + * Strip the transaction of all permissioned requests, required when + * accepting transactions across process boundaries. + * + * TODO (b/213644870): Remove all permissioned things from Transaction + */ + void sanitize(); }; status_t clearLayerFrameStats(const sp<IBinder>& token) const; diff --git a/x86_64/arch-x86-x86_64/shared/vndk-core/libgui.so b/x86_64/arch-x86-x86_64/shared/vndk-core/libgui.so Binary files differindex 709bdb7..4a51cf7 100755 --- a/x86_64/arch-x86-x86_64/shared/vndk-core/libgui.so +++ b/x86_64/arch-x86-x86_64/shared/vndk-core/libgui.so diff --git a/x86_64/arch-x86-x86_64/shared/vndk-core/libstagefright_omx.so b/x86_64/arch-x86-x86_64/shared/vndk-core/libstagefright_omx.so Binary files differindex af15ab8..a4f0968 100755 --- a/x86_64/arch-x86-x86_64/shared/vndk-core/libstagefright_omx.so +++ b/x86_64/arch-x86-x86_64/shared/vndk-core/libstagefright_omx.so diff --git a/x86_64/arch-x86_64/shared/vndk-core/libgui.so b/x86_64/arch-x86_64/shared/vndk-core/libgui.so Binary files differindex e64fac5..44d8e89 100755 --- a/x86_64/arch-x86_64/shared/vndk-core/libgui.so +++ b/x86_64/arch-x86_64/shared/vndk-core/libgui.so diff --git a/x86_64/arch-x86_64/shared/vndk-core/libstagefright_omx.so b/x86_64/arch-x86_64/shared/vndk-core/libstagefright_omx.so Binary files differindex 6f3c289..8868eb9 100755 --- a/x86_64/arch-x86_64/shared/vndk-core/libstagefright_omx.so +++ b/x86_64/arch-x86_64/shared/vndk-core/libstagefright_omx.so diff --git a/x86_64/include/frameworks/native/libs/gui/include/gui/LayerState.h b/x86_64/include/frameworks/native/libs/gui/include/gui/LayerState.h index 3e57ff6..4ffd324 100644 --- a/x86_64/include/frameworks/native/libs/gui/include/gui/LayerState.h +++ b/x86_64/include/frameworks/native/libs/gui/include/gui/LayerState.h @@ -62,6 +62,12 @@ struct client_cache_t { * Used to communicate layer information between SurfaceFlinger and its clients. */ struct layer_state_t { + enum Permission { + ACCESS_SURFACE_FLINGER = 0x1, + ROTATE_SURFACE_FLINGER = 0x2, + INTERNAL_SYSTEM_WINDOW = 0x4, + }; + enum { eLayerHidden = 0x01, // SURFACE_HIDDEN in SurfaceControl.java eLayerOpaque = 0x02, // SURFACE_OPAQUE @@ -128,6 +134,7 @@ struct layer_state_t { status_t read(const Parcel& input); bool hasBufferChanges() const; bool hasValidBuffer() const; + void sanitize(int32_t permissions); struct matrix22_t { float dsdx{0}; diff --git a/x86_64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h b/x86_64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h index 4164ca3..6eae1f9 100644 --- a/x86_64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h +++ b/x86_64/include/frameworks/native/libs/gui/include/gui/SurfaceComposerClient.h @@ -586,6 +586,14 @@ public: void setAnimationTransaction(); void setEarlyWakeupStart(); void setEarlyWakeupEnd(); + + /** + * Strip the transaction of all permissioned requests, required when + * accepting transactions across process boundaries. + * + * TODO (b/213644870): Remove all permissioned things from Transaction + */ + void sanitize(); }; status_t clearLayerFrameStats(const sp<IBinder>& token) const; |