]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
- Issue #19736: Add module-level statvfs constants defined for GNU/glibc
authordoko@ubuntu.com <doko@ubuntu.com>
Sun, 8 Dec 2013 14:23:07 +0000 (15:23 +0100)
committerdoko@ubuntu.com <doko@ubuntu.com>
Sun, 8 Dec 2013 14:23:07 +0000 (15:23 +0100)
  based systems.

Doc/library/os.rst
Misc/NEWS
Modules/posixmodule.c

index f5f2e16f2e5e113547d1498bfa872f9b68907177..32c1563f7a1e5ea34bc2ad1fe2e90f13b1e578e9 100644 (file)
@@ -1980,11 +1980,26 @@ features:
    read-only, and if :const:`ST_NOSUID` is set, the semantics of
    setuid/setgid bits are disabled or not supported.
 
+   Additional module-level constants are defined for GNU/glibc based systems.
+   These are :const:`ST_NODEV` (disallow access to device special files),
+   :const:`ST_NOEXEC` (disallow program execution), :const:`ST_SYNCHRONOUS`
+   (writes are synced at once), :const:`ST_MANDLOCK` (allow mandatory locks on an FS),
+   :const:`ST_WRITE` (write on file/directory/symlink), :const:`ST_APPEND`
+   (append-only file), :const:`ST_IMMUTABLE` (immutable file), :const:`ST_NOATIME`
+   (do not update access times), :const:`ST_NODIRATIME` (do not update directory access
+   times), :const:`ST_RELATIME` (update atime relative to mtime/ctime).
+
    This function can support :ref:`specifying a file descriptor <path_fd>`.
 
    .. versionchanged:: 3.2
       The :const:`ST_RDONLY` and :const:`ST_NOSUID` constants were added.
 
+   .. versionchanged:: 3.4
+      The :const:`ST_NODEV`, :const:`ST_NOEXEC`, :const:`ST_SYNCHRONOUS`,
+      :const:`ST_MANDLOCK`, :const:`ST_WRITE`, :const:`ST_APPEND`,
+      :const:`ST_IMMUTABLE`, :const:`ST_NOATIME`, :const:`ST_NODIRATIME`,
+      and :const:`ST_RELATIME` constants were added.
+
    Availability: Unix.
 
    .. versionadded:: 3.3
index 5c10e1a8d5321157176627f87d2a123dbf6eeb83..8e758cbf282c8c445427d314925b9cddab36ca9f 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,9 @@ Release date: 2014-01-05
 Core and Builtins
 -----------------
 
+- Issue #19736: Add module-level statvfs constants defined for GNU/glibc
+  based systems.
+
 - Issue #19729: In str.format(), fix recursive expansion in format spec.
 
 - Issue #19638: Fix possible crash / undefined behaviour from huge (more than 2
index 2f21ceb6f7ca8e8f050be2d8a9a3815c47203b81..d0fbf5aa1ab8de092da3cf4e56800031969278f5 100644 (file)
@@ -11858,6 +11858,35 @@ all_ins(PyObject *m)
     if (PyModule_AddIntMacro(m, ST_NOSUID)) return -1;
 #endif /* ST_NOSUID */
 
+       /* GNU extensions */
+#ifdef ST_NODEV
+    if (PyModule_AddIntMacro(m, ST_NODEV)) return -1;
+#endif /* ST_NODEV */
+#ifdef ST_NOEXEC
+    if (PyModule_AddIntMacro(m, ST_NOEXEC)) return -1;
+#endif /* ST_NOEXEC */
+#ifdef ST_SYNCHRONOUS
+    if (PyModule_AddIntMacro(m, ST_SYNCHRONOUS)) return -1;
+#endif /* ST_SYNCHRONOUS */
+#ifdef ST_MANDLOCK
+    if (PyModule_AddIntMacro(m, ST_MANDLOCK)) return -1;
+#endif /* ST_MANDLOCK */
+#ifdef ST_WRITE
+    if (PyModule_AddIntMacro(m, ST_WRITE)) return -1;
+#endif /* ST_WRITE */
+#ifdef ST_APPEND
+    if (PyModule_AddIntMacro(m, ST_APPEND)) return -1;
+#endif /* ST_APPEND */
+#ifdef ST_NOATIME
+    if (PyModule_AddIntMacro(m, ST_NOATIME)) return -1;
+#endif /* ST_NOATIME */
+#ifdef ST_NODIRATIME
+    if (PyModule_AddIntMacro(m, ST_NODIRATIME)) return -1;
+#endif /* ST_NODIRATIME */
+#ifdef ST_RELATIME
+    if (PyModule_AddIntMacro(m, ST_RELATIME)) return -1;
+#endif /* ST_RELATIME */
+
     /* FreeBSD sendfile() constants */
 #ifdef SF_NODISKIO
     if (PyModule_AddIntMacro(m, SF_NODISKIO)) return -1;