Index: base/memory/shared_memory_posix.cc |
diff --git a/base/memory/shared_memory_posix.cc b/base/memory/shared_memory_posix.cc |
index bf29e9f02a1ec5f188ef0f4ff10e12c037835bee..6b1ee5d7d63b21b6b119dda2918e71aa962a59b0 100644 |
--- a/base/memory/shared_memory_posix.cc |
+++ b/base/memory/shared_memory_posix.cc |
@@ -157,9 +157,14 @@ bool SharedMemory::Create(const SharedMemoryCreateOptions& options) { |
// the file is checked below. |
// - Attackers could plant a symbolic link so that an unexpected file |
// is opened, so O_NOFOLLOW is passed to open(). |
+#if !defined(OS_AIX) |
fd = HANDLE_EINTR( |
open(path.value().c_str(), O_RDWR | O_APPEND | O_NOFOLLOW)); |
- |
+#else |
+ // AIX has no 64-bit support for open flags such as - |
+ // O_CLOEXEC, O_NOFOLLOW and O_TTY_INIT. |
+ fd = HANDLE_EINTR(open(path.value().c_str(), O_RDWR | O_APPEND)); |
+#endif |
// Check that the current user owns the file. |
// If uid != euid, then a more complex permission model is used and this |
// API is not appropriate. |