mirror of
https://github.com/samba-team/samba.git
synced 2025-03-20 22:50:26 +03:00
Move glue.set_credentials hack to samba.Ldb.
This commit is contained in:
parent
099fc00b60
commit
b72a5c0336
@ -24,6 +24,7 @@
|
||||
#include <ldb.h>
|
||||
#include "lib/ldb/pyldb.h"
|
||||
#include "param/pyparam.h"
|
||||
#include "auth/credentials/pycredentials.h"
|
||||
|
||||
static PyObject *pyldb_module;
|
||||
staticforward PyTypeObject PySambaLdb;
|
||||
@ -50,10 +51,35 @@ static PyObject *py_ldb_set_loadparm(PyObject *self, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_ldb_set_credentials(PyObject *self, PyObject *args)
|
||||
{
|
||||
PyObject *py_creds;
|
||||
struct cli_credentials *creds;
|
||||
struct ldb_context *ldb;
|
||||
|
||||
if (!PyArg_ParseTuple(args, "O", &py_creds))
|
||||
return NULL;
|
||||
|
||||
creds = cli_credentials_from_py_object(py_creds);
|
||||
if (creds == NULL) {
|
||||
PyErr_SetString(PyExc_TypeError, "Expected credentials object");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
ldb = PyLdb_AsLdbContext(self);
|
||||
|
||||
ldb_set_opaque(ldb, "credentials", creds);
|
||||
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyMethodDef py_samba_ldb_methods[] = {
|
||||
{ "set_loadparm", (PyCFunction)py_ldb_set_loadparm, METH_VARARGS,
|
||||
"ldb_set_loadparm(ldb, session_info)\n"
|
||||
"Set loadparm context to use when connecting." },
|
||||
{ "ldb_set_credentials", (PyCFunction)py_ldb_set_credentials, METH_VARARGS,
|
||||
"ldb_set_credentials(ldb, credentials)\n"
|
||||
"Set credentials to use when connecting." },
|
||||
{ NULL },
|
||||
};
|
||||
|
||||
|
@ -138,27 +138,6 @@ static PyObject *py_ldb_set_session_info(PyObject *self, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_ldb_set_credentials(PyObject *self, PyObject *args)
|
||||
{
|
||||
PyObject *py_creds, *py_ldb;
|
||||
struct cli_credentials *creds;
|
||||
struct ldb_context *ldb;
|
||||
if (!PyArg_ParseTuple(args, "OO", &py_ldb, &py_creds))
|
||||
return NULL;
|
||||
|
||||
PyErr_LDB_OR_RAISE(py_ldb, ldb);
|
||||
|
||||
creds = cli_credentials_from_py_object(py_creds);
|
||||
if (creds == NULL) {
|
||||
PyErr_SetString(PyExc_TypeError, "Expected credentials object");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
ldb_set_opaque(ldb, "credentials", creds);
|
||||
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *py_ldb_set_utf8_casefold(PyObject *self, PyObject *args)
|
||||
{
|
||||
PyObject *py_ldb;
|
||||
@ -518,9 +497,6 @@ static PyMethodDef py_misc_methods[] = {
|
||||
{ "ldb_set_session_info", (PyCFunction)py_ldb_set_session_info, METH_VARARGS,
|
||||
"ldb_set_session_info(ldb, session_info)\n"
|
||||
"Set session info to use when connecting." },
|
||||
{ "ldb_set_credentials", (PyCFunction)py_ldb_set_credentials, METH_VARARGS,
|
||||
"ldb_set_credentials(ldb, credentials)\n"
|
||||
"Set credentials to use when connecting." },
|
||||
{ "samdb_set_domain_sid", (PyCFunction)py_samdb_set_domain_sid, METH_VARARGS,
|
||||
"samdb_set_domain_sid(samdb, sid)\n"
|
||||
"Set SID of domain to use." },
|
||||
|
@ -113,9 +113,6 @@ class Ldb(Ldb):
|
||||
def set_session_info(self, session_info):
|
||||
glue.ldb_set_session_info(self, session_info)
|
||||
|
||||
def set_credentials(self, credentials):
|
||||
glue.ldb_set_credentials(self, credentials)
|
||||
|
||||
def set_create_perms(self, perms=0600):
|
||||
# we usually want Samba databases to be private. If we later find we
|
||||
# need one public, we will have to change this here
|
||||
|
Loading…
x
Reference in New Issue
Block a user