summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Salyzyn <salyzyn@google.com>2016-02-02 09:20:31 -0800
committerSteve Kondik <steve@cyngn.com>2016-07-15 12:34:16 -0700
commit53bf23431d5e9f5b320d9e2adb7b10f650178dc9 (patch)
treee9a634e8da94d1cfa50131127737323d96dd8787
parent70a8c7aef01d843eb390e744243667e1af6c5615 (diff)
downloadsystem_core-53bf23431d5e9f5b320d9e2adb7b10f650178dc9.zip
system_core-53bf23431d5e9f5b320d9e2adb7b10f650178dc9.tar.gz
system_core-53bf23431d5e9f5b320d9e2adb7b10f650178dc9.tar.bz2
libcutils: abort for invalid fd
If ashmem accessors are being called with a file descriptor that belongs to anything other than ashmem, we need to stop it right now so that they can fix the caller. Bug: 26871259 Change-Id: Icf9aafc3631a80b9af6fe0fea03599d61e285d21
-rw-r--r--libcutils/ashmem-dev.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libcutils/ashmem-dev.c b/libcutils/ashmem-dev.c
index d6a48c9..4a07d66 100644
--- a/libcutils/ashmem-dev.c
+++ b/libcutils/ashmem-dev.c
@@ -118,15 +118,16 @@ static int __ashmem_is_ashmem(int fd)
}
if (rdev) {
- ALOGE("illegal fd=%d mode=0%o rdev=%d:%d expected 0%o %d:%d",
+ LOG_ALWAYS_FATAL("illegal fd=%d mode=0%o rdev=%d:%d expected 0%o %d:%d",
fd, st.st_mode, major(st.st_rdev), minor(st.st_rdev),
S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IRGRP,
major(rdev), minor(rdev));
} else {
- ALOGE("illegal fd=%d mode=0%o rdev=%d:%d expected 0%o",
+ LOG_ALWAYS_FATAL("illegal fd=%d mode=0%o rdev=%d:%d expected 0%o",
fd, st.st_mode, major(st.st_rdev), minor(st.st_rdev),
S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IRGRP);
}
+ /* NOTREACHED */
errno = ENOTTY;
return -1;