#1735632: add O_NOATIME constant to os module.
Also document a few other O_ constants that were missing from documentation.
diff --git a/Doc/library/os.rst b/Doc/library/os.rst
index 3843b53..7d12488 100644
--- a/Doc/library/os.rst
+++ b/Doc/library/os.rst
@@ -703,14 +703,7 @@
.. data:: O_BINARY
-
- Option for the *flag* argument to the :func:`open` function. This can be
- bit-wise OR'd together with those listed above. Availability: Windows.
-
- .. % XXX need to check on the availability of this one.
-
-
-.. data:: O_NOINHERIT
+ O_NOINHERIT
O_SHORT_LIVED
O_TEMPORARY
O_RANDOM
@@ -721,6 +714,15 @@
bit-wise OR'd together. Availability: Windows.
+.. data:: O_DIRECT
+ O_DIRECTORY
+ O_NOFOLLOW
+ O_NOATIME
+
+ Options for the *flag* argument to the :func:`open` function. These are
+ GNU extensions and not present if they are not defined by the C library.
+
+
.. data:: SEEK_SET
SEEK_CUR
SEEK_END
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 7c25a05..5fcc521 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -8658,6 +8658,10 @@
/* Do not follow links. */
if (ins(d, "O_NOFOLLOW", (long)O_NOFOLLOW)) return -1;
#endif
+#ifdef O_NOATIME
+ /* Do not update the access time. */
+ if (ins(d, "O_NOATIME", (long)O_NOATIME)) return -1;
+#endif
/* These come from sysexits.h */
#ifdef EX_OK