From 6510b2cdd21c473bd146b7630d69d06342801cb1 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Thu, 8 Apr 2010 22:59:16 +0200 Subject: s4-net: Use new Net() object in net export keytab. --- source4/lib/ldb-samba/pyldb.c | 6 +++--- source4/libnet/py_net.c | 6 +++++- source4/scripting/python/samba/netcmd/export.py | 4 ++-- 3 files changed, 10 insertions(+), 6 deletions(-) (limited to 'source4') diff --git a/source4/lib/ldb-samba/pyldb.c b/source4/lib/ldb-samba/pyldb.c index 084afb7603..2b7b23739e 100644 --- a/source4/lib/ldb-samba/pyldb.c +++ b/source4/lib/ldb-samba/pyldb.c @@ -54,14 +54,14 @@ static PyObject *py_ldb_set_loadparm(PyObject *self, PyObject *args) if (!PyArg_ParseTuple(args, "O", &py_lp_ctx)) return NULL; - lp_ctx = lp_from_py_object(py_lp_ctx); + ldb = PyLdb_AsLdbContext(self); + + lp_ctx = lp_from_py_object(ldb, py_lp_ctx); if (lp_ctx == NULL) { PyErr_SetString(PyExc_TypeError, "Expected loadparm object"); return NULL; } - ldb = PyLdb_AsLdbContext(self); - ldb_set_opaque(ldb, "loadparm", lp_ctx); Py_RETURN_NONE; diff --git a/source4/libnet/py_net.c b/source4/libnet/py_net.c index 71e7cd87d6..569f3955bb 100644 --- a/source4/libnet/py_net.c +++ b/source4/libnet/py_net.c @@ -1,7 +1,7 @@ /* Unix SMB/CIFS implementation. Samba utility functions - Copyright (C) Jelmer Vernooij 2008 + Copyright (C) Jelmer Vernooij 2008-2010 Copyright (C) Kamen Mazdrashki 2009 This program is free software; you can redistribute it and/or modify @@ -215,6 +215,10 @@ PyTypeObject py_net_Type = { void initnet(void) { PyObject *m; + + if (PyType_Ready(&py_net_Type) < 0) + return; + m = Py_InitModule3("net", NULL, NULL); if (m == NULL) return; diff --git a/source4/scripting/python/samba/netcmd/export.py b/source4/scripting/python/samba/netcmd/export.py index 8e5fd2b6e2..90b83689dd 100644 --- a/source4/scripting/python/samba/netcmd/export.py +++ b/source4/scripting/python/samba/netcmd/export.py @@ -20,7 +20,7 @@ import samba.getopt as options -from samba import net +from samba.net import Net from samba.netcmd import ( Command, @@ -45,7 +45,7 @@ class cmd_export_keytab(Command): def run(self, keytab, credopts=None, sambaopts=None, versionopts=None): lp = sambaopts.get_loadparm() creds = credopts.get_credentials(lp) - # FIXME: Obtain net context + net = Net(creds, lp) net.export_keytab(keytab=keytab, creds=creds) -- cgit