wire_mode = libsmb.unix_mode_to_wire(0o744)
f,_,cc_out = c.create_ex('\\%s' % fname,
CreateDisposition=libsmb.FILE_CREATE,
- DesiredAccess=security.SEC_STD_DELETE,
+ DesiredAccess=security.SEC_FILE_READ_ATTRIBUTE,
CreateContexts=[posix_context(wire_mode)])
except NTSTATUSError as e:
self.fail(e)
- c.delete_on_close(f, True)
c.close(f)
+ try:
+ res = c.list('', info_level=libsmb.SMB2_FIND_POSIX_INFORMATION)
+ found_files = {get_string(i['name']): i for i in res}
+ for fname in test_files:
+ self.assertTrue(fname in found_files)
+ except NTSTATUSError as e:
+ self.fail(e)
+ finally:
+ wire_mode = libsmb.unix_mode_to_wire(0o600)
+ for fname in test_files:
+ f,_,_ = c.create_ex('\\%s' % fname,
+ CreateDisposition=libsmb.FILE_OPEN,
+ DesiredAccess=security.SEC_STD_DELETE,
+ CreateContexts=[posix_context(wire_mode)])
+ c.delete_on_close(f, True)
+ c.close(f)
+
+
def test_posix_delete_on_close(self):
c = libsmb.Conn(
self.server_ip,