History

binder: fix sender_euid type in uapi header

The {pid,uid}_t fields of struct binder_transaction were recently replaced to use kernel types in commit 169adc2b6b3c ("android/binder.h: add linux/android/binder(fs).h to UAPI compile-test coverage"). However, using __kernel_uid_t here breaks backwards compatibility in architectures using 16-bits for this type, since glibc and some others still expect a 32-bit uid_t. Instead, let's use __kernel_uid32_t which avoids this compatibility problem.

Carlos Llamas committed 4 years ago

Commit 8cc5b031 parent 3cbcff61 file · +1 −1Browse files

Showing the changes to include/uapi/linux/android (1 of 1 file). Show all

Unified · Split

include/uapi/linux/android/binder.h+1−1
@@ -289,7 +289,7 @@ struct binder_transaction_data { · 288 unmodified lines
289 /* General information about the transaction. */289 /* General information about the transaction. */
290 __u32 flags;290 __u32 flags;
291 __kernel_pid_t sender_pid;291 __kernel_pid_t sender_pid;
292 __kernel_uid_t sender_euid;292 __kernel_uid32_t sender_euid;
293 binder_size_t data_size; /* number of bytes of data */293 binder_size_t data_size; /* number of bytes of data */
294 binder_size_t offsets_size; /* number of bytes of offsets */294 binder_size_t offsets_size; /* number of bytes of offsets */
295 295