summaryrefslogtreecommitdiff
path: root/Objects/descrobject.c
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@microsoft.com>2019-05-23 08:45:22 -0700
committerGitHub <noreply@github.com>2019-05-23 08:45:22 -0700
commitb82e17e626f7b1cd98aada0b1ebb65cb9f8fb184 (patch)
tree5370a2a075707cb0b37ce135cad6ffe23da424c4 /Objects/descrobject.c
parente788057a9188ff37e232729815dfda2529079420 (diff)
downloadcpython-git-b82e17e626f7b1cd98aada0b1ebb65cb9f8fb184.tar.gz
bpo-36842: Implement PEP 578 (GH-12613)
Adds sys.audit, sys.addaudithook, io.open_code, and associated C APIs.
Diffstat (limited to 'Objects/descrobject.c')
-rw-r--r--Objects/descrobject.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/Objects/descrobject.c b/Objects/descrobject.c
index 8f1a823768..0db8057334 100644
--- a/Objects/descrobject.c
+++ b/Objects/descrobject.c
@@ -144,6 +144,14 @@ member_get(PyMemberDescrObject *descr, PyObject *obj, PyObject *type)
if (descr_check((PyDescrObject *)descr, obj, &res))
return res;
+
+ if (descr->d_member->flags & READ_RESTRICTED) {
+ if (PySys_Audit("object.__getattr__", "Os",
+ obj ? obj : Py_None, descr->d_member->name) < 0) {
+ return NULL;
+ }
+ }
+
return PyMember_GetOne((char *)obj, descr->d_member);
}