diff options
author | Steven Moreland <smoreland@google.com> | 2023-12-06 21:30:47 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2023-12-06 21:30:47 +0000 |
commit | 96b83024e4ec7b3986f9cefaa0990b01bc6010b8 (patch) | |
tree | 1947890b52e77bb4dee8c70f4358790f658b0486 | |
parent | c2d75ce4532029504eaf43c70b9907096f84d68e (diff) | |
parent | 94e63e1a682514d9129e34adb4014c4dcd012c58 (diff) | |
download | native-96b83024e4ec7b3986f9cefaa0990b01bc6010b8.tar.gz |
Merge "libbinder: restrict non-Android kernel binder use" into main
-rw-r--r-- | libs/binder/Parcel.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libs/binder/Parcel.cpp b/libs/binder/Parcel.cpp index 47e3f91ac2..a1f164c5c7 100644 --- a/libs/binder/Parcel.cpp +++ b/libs/binder/Parcel.cpp @@ -845,6 +845,9 @@ void Parcel::updateWorkSourceRequestHeaderPosition() const { } #ifdef BINDER_WITH_KERNEL_IPC + +#if defined(__ANDROID__) + #if defined(__ANDROID_VNDK__) constexpr int32_t kHeader = B_PACK_CHARS('V', 'N', 'D', 'R'); #elif defined(__ANDROID_RECOVERY__) @@ -852,6 +855,14 @@ constexpr int32_t kHeader = B_PACK_CHARS('R', 'E', 'C', 'O'); #else constexpr int32_t kHeader = B_PACK_CHARS('S', 'Y', 'S', 'T'); #endif + +#else // ANDROID not defined + +// If kernel binder is used in new environments, we need to make sure it's separated +// out and has a separate header. +constexpr int32_t kHeader = B_PACK_CHARS('U', 'N', 'K', 'N'); +#endif + #endif // BINDER_WITH_KERNEL_IPC // Write RPC headers. (previously just the interface token) |