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 *);
diff --git a/Python/structmember.c b/Python/structmember.c
index e155a6b..ed34783 100644
--- a/Python/structmember.c
+++ b/Python/structmember.c
@@ -38,6 +38,12 @@
 	for (l = mlist; l->name != NULL; l++) {
 		if (strcmp(l->name, name) == 0) {
 			PyObject *v;
+			if ((l->flags & READ_RESTRICTED) &&
+			    PyEval_GetRestricted()) {
+				PyErr_SetString(PyExc_RuntimeError,
+						"restricted attribute");
+				return NULL;
+			}
 			addr += l->offset;
 			switch (l->type) {
 			case T_BYTE:
@@ -133,17 +139,22 @@
 	
 	for (l = mlist; l->name != NULL; l++) {
 		if (strcmp(l->name, name) == 0) {
+			if ((l->flags & READONLY) || l->type == T_STRING
 #ifdef macintosh
-			if (l->readonly || l->type == T_STRING ||
-			    l->type == T_PSTRING)
+			    || l->type == T_PSTRING
+#endif
+				)
 			{
-#else
-			if (l->readonly || l->type == T_STRING ) {
-#endif /* macintosh */
 				PyErr_SetString(PyExc_TypeError,
 						"readonly attribute");
 				return -1;
 			}
+			if ((l->flags & WRITE_RESTRICTED) &&
+			    PyEval_GetRestricted()) {
+				PyErr_SetString(PyExc_RuntimeError,
+						"restricted attribute");
+				return -1;
+			}
 			if (v == NULL && l->type != T_OBJECT) {
 				PyErr_SetString(PyExc_TypeError,
 				  "can't delete numeric/char attribute");
