diff options
author | Nicolas Clapies <nclapies@entrouvert.com> | 2004-07-18 23:35:59 +0000 |
---|---|---|
committer | Nicolas Clapies <nclapies@entrouvert.com> | 2004-07-18 23:35:59 +0000 |
commit | 244c4e278f655d2434f3b65158a43816ac1a110d (patch) | |
tree | bd2346719b66bdad7e9aac9f61a7fee7fbcfcffb /python | |
parent | 721642847cd1acf399f191d1bb205d7d6466f4fb (diff) | |
download | lasso-244c4e278f655d2434f3b65158a43816ac1a110d.tar.gz lasso-244c4e278f655d2434f3b65158a43816ac1a110d.tar.xz lasso-244c4e278f655d2434f3b65158a43816ac1a110d.zip |
*** empty log message ***
Diffstat (limited to 'python')
-rw-r--r-- | python/environs/py_federation_termination.c | 133 | ||||
-rw-r--r-- | python/environs/py_federation_termination.h | 48 | ||||
-rw-r--r-- | python/lassomod.c | 9 | ||||
-rwxr-xr-x | python/setup.py | 9 |
4 files changed, 195 insertions, 4 deletions
diff --git a/python/environs/py_federation_termination.c b/python/environs/py_federation_termination.c new file mode 100644 index 00000000..a9e9718d --- /dev/null +++ b/python/environs/py_federation_termination.c @@ -0,0 +1,133 @@ +/* $Id$ + * + * PyLasso -- Python bindings for Lasso library + * + * Copyright (C) 2004 Entr'ouvert + * http://lasso.labs.libre-entreprise.org + * + * Authors: Valery Febvre <vfebvre@easter-eggs.com> + * Nicolas Clapies <nclapies@entrouvert.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "../lassomod.h" + +#include "py_federation_termination.h" + + +PyObject *LassoFederationTermination_wrap(LassoFederationTermination *federation_termination) { + PyObject *ret; + + if (federation_termination == NULL) { + Py_INCREF(Py_None); + return (Py_None); + } + ret = PyCObject_FromVoidPtrAndDesc((void *) federation_termination, + (char *) "LassoFederationTermination *", NULL); + return (ret); +} + +/******************************************************************************/ + +PyObject *federation_termination_new(PyObject *self, PyObject *args) { + PyObject *server_obj, *user_obj; + LassoFederationTermination *federation_termination; + gint provider_type; + + if (CheckArgs(args, "OOI:federation_termination_new")) { + if(!PyArg_ParseTuple(args, (char *) "OOi:federation_termination_new", + &server_obj, &user_obj, &provider_type)) + return NULL; + } + else return NULL; + + federation_termination = lasso_federation_termination_new(LassoServer_get(server_obj), + LassoUser_get(user_obj), + + provider_type); + + return (LassoFederationTermination_wrap(federation_termination)); +} + +PyObject *federation_termination_build_notification_msg(PyObject *self, PyObject *args) { + PyObject *federation_termination_obj; + gint codeError; + + if (CheckArgs(args, "O:federation_termination_build_notification_msg")) { + if(!PyArg_ParseTuple(args, (char *) "O:federation_termination_build_notification_msg", + &federation_termination_obj)) + return NULL; + } + else return NULL; + + codeError = lasso_federation_termination_build_notification_msg(LassoFederationTermination_get(federation_termination_obj)); + + return(int_wrap(codeError)); +} + +PyObject *federation_termination_destroy(PyObject *self, PyObject *args){ + PyObject *federation_termination_obj; + + if (CheckArgs(args, "O:federation_termination_destroy")) { + if(!PyArg_ParseTuple(args, (char *) "O:federation_termination_destroy", + &federation_termination_obj)) + return NULL; + } + else return NULL; + + lasso_federation_termination_destroy(LassoFederationTermination_get(federation_termination_obj)); + + Py_INCREF(Py_None); + return(Py_None); +} + +PyObject *federation_termination_init_notification(PyObject *self, PyObject *args) { + PyObject *federation_termination_obj; + gchar *remote_providerID; + gint codeError; + + if (CheckArgs(args, "OS:federation_termination_init_notification")) { + if(!PyArg_ParseTuple(args, (char *) "Os:federation_termination_init_notification", + &federation_termination_obj, &remote_providerID)) + return NULL; + } + else return NULL; + + codeError = lasso_federation_termination_init_notification(LassoFederationTermination_get(federation_termination_obj), + remote_providerID); + + return(int_wrap(codeError)); +} + +PyObject *federation_termination_process_notification_msg(PyObject *self, PyObject *args) { + PyObject *federation_termination_obj; + gchar *notification_msg; + gint notification_method; + gint codeError; + + if (CheckArgs(args, "OSI:federation_termination_process_notification_msg")) { + if(!PyArg_ParseTuple(args, (char *) "Osi:federation_termination_process_notification_msg", + &federation_termination_obj, ¬ification_msg, ¬ification_method)) + return NULL; + } + else return NULL; + + codeError = lasso_federation_termination_process_notification_msg(LassoFederationTermination_get(federation_termination_obj), + notification_msg, notification_method); + + return(int_wrap(codeError)); +} + diff --git a/python/environs/py_federation_termination.h b/python/environs/py_federation_termination.h new file mode 100644 index 00000000..cc1ebefb --- /dev/null +++ b/python/environs/py_federation_termination.h @@ -0,0 +1,48 @@ +/* $Id$ + * + * PyLasso -- Python bindings for Lasso library + * + * Copyright (C) 2004 Entr'ouvert + * http://lasso.labs.libre-entreprise.org + * + * Authors: Valery Febvre <vfebvre@easter-eggs.com> + * Nicolas Clapies <nclapies@entrouvert.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef __PYLASSO_PY_FEDERATION_TERMINATION_H__ +#define __PYLASSO_PY_FEDERATION_TERMINATION_H__ + +#include <lasso/environs/federation_termination.h> + +#include "py_server.h" +#include "py_user.h" + +typedef struct { + PyObject_HEAD + LassoFederationTermination *obj; +} LassoFederationTermination_object; + +#define LassoFederationTermination_get(v) (((v) == Py_None) ? NULL : (((LassoFederationTermination_object *)(PyObject_GetAttr(v, PyString_FromString("_o"))))->obj)) +PyObject *LassoFederationTermination_wrap(LassoFederationTermination *federation_termination); + +PyObject *federation_termination_new(PyObject *self, PyObject *args); +PyObject *federation_termination_build_notification_msg(PyObject *self, PyObject *args); +PyObject *federation_termination_destroy(PyObject *self, PyObject *args); +PyObject *federation_termination_init_notification(PyObject *self, PyObject *args); +PyObject *federation_termination_process_notification_msg(PyObject *self, PyObject *args); + +#endif /* __PYLASSO_PY_FEDERATION_TERMINATION_H__ */ diff --git a/python/lassomod.c b/python/lassomod.c index bdeef7bc..8a10fe21 100644 --- a/python/lassomod.c +++ b/python/lassomod.c @@ -53,6 +53,7 @@ #include "protocols/elements/py_assertion.h" #include "protocols/elements/py_authentication_statement.h" +#include "environs/py_federation_termination.h" #include "environs/py_login.h" #include "environs/py_logout.h" #include "environs/py_server.h" @@ -201,6 +202,14 @@ static PyMethodDef lasso_methods[] = { {"authentication_statement_new", authentication_statement_new, METH_VARARGS}, /* environs */ + + /* py_federation_termination.h */ + {"federation_termination_new", federation_termination_new, METH_VARARGS}, + {"federation_termination_build_notification_msg", federation_termination_build_notification_msg, METH_VARARGS}, + {"federation_termination_destroy", federation_termination_destroy, METH_VARARGS}, + {"federation_termination_init_notification", federation_termination_init_notification, METH_VARARGS}, + {"federation_termination_process_notification_msg", federation_termination_process_notification_msg, METH_VARARGS}, + /* py_login.h */ {"login_getattr", login_getattr, METH_VARARGS}, {"login_new", login_new, METH_VARARGS}, diff --git a/python/setup.py b/python/setup.py index ba1cf784..33bf5a35 100755 --- a/python/setup.py +++ b/python/setup.py @@ -184,10 +184,10 @@ extract_cflags(xmlsec1_cflags) extract_libs(xmlsec1_libs) # FIXME : cflags & libs for lasso -include_dirs.append('..') -library_dirs.append('../lasso/.libs') -#include_dirs.append('/usr/local/include') -#library_dirs.append('/usr/local/lib') +#include_dirs.append('..') +#library_dirs.append('../lasso/.libs') +include_dirs.append('/usr/local/include') +library_dirs.append('/usr/local/lib') libraries.append('lasso') em = Extension("lassomod", @@ -216,6 +216,7 @@ em = Extension("lassomod", "protocols/py_register_name_identifier_response.c", "protocols/elements/py_assertion.c", "protocols/elements/py_authentication_statement.c", + "environs/py_federation_termination.c", "environs/py_login.c", "environs/py_logout.c", "environs/py_server.c", |