Add support for restricting access based on restricted execution mode.
Renamed the 'readonly' field to 'flags' and defined some new flag
bits: READ_RESTRICTED and WRITE_RESTRICTED, as well as a shortcut
RESTRICTED that means both.
diff --git a/Include/structmember.h b/Include/structmember.h
index 09e62cf..cd35fdb 100644
--- a/Include/structmember.h
+++ b/Include/structmember.h
@@ -31,7 +31,7 @@
char *name;
int type;
int offset;
- int readonly;
+ int flags;
};
/* Types */
@@ -58,9 +58,13 @@
#define T_PSTRING_INPLACE 15
#endif /* macintosh */
-/* Readonly flag */
+/* Flags */
#define READONLY 1
#define RO READONLY /* Shorthand */
+#define READ_RESTRICTED 2
+#define WRITE_RESTRICTED 4
+#define RESTRICTED (READ_RESTRICTED | WRITE_RESTRICTED)
+
DL_IMPORT(PyObject *) PyMember_Get(char *, struct memberlist *, char *);
DL_IMPORT(int) PyMember_Set(char *, struct memberlist *, char *, PyObject *);