diff options
| author | Valery Febvre <vfebvre at easter-eggs.com> | 2004-07-10 01:33:56 +0000 |
|---|---|---|
| committer | Valery Febvre <vfebvre at easter-eggs.com> | 2004-07-10 01:33:56 +0000 |
| commit | 1ed5aafdc04e029d9a902fd8b6df2220820c519f (patch) | |
| tree | 5cc274ef59895141e1009269001e649dbb910f2c /python/environs | |
| parent | 1c41403396d1b13e18664da38a7615bffd8624a1 (diff) | |
| download | lasso-1ed5aafdc04e029d9a902fd8b6df2220820c519f.tar.gz lasso-1ed5aafdc04e029d9a902fd8b6df2220820c519f.tar.xz lasso-1ed5aafdc04e029d9a902fd8b6df2220820c519f.zip | |
*** empty log message ***
Diffstat (limited to 'python/environs')
| -rw-r--r-- | python/environs/py_login.c | 66 | ||||
| -rw-r--r-- | python/environs/py_login.h | 3 |
2 files changed, 69 insertions, 0 deletions
diff --git a/python/environs/py_login.c b/python/environs/py_login.c index 91649aea..5dcf08a5 100644 --- a/python/environs/py_login.c +++ b/python/environs/py_login.c @@ -24,6 +24,7 @@ */ #include "../lassomod.h" +#include "../xml/py_xml.h" #include "py_login.h" @@ -41,6 +42,37 @@ PyObject *LassoLogin_wrap(LassoLogin *login) { /******************************************************************************/ +PyObject *login_getattr(PyObject *self, PyObject *args) { + PyObject *login_obj; + LassoLogin *login; + const char *attr; + + if (CheckArgs(args, "OS:login_get_attr")) { + if (!PyArg_ParseTuple(args, "Os:login_get_attr", &login_obj, &attr)) + return NULL; + } + else return NULL; + + login = LassoLogin_get(login_obj); + + if (!strcmp(attr, "__members__")) + return Py_BuildValue("[ssss]", "request", "response", "request_type", + "msg_url"); + if (!strcmp(attr, "request")) + return (LassoNode_wrap(LASSO_PROFILE_CONTEXT(login)->request)); + if (!strcmp(attr, "response")) + return (LassoNode_wrap(LASSO_PROFILE_CONTEXT(login)->response)); + if (!strcmp(attr, "request_type")) + return (int_wrap(LASSO_PROFILE_CONTEXT(login)->request_type)); + if (!strcmp(attr, "msg_url")) + return (charPtr_wrap(LASSO_PROFILE_CONTEXT(login)->msg_url)); + + Py_INCREF(Py_None); + return (Py_None); +} + +/******************************************************************************/ + PyObject *login_new(PyObject *self, PyObject *args) { PyObject *server_obj, *user_obj; LassoLogin *login; @@ -110,3 +142,37 @@ PyObject *login_build_artifact_msg(PyObject *self, PyObject *args) { return (int_wrap(ret)); } + +PyObject *login_build_authn_request_msg(PyObject *self, PyObject *args) { + PyObject *login_obj; + gint ret; + + if (CheckArgs(args, "O:login_build_authn_request_msg")) { + if(!PyArg_ParseTuple(args, (char *) "O:login_build_authn_request_msg", + &login_obj)) + return NULL; + } + else return NULL; + + ret = lasso_login_build_authn_request_msg(LassoLogin_get(login_obj)); + + return (int_wrap(ret)); +} + +PyObject *login_init_authn_request(PyObject *self, PyObject *args) { + PyObject *login_obj; + gchar *remote_providerID; + gint ret; + + if (CheckArgs(args, "OS:login_init_authn_request")) { + if(!PyArg_ParseTuple(args, (char *) "Os:login_init_authn_request", + &login_obj, &remote_providerID)) + return NULL; + } + else return NULL; + + ret = lasso_login_init_authn_request(LassoLogin_get(login_obj), + remote_providerID); + + return (int_wrap(ret)); +} diff --git a/python/environs/py_login.h b/python/environs/py_login.h index d6ff0fb3..4956aff7 100644 --- a/python/environs/py_login.h +++ b/python/environs/py_login.h @@ -39,8 +39,11 @@ typedef struct { #define LassoLogin_get(v) (((v) == Py_None) ? NULL : (((LassoLogin_object *)(PyObject_GetAttr(v, PyString_FromString("_o"))))->obj)) PyObject *LassoLogin_wrap(LassoLogin *login); +PyObject *login_getattr(PyObject *self, PyObject *args); PyObject *login_new(PyObject *self, PyObject *args); PyObject *login_new_from_dump(PyObject *self, PyObject *args); PyObject *login_build_artifact_msg(PyObject *self, PyObject *args); +PyObject *login_build_authn_request_msg(PyObject *self, PyObject *args); +PyObject *login_init_authn_request(PyObject *self, PyObject *args); #endif /* __PYLASSO_PY_LOGIN_H__ */ |
