diff options
-rw-r--r-- | source4/libcli/security/tests/bindings.py | 6 | ||||
-rw-r--r-- | source4/librpc/ndr/py_security.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/source4/libcli/security/tests/bindings.py b/source4/libcli/security/tests/bindings.py index 5c153050be..f0d55f12ca 100644 --- a/source4/libcli/security/tests/bindings.py +++ b/source4/libcli/security/tests/bindings.py @@ -77,6 +77,12 @@ class SecurityDescriptorTests(unittest.TestCase): self.assertEquals(desc1.sacl, desc2.sacl) self.assertEquals(desc1.type, desc2.type) + def test_domsid_nodomsid_as_sddl(self): + dom = security.dom_sid("S-2-0-0") + text = "O:AOG:DAD:(A;;RPWPCCDCLCSWRCWDWOGA;;;S-1-0-0)" + desc1 = security.descriptor.from_sddl(text, dom) + self.assertNotEqual(desc1.as_sddl(), desc1.as_sddl(dom)) + class DomSidTests(unittest.TestCase): def test_parse_sid(self): diff --git a/source4/librpc/ndr/py_security.c b/source4/librpc/ndr/py_security.c index 43c1d50d66..1b54aab02a 100644 --- a/source4/librpc/ndr/py_security.c +++ b/source4/librpc/ndr/py_security.c @@ -198,7 +198,7 @@ static PyObject *py_descriptor_as_sddl(PyObject *self, PyObject *args) if (!PyArg_ParseTuple(args, "|O", &py_sid)) return NULL; - if (py_sid == Py_None) + if (py_sid != Py_None) sid = py_talloc_get_ptr(py_sid); else sid = NULL; |