1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-07 00:58:40 +03:00

pycredentials.h: use import to ensure python type correctness

Because we include pyrpc_util.h, pycredentials doesn't need its own
PyStringFromStringOrNull().

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
Douglas Bagnall 2019-07-06 19:09:57 +12:00 committed by Andrew Bartlett
parent c9c1d44488
commit 0d0a88fc6a
2 changed files with 12 additions and 10 deletions

View File

@ -37,13 +37,6 @@
void initcredentials(void);
static PyObject *PyString_FromStringOrNULL(const char *str)
{
if (str == NULL)
Py_RETURN_NONE;
return PyUnicode_FromString(str);
}
static PyObject *py_creds_new(PyTypeObject *type, PyObject *args, PyObject *kwargs)
{
return pytalloc_steal(type, cli_credentials_init(NULL));

View File

@ -20,12 +20,21 @@
#define _PYCREDENTIALS_H_
#include "auth/credentials/credentials.h"
#include "librpc/rpc/pyrpc_util.h"
#include <pytalloc.h>
extern PyTypeObject PyCredentials;
extern PyTypeObject PyCredentialCacheContainer;
#define PyCredentials_Check(py_obj) PyObject_TypeCheck(py_obj, &PyCredentials)
#define PyCredentials_AsCliCredentials(py_obj) pytalloc_get_type(py_obj, struct cli_credentials)
#define cli_credentials_from_py_object(py_obj) (py_obj == Py_None)?cli_credentials_init_anon(NULL):PyCredentials_AsCliCredentials(py_obj)
#define PyCredentials_Check(py_obj) \
py_check_dcerpc_type(py_obj, "samba.credentials", "Credentials")
#define PyCredentials_AsCliCredentials(py_obj) \
(PyCredentials_Check(py_obj) ? \
pytalloc_get_type(py_obj, struct cli_credentials) : NULL)
#define cli_credentials_from_py_object(py_obj) \
((py_obj == Py_None) ? \
cli_credentials_init_anon(NULL) : \
PyCredentials_AsCliCredentials(py_obj))
#endif /* _PYCREDENTIALS_H_ */