From aa4af2d1096e8f54edfc221863a02c4d6750e464 Mon Sep 17 00:00:00 2001 From: Nicolas Clapies Date: Fri, 16 Jul 2004 11:02:04 +0000 Subject: *** empty log message *** --- python/environs/py_user.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++ python/environs/py_user.h | 4 +++ python/lasso.py | 10 +++++++- python/lassomod.c | 9 ++++--- 4 files changed, 81 insertions(+), 4 deletions(-) (limited to 'python') diff --git a/python/environs/py_user.c b/python/environs/py_user.c index 0d359d8c..5d26b829 100644 --- a/python/environs/py_user.c +++ b/python/environs/py_user.c @@ -59,3 +59,65 @@ PyObject *user_new_from_dump(PyObject *self, PyObject *args) { return (LassoUser_wrap(user)); } + +PyObject *user_dump(PyObject *self, PyObject *args) { + PyObject *user_obj; + gchar *dump; + + if (CheckArgs(args, "O:user_dump")) { + if(!PyArg_ParseTuple(args, (char *) "O:user_dump", &user_obj)) + return NULL; + } + else return NULL; + + dump = lasso_user_dump(LassoUser_get(user_obj)); + + return (charPtrConst_wrap(dump)); +} + +PyObject *user_get_assertion(PyObject *self, PyObject *args) { + PyObject *user_obj; + LassoNode *assertion_node; + gchar *remote_providerID; + + if (CheckArgs(args, "OS:user_get_assertion")) { + if(!PyArg_ParseTuple(args, (char *) "Os:user_get_assertion", &user_obj, &remote_providerID)) + return NULL; + } + else return NULL; + + assertion_node = lasso_user_get_assertion(LassoUser_get(user_obj), remote_providerID); + + return (LassoNode_wrap(assertion_node)); +} + +PyObject *user_get_next_providerID(PyObject *self, PyObject *args) { + PyObject *user_obj; + gchar *remote_providerID; + + if (CheckArgs(args, "O:user_get_next_providerID")) { + if(!PyArg_ParseTuple(args, (char *) "O:user_get_next_providerID", &user_obj, &remote_providerID)) + return NULL; + } + else return NULL; + + remote_providerID = lasso_user_get_next_providerID(LassoUser_get(user_obj)); + + return (charPtr_wrap(remote_providerID)); +} + +PyObject *user_remove_assertion(PyObject *self, PyObject *args) { + PyObject *user_obj; + gchar *remote_providerID; + int code; + + if (CheckArgs(args, "OS:user_remove_assertion")) { + if(!PyArg_ParseTuple(args, (char *) "Os:user_remove_assertion", &user_obj, &remote_providerID)) + return NULL; + } + else return NULL; + + code = lasso_user_remove_assertion(LassoUser_get(user_obj), remote_providerID); + + return (int_wrap(code)); +} diff --git a/python/environs/py_user.h b/python/environs/py_user.h index 21543209..cdde6d04 100644 --- a/python/environs/py_user.h +++ b/python/environs/py_user.h @@ -38,5 +38,9 @@ PyObject *LassoUser_wrap(LassoUser *user); PyObject *user_new(PyObject *self, PyObject *args); PyObject *user_new_from_dump(PyObject *self, PyObject *args); +PyObject *user_dump(PyObject *self, PyObject *args); +PyObject *user_get_assertion(PyObject *self, PyObject *args); +PyObject *user_get_next_providerID(PyObject *self, PyObject *args); +PyObject *user_remove_assertion(PyObject *self, PyObject *args); #endif /* __PYLASSO_PY_USER_H__ */ diff --git a/python/lasso.py b/python/lasso.py index 2ef17ad2..5d886bd1 100644 --- a/python/lasso.py +++ b/python/lasso.py @@ -858,8 +858,16 @@ class User: return lassomod.user_dump(self) def destroy(self): - lassomod.server_destroy(self) + lassomod.user_destroy(self) + def get_assertion(self): + pass + + def get_next_providerID(self): + return lassomod.user_get_next_providerID(self) + + def remove_assertion(self, providerID): + return lassomod.user_remove_assertion(self, providerID) loginProtocolProfileBrwsArt = 1 loginProtocolProfileBrwsPost = 2 diff --git a/python/lassomod.c b/python/lassomod.c index 8e8f34e6..c916df07 100644 --- a/python/lassomod.c +++ b/python/lassomod.c @@ -235,9 +235,12 @@ static PyMethodDef lasso_methods[] = { {"server_dump", server_dump, METH_VARARGS}, /* py_user.h */ - {"user_new", user_new, METH_VARARGS}, - {"user_new_from_dump", user_new_from_dump, METH_VARARGS}, - + {"user_new", user_new, METH_VARARGS}, + {"user_new_from_dump", user_new_from_dump, METH_VARARGS}, + {"user_dump", user_dump, METH_VARARGS}, + {"user_get_assertion", user_get_assertion, METH_VARARGS}, + {"user_get_next_providerID", user_get_next_providerID, METH_VARARGS}, + {"user_remove_assertion", user_remove_assertion, METH_VARARGS}, {NULL, NULL} /* End of Methods Sentinel */ }; -- cgit