From 4690f331ef2bdce1bc4d1b945ab4ad9e4405a9e5 Mon Sep 17 00:00:00 2001 From: Nicolas Clapies Date: Tue, 27 Apr 2004 09:35:08 +0000 Subject: initial version --- python/protocols/py_logout_request.c | 80 ++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 python/protocols/py_logout_request.c (limited to 'python/protocols/py_logout_request.c') diff --git a/python/protocols/py_logout_request.c b/python/protocols/py_logout_request.c new file mode 100644 index 00000000..d89a3ae0 --- /dev/null +++ b/python/protocols/py_logout_request.c @@ -0,0 +1,80 @@ +/* $Id$ + * + * PyLasso -- Python bindings for Lasso library + * + * Copyright (C) 2004 Entr'ouvert + * http://lasso.labs.libre-entreprise.org + * + * Author: Valery Febvre + * Nicolas Clapies + * + * 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 "../xml/py_xml.h" +#include "py_logout_request.h" + + +PyObject *lassoLogoutRequest_wrap(LassoLogoutRequest *request) { + PyObject *ret; + + if (request == NULL) { + Py_INCREF(Py_None); + return (Py_None); + } + ret = PyCObject_FromVoidPtrAndDesc((void *) request, + (char *) "LassoLogoutRequest *", NULL); + return (ret); +} + +PyObject *logout_request_getattr(PyObject *self, PyObject *args) { + PyObject *request_obj; + LassoLogoutRequest *request; + const char *attr; + + if (CheckArgs(args, "OS:logout_request_get_attr")) { + if (!PyArg_ParseTuple(args, "Os:logout_request_get_attr", &request_obj, &attr)) + return NULL; + } + else return NULL; + + request = lassoLogoutRequest_get(request_obj); + + Py_INCREF(Py_None); + return (Py_None); +} + +PyObject *logout_request(PyObject *self, PyObject *args) { + const xmlChar *providerID; + const xmlChar *nameIdentifier; + const xmlChar *nameQualifier; + const xmlChar *format; + + LassoLogoutRequest *request; + + if(!PyArg_ParseTuple(args, (char *) "ssss:logout_request", + &providerID, + &nameIdentifier, &nameQualifier, &format)) + return NULL; + + request = (LassoLogoutRequest *)lasso_logout_request_new(providerID, + nameIdentifier, + nameQualifier, + format); + + return (lassoLogoutRequest_wrap(request)); +} -- cgit