コード例 #1
0
ファイル: pyparam.c プロジェクト: Arkhont/samba
static PyObject *py_lp_ctx_services(py_talloc_Object *self)
{
	struct loadparm_context *lp_ctx = PyLoadparmContext_AsLoadparmContext(self);
	PyObject *ret;
	int i;
	ret = PyList_New(lpcfg_numservices(lp_ctx));
	for (i = 0; i < lpcfg_numservices(lp_ctx); i++) {
		struct loadparm_service *service = lpcfg_servicebynum(lp_ctx, i);
		if (service != NULL) {
			PyList_SetItem(ret, i, PyString_FromString(lpcfg_servicename(service)));
		}
	}
	return ret;
}
コード例 #2
0
static PyObject *py_lp_dump(PyObject *self, PyObject *args)
{
	PyObject *py_stream;
	bool show_defaults = false;
	FILE *f;
	struct loadparm_context *lp_ctx = PyLoadparmContext_AsLoadparmContext(self);

	if (!PyArg_ParseTuple(args, "O|b", &py_stream, &show_defaults))
		return NULL;

	f = PyFile_AsFile(py_stream);
	if (f == NULL) {
		return NULL;
	}

	lpcfg_dump(lp_ctx, f, show_defaults, lpcfg_numservices(lp_ctx));

	Py_RETURN_NONE;
}
コード例 #3
0
ファイル: pyparam.c プロジェクト: Arkhont/samba
static Py_ssize_t py_lp_ctx_len(py_talloc_Object *self)
{
	return lpcfg_numservices(PyLoadparmContext_AsLoadparmContext(self));
}