Add protection against credential getattr

Relates #474.

Add protection in `__getattr__` method to prevent possible infinite
recursion loop.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
This commit is contained in:
Aaron Tan 2017-10-24 12:08:41 -04:00
parent 73ece87e68
commit 553e81f888
No known key found for this signature in database
GPG Key ID: B0B709D324AE4963

View File

@ -249,10 +249,11 @@ class Credential(PasswordFieldsModel, CommonModelNameNotUnique, ResourceMixin):
])
def __getattr__(self, item):
if item in V1Credential.FIELDS:
return self.inputs.get(item, V1Credential.FIELDS[item].default)
elif item in self.inputs:
return self.inputs[item]
if item != 'inputs':
if item in V1Credential.FIELDS:
return self.inputs.get(item, V1Credential.FIELDS[item].default)
elif item in self.inputs:
return self.inputs[item]
raise AttributeError(item)
def __setattr__(self, item, value):