Exemple #1
0
static PyObject *py_register_backend(PyObject *self, PyObject *args)
{
	PyObject *name, *py_backend;

	if (!PyArg_ParseTuple(args, "O", &py_backend))
		return NULL;

	name = PyObject_GetAttrString(py_backend, "name");
	if (name == NULL) {
		PyErr_SetNone(PyExc_AttributeError);
		return NULL;
	}

	if (!PyString_Check(name)) {
		PyErr_SetNone(PyExc_TypeError);
		return NULL;
	}

	if (!tevent_register_backend(PyString_AsString(name), &py_tevent_ops)) { /* FIXME: What to do with backend */
		PyErr_SetNone(PyExc_RuntimeError);
		return NULL;
	}

	Py_RETURN_NONE;
}
Exemple #2
0
bool tevent_standard_init(void)
{
	return tevent_register_backend("standard", &std_event_ops);
}
Exemple #3
0
_PRIVATE_ bool tevent_epoll_init(void)
{
	return tevent_register_backend("epoll", &epoll_event_ops);
}