mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
lib/tevent: squash 'cast between incompatible function types' warning
squash 'cast between incompatible function types' warning To avoid warning above produced by using -Wcast-function-type we; + ensure PyCFunctions of type METH_NOARGS defined dummy arg + ensure PyCFunctions of type METH_KEYWORDS use PY_DISCARD_FUNC_SIG macro Signed-off-by: Noel Power <noel.power@suse.com> Reviewed-by: Andreas Schneider <asn@samba.org>
This commit is contained in:
parent
5720f20a19
commit
d93ec5445b
@ -37,6 +37,9 @@
|
||||
#define PyStr_AsUTF8 PyString_AsString
|
||||
#endif
|
||||
|
||||
/* discard signature of 'func' in favour of 'target_sig' */
|
||||
#define PY_DISCARD_FUNC_SIG(target_sig, func) (target_sig)(void(*)(void))func
|
||||
|
||||
void init_tevent(void);
|
||||
|
||||
typedef struct {
|
||||
@ -205,7 +208,8 @@ static PyObject *py_register_backend(PyObject *self, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_context_reinitialise(TeventContext_Object *self)
|
||||
static PyObject *py_tevent_context_reinitialise(TeventContext_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
int ret = tevent_re_initialise(self->ev);
|
||||
if (ret != 0) {
|
||||
@ -215,13 +219,15 @@ static PyObject *py_tevent_context_reinitialise(TeventContext_Object *self)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_queue_stop(TeventQueue_Object *self)
|
||||
static PyObject *py_tevent_queue_stop(TeventQueue_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
tevent_queue_stop(self->queue);
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_queue_start(TeventQueue_Object *self)
|
||||
static PyObject *py_tevent_queue_start(TeventQueue_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
tevent_queue_start(self->queue);
|
||||
Py_RETURN_NONE;
|
||||
@ -262,9 +268,11 @@ static PyObject *py_tevent_queue_add(TeventQueue_Object *self, PyObject *args)
|
||||
}
|
||||
|
||||
static PyMethodDef py_tevent_queue_methods[] = {
|
||||
{ "stop", (PyCFunction)py_tevent_queue_stop, METH_NOARGS,
|
||||
{ "stop", (PyCFunction)py_tevent_queue_stop,
|
||||
METH_NOARGS,
|
||||
"S.stop()" },
|
||||
{ "start", (PyCFunction)py_tevent_queue_start, METH_NOARGS,
|
||||
{ "start", (PyCFunction)py_tevent_queue_start,
|
||||
METH_NOARGS,
|
||||
"S.start()" },
|
||||
{ "add", (PyCFunction)py_tevent_queue_add, METH_VARARGS,
|
||||
"S.add(ctx, req, trigger, baton)" },
|
||||
@ -278,7 +286,8 @@ static PyObject *py_tevent_context_wakeup_send(PyObject *self, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_context_loop_wait(TeventContext_Object *self)
|
||||
static PyObject *py_tevent_context_loop_wait(TeventContext_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
if (tevent_loop_wait(self->ev) != 0) {
|
||||
PyErr_SetNone(PyExc_RuntimeError);
|
||||
@ -287,7 +296,8 @@ static PyObject *py_tevent_context_loop_wait(TeventContext_Object *self)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_context_loop_once(TeventContext_Object *self)
|
||||
static PyObject *py_tevent_context_loop_once(TeventContext_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
if (tevent_loop_once(self->ev) != 0) {
|
||||
PyErr_SetNone(PyExc_RuntimeError);
|
||||
@ -379,7 +389,9 @@ static int py_tevent_timer_traverse(TeventTimer_Object *self, visitproc visit, v
|
||||
return 0;
|
||||
}
|
||||
|
||||
static PyObject* py_tevent_timer_get_active(TeventTimer_Object *self) {
|
||||
static PyObject* py_tevent_timer_get_active(TeventTimer_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
return PyBool_FromLong(self->timer != NULL);
|
||||
}
|
||||
|
||||
@ -554,7 +566,8 @@ static PyObject *py_tevent_context_add_fd(TeventContext_Object *self, PyObject *
|
||||
}
|
||||
|
||||
static PyMethodDef py_tevent_context_methods[] = {
|
||||
{ "reinitialise", (PyCFunction)py_tevent_context_reinitialise, METH_NOARGS,
|
||||
{ "reinitialise", (PyCFunction)py_tevent_context_reinitialise,
|
||||
METH_NOARGS,
|
||||
"S.reinitialise()" },
|
||||
{ "wakeup_send", (PyCFunction)py_tevent_context_wakeup_send,
|
||||
METH_VARARGS, "S.wakeup_send(wakeup_time) -> req" },
|
||||
@ -573,31 +586,36 @@ static PyMethodDef py_tevent_context_methods[] = {
|
||||
{ NULL },
|
||||
};
|
||||
|
||||
static PyObject *py_tevent_req_wakeup_recv(PyObject *self)
|
||||
static PyObject *py_tevent_req_wakeup_recv(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* FIXME */
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_req_received(PyObject *self)
|
||||
static PyObject *py_tevent_req_received(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* FIXME */
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_req_is_error(PyObject *self)
|
||||
static PyObject *py_tevent_req_is_error(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* FIXME */
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_req_poll(PyObject *self)
|
||||
static PyObject *py_tevent_req_poll(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* FIXME */
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_req_is_in_progress(PyObject *self)
|
||||
static PyObject *py_tevent_req_is_in_progress(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* FIXME */
|
||||
Py_RETURN_NONE;
|
||||
@ -624,13 +642,15 @@ static PyObject *py_tevent_req_set_error(PyObject *self, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_req_done(PyObject *self)
|
||||
static PyObject *py_tevent_req_done(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* FIXME */
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_req_notify_callback(PyObject *self)
|
||||
static PyObject *py_tevent_req_notify_callback(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* FIXME */
|
||||
Py_RETURN_NONE;
|
||||
@ -642,7 +662,8 @@ static PyObject *py_tevent_req_set_endtime(PyObject *self, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_tevent_req_cancel(TeventReq_Object *self)
|
||||
static PyObject *py_tevent_req_cancel(TeventReq_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
if (!tevent_req_cancel(self->req)) {
|
||||
PyErr_SetNone(PyExc_RuntimeError);
|
||||
@ -652,9 +673,11 @@ static PyObject *py_tevent_req_cancel(TeventReq_Object *self)
|
||||
}
|
||||
|
||||
static PyMethodDef py_tevent_req_methods[] = {
|
||||
{ "wakeup_recv", (PyCFunction)py_tevent_req_wakeup_recv, METH_NOARGS,
|
||||
{ "wakeup_recv", (PyCFunction)py_tevent_req_wakeup_recv,
|
||||
METH_NOARGS,
|
||||
"Wakeup received" },
|
||||
{ "received", (PyCFunction)py_tevent_req_received, METH_NOARGS,
|
||||
{ "received", (PyCFunction)py_tevent_req_received,
|
||||
METH_NOARGS,
|
||||
"Receive finished" },
|
||||
{ "is_error", (PyCFunction)py_tevent_req_is_error, METH_NOARGS,
|
||||
"is_error() -> (error, state)" },
|
||||
@ -690,7 +713,8 @@ static PyTypeObject TeventReq_Type = {
|
||||
/* FIXME: .tp_new = py_tevent_req_new, */
|
||||
};
|
||||
|
||||
static PyObject *py_tevent_queue_get_length(TeventQueue_Object *self)
|
||||
static PyObject *py_tevent_queue_get_length(TeventQueue_Object *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
return PyInt_FromLong(tevent_queue_length(self->queue));
|
||||
}
|
||||
@ -719,7 +743,8 @@ static PyTypeObject TeventQueue_Type = {
|
||||
.tp_methods = py_tevent_queue_methods,
|
||||
};
|
||||
|
||||
static PyObject *py_tevent_context_signal_support(PyObject *_self)
|
||||
static PyObject *py_tevent_context_signal_support(PyObject *_self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
TeventContext_Object *self = (TeventContext_Object *)_self;
|
||||
return PyBool_FromLong(tevent_signal_support(self->ev));
|
||||
@ -728,7 +753,8 @@ static PyObject *py_tevent_context_signal_support(PyObject *_self)
|
||||
static PyGetSetDef py_tevent_context_getsetters[] = {
|
||||
{
|
||||
.name = discard_const_p(char, "signal_support"),
|
||||
.get = (getter)py_tevent_context_signal_support,
|
||||
.get = PY_DISCARD_FUNC_SIG(getter,
|
||||
py_tevent_context_signal_support),
|
||||
.doc = discard_const_p(char, "if this platform and tevent context support signal handling"),
|
||||
},
|
||||
{ NULL }
|
||||
@ -793,7 +819,8 @@ static PyObject *py_set_default_backend(PyObject *self, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_backend_list(PyObject *self)
|
||||
static PyObject *py_backend_list(PyObject *self,
|
||||
PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
PyObject *ret = NULL;
|
||||
PyObject *string = NULL;
|
||||
|
Loading…
Reference in New Issue
Block a user