}
if (PyLong_Check(obj))
- return (uint32)PyLong_AsLong(obj);
- else
- return (uint32)PyInt_AsLong(obj);
+ return (uint32)PyLong_AsUnsignedLongMask(obj);
+
+ return (uint32)PyInt_AsLong(obj);
}
PyObject *uint32_to_python(uint32 obj)
result = dcerpc.samr_Connect(pipe, r)
+ # Test that we can parse a SID that contains a sub_auth that can't
+ # be held in a python int.
+
+ r = {}
+ r['connect_handle'] = result['connect_handle']
+ r['access_mask'] = 0x02000000
+ r['sid'] = {'sid_rev_num': 1, 'id_auth': [0, 0, 0, 0, 0, 5],
+ 'num_auths': 4,
+ 'sub_auths': [21, 737922324, 3002806791L, 1285293260]}
+
+ result = dcerpc.samr_OpenDomain(pipe, r)
+
def runtests(binding, domain, username, password):
print 'Testing SAMR pipe'