1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-09 08:58:35 +03:00

pylibsmb: Merge unlink_file() into its only caller

Now that delete_tree is in python code, align py_smb_unlink() with the
other functions.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
Volker Lendecke 2020-11-09 19:48:21 +01:00 committed by Jeremy Allison
parent 13aecb22f7
commit 5ee42dd0e9

View File

@ -1238,36 +1238,23 @@ static PyObject *py_cli_list(struct py_cli_state *self,
return result;
}
/*
* Deletes a file
*/
static NTSTATUS unlink_file(struct py_cli_state *self, const char *filename)
{
NTSTATUS status;
uint32_t attrs = (FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_HIDDEN);
struct tevent_req *req = NULL;
req = cli_unlink_send(
NULL, self->ev, self->cli, filename, attrs);
if (!py_tevent_req_wait_exc(self, req)) {
return NT_STATUS_INTERNAL_ERROR;
}
status = cli_unlink_recv(req);
TALLOC_FREE(req);
return status;
}
static PyObject *py_smb_unlink(struct py_cli_state *self, PyObject *args)
{
NTSTATUS status;
const char *filename = NULL;
struct tevent_req *req = NULL;
const uint32_t attrs = (FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_HIDDEN);
if (!PyArg_ParseTuple(args, "s:unlink", &filename)) {
return NULL;
}
status = unlink_file(self, filename);
req = cli_unlink_send(NULL, self->ev, self->cli, filename, attrs);
if (!py_tevent_req_wait_exc(self, req)) {
return NULL;
}
status = cli_unlink_recv(req);
TALLOC_FREE(req);
PyErr_NTSTATUS_NOT_OK_RAISE(status);
Py_RETURN_NONE;