diff options
| author | Nicolas Clapies <nclapies@entrouvert.com> | 2004-07-20 09:25:48 +0000 |
|---|---|---|
| committer | Nicolas Clapies <nclapies@entrouvert.com> | 2004-07-20 09:25:48 +0000 |
| commit | cef28b22441fe49224c568432e60429185b48f5b (patch) | |
| tree | 0f957b313aa550042d9f3629486aae9e2f4a907a /python | |
| parent | 2498ff0141a61c3fdf7c54b41263785ac804cd42 (diff) | |
| download | lasso-cef28b22441fe49224c568432e60429185b48f5b.tar.gz lasso-cef28b22441fe49224c568432e60429185b48f5b.tar.xz lasso-cef28b22441fe49224c568432e60429185b48f5b.zip | |
*** empty log message ***
Diffstat (limited to 'python')
| -rw-r--r-- | python/environs/py_user.c | 17 | ||||
| -rw-r--r-- | python/environs/py_user.h | 2 | ||||
| -rw-r--r-- | python/lasso.py | 57 | ||||
| -rw-r--r-- | python/lassomod.c | 14 | ||||
| -rwxr-xr-x | python/setup.py | 1 |
5 files changed, 91 insertions, 0 deletions
diff --git a/python/environs/py_user.c b/python/environs/py_user.c index 5f219074..e182f643 100644 --- a/python/environs/py_user.c +++ b/python/environs/py_user.c @@ -62,6 +62,23 @@ PyObject *user_new_from_dump(PyObject *self, PyObject *args) { return (LassoUser_wrap(user)); } +PyObject *user_add_assertion(PyObject *self, PyObject *args){ + PyObject *user_obj; + LassoNode *assertion_node; + gchar *remote_providerID; + + if (CheckArgs(args, "OSO:user_add_assertion")) { + if(!PyArg_ParseTuple(args, (char *) "OsO:user_add_assertion", &user_obj, &remote_providerID, &assertion_node)) + return NULL; + } + else return NULL; + + lasso_user_add_assertion(LassoUser_get(user_obj), remote_providerID, assertion_node); + + Py_INCREF(Py_None); + return (Py_None); +} + PyObject *user_destroy(PyObject *self, PyObject *args) { PyObject *user_obj; diff --git a/python/environs/py_user.h b/python/environs/py_user.h index 128c9e21..fa752e06 100644 --- a/python/environs/py_user.h +++ b/python/environs/py_user.h @@ -38,6 +38,8 @@ PyObject *LassoUser_wrap(LassoUser *user); PyObject *user_new(PyObject *self, PyObject *args); PyObject *user_new_from_dump(PyObject *self, PyObject *args); + +PyObject *user_add_assertion(PyObject *self, PyObject *args); PyObject *user_destroy(PyObject *self, PyObject *args); PyObject *user_dump(PyObject *self, PyObject *args); PyObject *user_get_assertion(PyObject *self, PyObject *args); diff --git a/python/lasso.py b/python/lasso.py index 9853fd6a..0e9485d1 100644 --- a/python/lasso.py +++ b/python/lasso.py @@ -854,6 +854,9 @@ class User: return User(obj) new_from_dump = classmethod(new_from_dump) + def add_assertion(self, remote_providerID, assertion): + lassomod.user_add_assertion(self, remote_providerID, assertion) + def dump(self): return lassomod.user_dump(self) @@ -1049,6 +1052,9 @@ class FederationTermination: return FederationTermination(obj) new = classmethod(new) + def add_assertion(self, remote_providerID, assertion): + lassmod.user_add_assertion(remote_providerID, assertion); + def build_notification_msg(self): return lassomod.federation_termination_build_notification_msg(self) @@ -1060,3 +1066,54 @@ class FederationTermination: def process_notification_msg(self, notification_msg, notification_method): return lassomod.federation_termination_process_notification_msg(self, notification_msg, notification_method); + + +class RegisterNameIdentifier: + """\brief Short desc + + Long desc + """ + + def __isprivate(self, name): + return name == '_o' + + def __init__(self, _obj): + """ + The constructor + """ + self._o = _obj + + def __getattr__(self, name): + if self.__isprivate(name): + return self.__dict__[name] + if name[:2] == "__" and name[-2:] == "__" and name != "__members__": + raise AttributeError, name + ret = lassomod.register_name_identifier_getattr(self, name) + if ret is None: + raise AttributeError, name + if name == "user": + ret = User(_obj=ret) + return ret + + def new(cls, server, user, provider_type): + obj = lassomod.register_name_identifier_new(server, user, provider_type) + return RegisterNameIdentifier(obj) + new = classmethod(new) + + def build_request_msg(self): + return lassomod.register_name_identifier_build_request_msg(self) + + def build_response_msg(self): + return lassomod.register_name_identifier_build_response_msg(self) + + def destroy(self): + pass + + def init_request(self, remote_providerID): + return lassomod.register_name_identifier_init_request(self, remote_providerID); + + def process_request_msg(self, request_msg, request_method): + return lassomod.register_name_identifier_process_request_msg(self, request_msg, request_method); + + def process_response_msg(self, response_msg, response_method): + return lassomod.register_name_identifier_process_response_msg(self, response_msg, response_method); diff --git a/python/lassomod.c b/python/lassomod.c index cb0646bd..db0b8fcb 100644 --- a/python/lassomod.c +++ b/python/lassomod.c @@ -56,6 +56,7 @@ #include "environs/py_federation_termination.h" #include "environs/py_login.h" #include "environs/py_logout.h" +#include "environs/py_register_name_identifier.h" #include "environs/py_server.h" #include "environs/py_user.h" @@ -241,6 +242,18 @@ static PyMethodDef lasso_methods[] = { {"logout_process_request_msg", logout_process_request_msg, METH_VARARGS}, {"logout_process_response_msg", logout_process_response_msg, METH_VARARGS}, + /* py_register_name_identifier.h */ + {"register_name_identifier_getattr", register_name_identifier_getattr, METH_VARARGS}, + + {"register_name_identifier_new", register_name_identifier_new, METH_VARARGS}, + {"register_name_identifier_build_request_msg", register_name_identifier_build_request_msg, METH_VARARGS}, + {"register_name_identifier_build_response_msg", register_name_identifier_build_response_msg, METH_VARARGS}, + {"register_name_identifier_destroy", register_name_identifier_destroy, METH_VARARGS}, + {"register_name_identifier_init_request", register_name_identifier_init_request, METH_VARARGS}, + {"register_name_identifier_process_request_msg", register_name_identifier_process_request_msg, METH_VARARGS}, + {"register_name_identifier_process_response_msg", register_name_identifier_process_response_msg, METH_VARARGS}, + + /* py_server.h */ {"server_new", server_new, METH_VARARGS}, {"server_new_from_dump", server_new_from_dump, METH_VARARGS}, @@ -251,6 +264,7 @@ static PyMethodDef lasso_methods[] = { /* py_user.h */ {"user_new", user_new, METH_VARARGS}, {"user_new_from_dump", user_new_from_dump, METH_VARARGS}, + {"user_add_assertion", user_add_assertion, METH_VARARGS}, {"user_destroy", user_destroy, METH_VARARGS}, {"user_dump", user_dump, METH_VARARGS}, {"user_get_assertion", user_get_assertion, METH_VARARGS}, diff --git a/python/setup.py b/python/setup.py index 33bf5a35..9a2a215e 100755 --- a/python/setup.py +++ b/python/setup.py @@ -219,6 +219,7 @@ em = Extension("lassomod", "environs/py_federation_termination.c", "environs/py_login.c", "environs/py_logout.c", + "environs/py_register_name_identifier.c", "environs/py_server.c", "environs/py_user.c", "lassomod.c", |
