pycredentials: add {get,set}_old_password()
authorStefan Metzmacher <metze@samba.org>
Tue, 12 Jul 2016 06:14:36 +0000 (08:14 +0200)
committerStefan Metzmacher <metze@samba.org>
Fri, 22 Jul 2016 14:03:26 +0000 (16:03 +0200)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
auth/credentials/pycredentials.c

index 13443910ad774e300675e326b1b785852d1e9516..1c0e4069e8eb2faa46beb2906fcc6b99f3f7f026 100644 (file)
@@ -64,7 +64,6 @@ static PyObject *py_creds_get_password(PyObject *self, PyObject *unused)
        return PyString_FromStringOrNULL(cli_credentials_get_password(PyCredentials_AsCliCredentials(self)));
 }
 
-
 static PyObject *py_creds_set_password(PyObject *self, PyObject *args)
 {
        char *newval;
@@ -79,6 +78,25 @@ static PyObject *py_creds_set_password(PyObject *self, PyObject *args)
        return PyBool_FromLong(cli_credentials_set_password(PyCredentials_AsCliCredentials(self), newval, obt));
 }
 
+static PyObject *py_creds_get_old_password(PyObject *self, PyObject *unused)
+{
+       return PyString_FromStringOrNULL(cli_credentials_get_old_password(PyCredentials_AsCliCredentials(self)));
+}
+
+static PyObject *py_creds_set_old_password(PyObject *self, PyObject *args)
+{
+       char *oldval;
+       enum credentials_obtained obt = CRED_SPECIFIED;
+       int _obt = obt;
+
+       if (!PyArg_ParseTuple(args, "s|i", &oldval, &_obt)) {
+               return NULL;
+       }
+       obt = _obt;
+
+       return PyBool_FromLong(cli_credentials_set_old_password(PyCredentials_AsCliCredentials(self), oldval, obt));
+}
+
 static PyObject *py_creds_get_domain(PyObject *self, PyObject *unused)
 {
        return PyString_FromStringOrNULL(cli_credentials_get_domain(PyCredentials_AsCliCredentials(self)));
@@ -398,6 +416,12 @@ static PyMethodDef py_creds_methods[] = {
        { "set_password", py_creds_set_password, METH_VARARGS,
                "S.set_password(password, obtained=CRED_SPECIFIED) -> None\n"
                "Change password." },
+       { "get_old_password", py_creds_get_old_password, METH_NOARGS,
+               "S.get_old_password() -> password\n"
+               "Obtain old password." },
+       { "set_old_password", py_creds_set_old_password, METH_VARARGS,
+               "S.set_old_password(password, obtained=CRED_SPECIFIED) -> None\n"
+               "Change old password." },
        { "get_domain", py_creds_get_domain, METH_NOARGS,
                "S.get_domain() -> domain\n"
                "Obtain domain name." },