static PyObject *py_creds_set_password(PyObject *self, PyObject *args)
{
- char *newval;
+ const char *newval = NULL;
enum credentials_obtained obt = CRED_SPECIFIED;
int _obt = obt;
-
- if (!PyArg_ParseTuple(args, "s|i", &newval, &_obt)) {
+ PyObject *result = NULL;
+ if (!PyArg_ParseTuple(args, "es|i", "utf8", &newval, &_obt)) {
return NULL;
}
obt = _obt;
- return PyBool_FromLong(cli_credentials_set_password(PyCredentials_AsCliCredentials(self), newval, obt));
+ result = PyBool_FromLong(cli_credentials_set_password(PyCredentials_AsCliCredentials(self), newval, obt));
+ PyMem_Free(discard_const_p(void*, newval));
+ return result;
}
static PyObject *py_creds_set_utf16_password(PyObject *self, PyObject *args)