Snap for 9430503 from 892654c523d0fd7ffef5c559f89a700fee54ff06 to t-keystone-qcom-release

Change-Id: I189ac90da9b823dd41a85527e35cb5b6cb5fa4ca
diff --git a/arm/arch-arm-armv7-a-neon/shared/vndk-core/libexpat.so b/arm/arch-arm-armv7-a-neon/shared/vndk-core/libexpat.so
index 9d01293..6b43a9b 100755
--- a/arm/arch-arm-armv7-a-neon/shared/vndk-core/libexpat.so
+++ b/arm/arch-arm-armv7-a-neon/shared/vndk-core/libexpat.so
Binary files differ
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
index 19f7608..d6e27cf 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
Binary files differ
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
index 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
Binary files differ
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 @@
  * 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 @@
     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 @@
         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/arm/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h b/arm/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
index 9ee4636..ed14ec6 100644
--- a/arm/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
+++ b/arm/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
@@ -118,12 +118,13 @@
     mutable sp<Surface>         mSurfaceData;
     mutable sp<BLASTBufferQueue> mBbq;
     mutable sp<SurfaceControl> mBbqChild;
-    int32_t mLayerId;
-    uint32_t mTransformHint;
-    uint32_t mWidth;
-    uint32_t mHeight;
-    PixelFormat mFormat;
-    uint32_t mCreateFlags;
+
+    int32_t mLayerId = 0;
+    uint32_t mTransformHint = 0;
+    uint32_t mWidth = 0;
+    uint32_t mHeight = 0;
+    PixelFormat mFormat = PIXEL_FORMAT_NONE;
+    uint32_t mCreateFlags = 0;
 };
 
 }; // namespace android
diff --git a/arm64/arch-arm-armv8-a/shared/vndk-core/libexpat.so b/arm64/arch-arm-armv8-a/shared/vndk-core/libexpat.so
index ebac5cd..6619f37 100755
--- a/arm64/arch-arm-armv8-a/shared/vndk-core/libexpat.so
+++ b/arm64/arch-arm-armv8-a/shared/vndk-core/libexpat.so
Binary files differ
diff --git a/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so b/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so
index f27fbbe..837a7db 100755
--- a/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so
+++ b/arm64/arch-arm-armv8-a/shared/vndk-core/libgui.so
Binary files differ
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
index 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
Binary files differ
diff --git a/arm64/arch-arm64-armv8-a/shared/vndk-core/libexpat.so b/arm64/arch-arm64-armv8-a/shared/vndk-core/libexpat.so
index 4bb9115..6470b61 100755
--- a/arm64/arch-arm64-armv8-a/shared/vndk-core/libexpat.so
+++ b/arm64/arch-arm64-armv8-a/shared/vndk-core/libexpat.so
Binary files differ
diff --git a/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so b/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so
index f9a0d0a..00ff3c4 100755
--- a/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so
+++ b/arm64/arch-arm64-armv8-a/shared/vndk-core/libgui.so
Binary files differ
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
index 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
Binary files differ
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 @@
  * 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 @@
     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 @@
         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/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h b/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
index 9ee4636..ed14ec6 100644
--- a/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
+++ b/arm64/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
@@ -118,12 +118,13 @@
     mutable sp<Surface>         mSurfaceData;
     mutable sp<BLASTBufferQueue> mBbq;
     mutable sp<SurfaceControl> mBbqChild;
-    int32_t mLayerId;
-    uint32_t mTransformHint;
-    uint32_t mWidth;
-    uint32_t mHeight;
-    PixelFormat mFormat;
-    uint32_t mCreateFlags;
+
+    int32_t mLayerId = 0;
+    uint32_t mTransformHint = 0;
+    uint32_t mWidth = 0;
+    uint32_t mHeight = 0;
+    PixelFormat mFormat = PIXEL_FORMAT_NONE;
+    uint32_t mCreateFlags = 0;
 };
 
 }; // namespace android
diff --git a/x86/arch-x86/shared/vndk-core/libexpat.so b/x86/arch-x86/shared/vndk-core/libexpat.so
index 4b7591c..310d780 100755
--- a/x86/arch-x86/shared/vndk-core/libexpat.so
+++ b/x86/arch-x86/shared/vndk-core/libexpat.so
Binary files differ
diff --git a/x86/arch-x86/shared/vndk-core/libgui.so b/x86/arch-x86/shared/vndk-core/libgui.so
index 718669f..8b949dd 100755
--- a/x86/arch-x86/shared/vndk-core/libgui.so
+++ b/x86/arch-x86/shared/vndk-core/libgui.so
Binary files differ
diff --git a/x86/arch-x86/shared/vndk-core/libstagefright_omx.so b/x86/arch-x86/shared/vndk-core/libstagefright_omx.so
index 27be50b..c4d45af 100755
--- a/x86/arch-x86/shared/vndk-core/libstagefright_omx.so
+++ b/x86/arch-x86/shared/vndk-core/libstagefright_omx.so
Binary files differ
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 @@
  * 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 @@
     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 @@
         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/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h b/x86/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
index 9ee4636..ed14ec6 100644
--- a/x86/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
+++ b/x86/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
@@ -118,12 +118,13 @@
     mutable sp<Surface>         mSurfaceData;
     mutable sp<BLASTBufferQueue> mBbq;
     mutable sp<SurfaceControl> mBbqChild;
-    int32_t mLayerId;
-    uint32_t mTransformHint;
-    uint32_t mWidth;
-    uint32_t mHeight;
-    PixelFormat mFormat;
-    uint32_t mCreateFlags;
+
+    int32_t mLayerId = 0;
+    uint32_t mTransformHint = 0;
+    uint32_t mWidth = 0;
+    uint32_t mHeight = 0;
+    PixelFormat mFormat = PIXEL_FORMAT_NONE;
+    uint32_t mCreateFlags = 0;
 };
 
 }; // namespace android
diff --git a/x86_64/arch-x86-x86_64/shared/vndk-core/libexpat.so b/x86_64/arch-x86-x86_64/shared/vndk-core/libexpat.so
index a83f04d..ae24e1c 100755
--- a/x86_64/arch-x86-x86_64/shared/vndk-core/libexpat.so
+++ b/x86_64/arch-x86-x86_64/shared/vndk-core/libexpat.so
Binary files differ
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
index 709bdb7..0a6d33d 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
Binary files differ
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
index 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
Binary files differ
diff --git a/x86_64/arch-x86_64/shared/vndk-core/libexpat.so b/x86_64/arch-x86_64/shared/vndk-core/libexpat.so
index 3d3aeba..53e2ca1 100755
--- a/x86_64/arch-x86_64/shared/vndk-core/libexpat.so
+++ b/x86_64/arch-x86_64/shared/vndk-core/libexpat.so
Binary files differ
diff --git a/x86_64/arch-x86_64/shared/vndk-core/libgui.so b/x86_64/arch-x86_64/shared/vndk-core/libgui.so
index e64fac5..fbfa6d8 100755
--- a/x86_64/arch-x86_64/shared/vndk-core/libgui.so
+++ b/x86_64/arch-x86_64/shared/vndk-core/libgui.so
Binary files differ
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
index 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
Binary files differ
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 @@
  * 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 @@
     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 @@
         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/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h b/x86_64/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
index 9ee4636..ed14ec6 100644
--- a/x86_64/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
+++ b/x86_64/include/frameworks/native/libs/gui/include/gui/SurfaceControl.h
@@ -118,12 +118,13 @@
     mutable sp<Surface>         mSurfaceData;
     mutable sp<BLASTBufferQueue> mBbq;
     mutable sp<SurfaceControl> mBbqChild;
-    int32_t mLayerId;
-    uint32_t mTransformHint;
-    uint32_t mWidth;
-    uint32_t mHeight;
-    PixelFormat mFormat;
-    uint32_t mCreateFlags;
+
+    int32_t mLayerId = 0;
+    uint32_t mTransformHint = 0;
+    uint32_t mWidth = 0;
+    uint32_t mHeight = 0;
+    PixelFormat mFormat = PIXEL_FORMAT_NONE;
+    uint32_t mCreateFlags = 0;
 };
 
 }; // namespace android