summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDamien Laniel <dlaniel@entrouvert.com>2007-06-13 14:17:26 +0000
committerDamien Laniel <dlaniel@entrouvert.com>2007-06-13 14:17:26 +0000
commitfececc47cd8b1f171ae452c72f3a33f8eec7dc65 (patch)
tree490b15112023ea76b924b3ad7dd879bcae8e9be8
parent82d2325934b2253fa60d2fbe683cc3a6c3617913 (diff)
downloadlasso-fececc47cd8b1f171ae452c72f3a33f8eec7dc65.tar.gz
lasso-fececc47cd8b1f171ae452c72f3a33f8eec7dc65.tar.xz
lasso-fececc47cd8b1f171ae452c72f3a33f8eec7dc65.zip
removed IdWsf2Profile and use LassoProfile instead
-rw-r--r--lasso/id-wsf-2.0/profile.c (renamed from lasso/id-wsf-2.0/wsf2_profile.c)242
-rw-r--r--lasso/id-wsf-2.0/profile.h (renamed from lasso/id-wsf-2.0/wsf2_profile_private.h)33
-rw-r--r--lasso/id-wsf-2.0/wsf2_profile.h115
3 files changed, 34 insertions, 356 deletions
diff --git a/lasso/id-wsf-2.0/wsf2_profile.c b/lasso/id-wsf-2.0/profile.c
index 1b0dbb7c..212f3014 100644
--- a/lasso/id-wsf-2.0/wsf2_profile.c
+++ b/lasso/id-wsf-2.0/profile.c
@@ -34,8 +34,7 @@
#include <lasso/id-ff/serverprivate.h>
#include <lasso/id-ff/providerprivate.h>
-#include <lasso/id-wsf-2.0/wsf2_profile.h>
-#include <lasso/id-wsf-2.0/wsf2_profile_private.h>
+#include <lasso/id-wsf-2.0/profile.h>
#include <lasso/id-wsf-2.0/session.h>
#include <lasso/xml/soap_fault.h>
@@ -48,20 +47,12 @@
#include <lasso/xml/saml-2.0/saml2_assertion.h>
-struct _LassoWsf2ProfilePrivate
-{
- gboolean dispose_has_run;
- LassoSoapFault *fault;
- gchar *public_key;
- GList *credentials;
-};
-
/*****************************************************************************/
/* private methods */
/*****************************************************************************/
LassoSoapEnvelope*
-lasso_wsf2_profile_build_soap_envelope(const char *refToMessageId, const char *providerId)
+lasso_idwsf2_profile_build_soap_envelope(const char *refToMessageId, const char *providerId)
{
LassoSoapEnvelope *envelope;
LassoSoapHeader *header;
@@ -91,123 +82,8 @@ lasso_wsf2_profile_build_soap_envelope(const char *refToMessageId, const char *p
/* public methods */
/*****************************************************************************/
-/**
- * lasso_wsf2_profile_get_identity:
- * @profile: a #LassoWsf2Profile
- *
- * Gets the identity bound to @profile.
- *
- * Return value: the identity or NULL if it none was found. The #LassoIdentity
- * object is internally allocated and must not be freed by the caller.
- **/
-LassoIdentity*
-lasso_wsf2_profile_get_identity(LassoWsf2Profile *profile)
-{
- if (profile->identity)
- return profile->identity;
- return NULL;
-}
-
-
-/**
- * lasso_wsf2_profile_get_session:
- * @profile: a #LassoWsf2Profile
- *
- * Gets the session bound to @profile.
- *
- * Return value: the session or NULL if it none was found. The #LassoSession
- * object is internally allocated and must not be freed by the caller.
- **/
-LassoSession*
-lasso_wsf2_profile_get_session(LassoWsf2Profile *profile)
-{
- if (profile->session == NULL)
- return NULL;
-
- if (lasso_session_is_empty(profile->session))
- return NULL;
-
- return profile->session;
-}
-
-
-/**
- * lasso_wsf2_profile_is_identity_dirty:
- * @profile: a #LassoWsf2Profile
- *
- * Checks whether identity has been modified (and should therefore be saved).
- *
- * Return value: %TRUE if identity has changed
- **/
-gboolean
-lasso_wsf2_profile_is_identity_dirty(LassoWsf2Profile *profile)
-{
- return (profile->identity && profile->identity->is_dirty);
-}
-
-
-/**
- * lasso_wsf2_profile_is_session_dirty:
- * @profile: a #LassoWsf2Profile
- *
- * Checks whether session has been modified (and should therefore be saved).
- *
- * Return value: %TRUE if session has changed
- **/
-gboolean
-lasso_wsf2_profile_is_session_dirty(LassoWsf2Profile *profile)
-{
- return (profile->session && profile->session->is_dirty);
-}
-
-
-/**
- * lasso_wsf2_profile_set_identity_from_dump:
- * @profile: a #LassoWsf2Profile
- * @dump: XML identity dump
- *
- * Builds a new #LassoIdentity object from XML dump and binds it to @profile.
- *
- * Return value: 0 on success; or a negative value otherwise.
- **/
-gint
-lasso_wsf2_profile_set_identity_from_dump(LassoWsf2Profile *profile, const gchar *dump)
-{
- g_return_val_if_fail(dump != NULL, LASSO_PARAM_ERROR_INVALID_VALUE);
-
- profile->identity = lasso_identity_new_from_dump(dump);
- if (profile->identity == NULL)
- return critical_error(LASSO_PROFILE_ERROR_BAD_IDENTITY_DUMP);
-
- return 0;
-}
-
-
-/**
- * lasso_wsf2_profile_set_session_from_dump:
- * @profile: a #LassoWsf2Profile
- * @dump: XML session dump
- *
- * Builds a new #LassoSession object from XML dump and binds it to @profile.
- *
- * Return value: 0 on success; or a negative value otherwise.
- **/
gint
-lasso_wsf2_profile_set_session_from_dump(LassoWsf2Profile *profile, const gchar *dump)
-{
- g_return_val_if_fail(dump != NULL, LASSO_PARAM_ERROR_INVALID_VALUE);
-
- profile->session = lasso_session_new_from_dump(dump);
- if (profile->session == NULL)
- return critical_error(LASSO_PROFILE_ERROR_BAD_SESSION_DUMP);
- profile->session->is_dirty = FALSE;
-
- return 0;
-}
-
-
-gint
-lasso_wsf2_profile_init_soap_request(LassoWsf2Profile *profile, LassoNode *request,
+lasso_idwsf2_profile_init_soap_request(LassoProfile *profile, LassoNode *request,
gchar *service_type)
{
LassoSoapEnvelope *envelope;
@@ -216,7 +92,7 @@ lasso_wsf2_profile_init_soap_request(LassoWsf2Profile *profile, LassoNode *reque
LassoWsse200401Security *wsse_security;
/* Initialise soap envelope */
- envelope = lasso_wsf2_profile_build_soap_envelope(NULL,
+ envelope = lasso_idwsf2_profile_build_soap_envelope(NULL,
LASSO_PROVIDER(profile->server)->ProviderID);
profile->soap_envelope_request = envelope;
@@ -238,9 +114,9 @@ lasso_wsf2_profile_init_soap_request(LassoWsf2Profile *profile, LassoNode *reque
}
gint
-lasso_wsf2_profile_build_request_msg(LassoWsf2Profile *profile)
+lasso_idwsf2_profile_build_request_msg(LassoProfile *profile)
{
- g_return_val_if_fail(LASSO_IS_WSF2_PROFILE(profile),
+ g_return_val_if_fail(LASSO_IS_PROFILE(profile),
LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ);
profile->msg_body = lasso_node_export_to_xml(LASSO_NODE(profile->soap_envelope_request));
@@ -249,7 +125,7 @@ lasso_wsf2_profile_build_request_msg(LassoWsf2Profile *profile)
}
gint
-lasso_wsf2_profile_process_soap_request_msg(LassoWsf2Profile *profile, const gchar *message)
+lasso_idwsf2_profile_process_soap_request_msg(LassoProfile *profile, const gchar *message)
{
LassoSoapEnvelope *envelope = NULL;
LassoSaml2Assertion *assertion;
@@ -261,7 +137,7 @@ lasso_wsf2_profile_process_soap_request_msg(LassoWsf2Profile *profile, const gch
GList *j;
int res = 0;
- g_return_val_if_fail(LASSO_IS_WSF2_PROFILE(profile),
+ g_return_val_if_fail(LASSO_IS_PROFILE(profile),
LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ);
g_return_val_if_fail(message != NULL, LASSO_PARAM_ERROR_INVALID_VALUE);
@@ -318,7 +194,7 @@ lasso_wsf2_profile_process_soap_request_msg(LassoWsf2Profile *profile, const gch
}
/* Set soap response */
- envelope = lasso_wsf2_profile_build_soap_envelope(NULL,
+ envelope = lasso_idwsf2_profile_build_soap_envelope(NULL,
LASSO_PROVIDER(profile->server)->ProviderID);
profile->soap_envelope_response = envelope;
@@ -326,9 +202,9 @@ lasso_wsf2_profile_process_soap_request_msg(LassoWsf2Profile *profile, const gch
}
gint
-lasso_wsf2_profile_build_response_msg(LassoWsf2Profile *profile)
+lasso_idwsf2_profile_build_response_msg(LassoProfile *profile)
{
- g_return_val_if_fail(LASSO_IS_WSF2_PROFILE(profile),
+ g_return_val_if_fail(LASSO_IS_PROFILE(profile),
LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ);
profile->msg_body = lasso_node_export_to_xml(LASSO_NODE(profile->soap_envelope_response));
@@ -337,12 +213,12 @@ lasso_wsf2_profile_build_response_msg(LassoWsf2Profile *profile)
}
gint
-lasso_wsf2_profile_process_soap_response_msg(LassoWsf2Profile *profile, const gchar *message)
+lasso_idwsf2_profile_process_soap_response_msg(LassoProfile *profile, const gchar *message)
{
LassoSoapEnvelope *envelope = NULL;
int res = 0;
- g_return_val_if_fail(LASSO_IS_WSF2_PROFILE(profile),
+ g_return_val_if_fail(LASSO_IS_PROFILE(profile),
LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ);
g_return_val_if_fail(message != NULL, LASSO_PARAM_ERROR_INVALID_VALUE);
@@ -364,95 +240,3 @@ lasso_wsf2_profile_process_soap_response_msg(LassoWsf2Profile *profile, const gc
return res;
}
-/*****************************************************************************/
-/* overrided parent class methods */
-/*****************************************************************************/
-
-static LassoNodeClass *parent_class = NULL;
-
-static void
-dispose(GObject *object)
-{
- LassoWsf2Profile *profile = LASSO_WSF2_PROFILE(object);
-
- if (profile->private_data->dispose_has_run == TRUE)
- return;
- profile->private_data->dispose_has_run = TRUE;
-
- G_OBJECT_CLASS(parent_class)->dispose(object);
-}
-
-static void
-finalize(GObject *object)
-{
- LassoWsf2Profile *profile = LASSO_WSF2_PROFILE(object);
- g_free(profile->private_data);
- profile->private_data = NULL;
- G_OBJECT_CLASS(parent_class)->finalize(object);
-}
-
-/*****************************************************************************/
-/* instance and class init functions */
-/*****************************************************************************/
-
-static void
-instance_init(LassoWsf2Profile *profile)
-{
- profile->server = NULL;
- profile->request = NULL;
- profile->response = NULL;
- profile->soap_envelope_request = NULL;
- profile->soap_envelope_response = NULL;
- profile->msg_url = NULL;
- profile->msg_body = NULL;
-
- profile->private_data = g_new0(LassoWsf2ProfilePrivate, 1);
- profile->private_data->dispose_has_run = FALSE;
- profile->private_data->fault = NULL;
- profile->private_data->credentials = NULL;
-}
-
-static void
-class_init(LassoWsf2ProfileClass *klass)
-{
- parent_class = g_type_class_peek_parent(klass);
-
- G_OBJECT_CLASS(klass)->dispose = dispose;
- G_OBJECT_CLASS(klass)->finalize = finalize;
-}
-
-GType
-lasso_wsf2_profile_get_type()
-{
- static GType this_type = 0;
-
- if (!this_type) {
- static const GTypeInfo this_info = {
- sizeof(LassoWsf2ProfileClass),
- NULL,
- NULL,
- (GClassInitFunc) class_init,
- NULL,
- NULL,
- sizeof(LassoWsf2Profile),
- 0,
- (GInstanceInitFunc) instance_init,
- };
-
- this_type = g_type_register_static(LASSO_TYPE_NODE,
- "LassoWsf2Profile", &this_info, 0);
- }
- return this_type;
-}
-
-LassoWsf2Profile*
-lasso_wsf2_profile_new(LassoServer *server)
-{
- LassoWsf2Profile *profile = NULL;
-
- g_return_val_if_fail(server != NULL, NULL);
-
- profile = g_object_new(LASSO_TYPE_WSF2_PROFILE, NULL);
-
- return profile;
-}
diff --git a/lasso/id-wsf-2.0/wsf2_profile_private.h b/lasso/id-wsf-2.0/profile.h
index 48ec42ee..b7d4edb7 100644
--- a/lasso/id-wsf-2.0/wsf2_profile_private.h
+++ b/lasso/id-wsf-2.0/profile.h
@@ -1,4 +1,4 @@
-/* $Id: wsf_profile_private.h,v 1.4 2005/10/06 15:03:56 nclapies Exp $
+/* $Id: wsf_profile.h,v 1.13 2006/11/14 17:07:30 Exp $
*
* Lasso - A free implementation of the Liberty Alliance specifications.
*
@@ -22,26 +22,35 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#ifndef __LASSO_WSF2_PROFILE_PRIVATE_H__
-#define __LASSO_WSF2_PROFILE_PRIVATE_H__
+#ifndef __LASSO_IDWSF2_PROFILE_H__
+#define __LASSO_IDWSF2_PROFILE_H__
#ifdef __cplusplus
extern "C" {
-
#endif /* __cplusplus */
-#include <lasso/xml/soap_fault.h>
+#include <lasso/id-ff/profile.h>
+
+LASSO_EXPORT gint lasso_idwsf2_profile_init_soap_request(LassoProfile *profile,
+ LassoNode *request, gchar *service_type);
+
+LASSO_EXPORT gint lasso_idwsf2_profile_build_request_msg(LassoProfile *profile);
-//void lasso_wsf_profile_set_description(LassoWsfProfile *profile,
-// LassoDiscoDescription *description);
-//void lasso_wsf_profile_set_security_mech_id(LassoWsfProfile *profile,
-// const gchar *security_mech_id);
-LassoSoapFault* lasso_wsf2_profile_get_fault(LassoWsf2Profile *profile);
+LASSO_EXPORT gint lasso_idwsf2_profile_process_soap_request_msg(LassoProfile *profile,
+ const gchar *message);
-void lasso_wsf2_profile_set_public_key(LassoWsf2Profile *profile, const char *public_key);
+LASSO_EXPORT gint lasso_idwsf2_profile_build_response_msg(LassoProfile *profile);
+
+LASSO_EXPORT gint lasso_idwsf2_profile_process_soap_response_msg(LassoProfile *profile,
+ const gchar *message);
+
+/* Private method */
+LassoSoapEnvelope* lasso_idwsf2_profile_build_soap_envelope(const char *refToMessageId,
+ const char *providerId);
#ifdef __cplusplus
}
#endif /* __cplusplus */
-#endif /* __LASSO_WSF2_PROFILE_PRIVATE_H__ */
+#endif /* __LASSO_IDWSF2_PROFILE_H__ */
+
diff --git a/lasso/id-wsf-2.0/wsf2_profile.h b/lasso/id-wsf-2.0/wsf2_profile.h
deleted file mode 100644
index da899569..00000000
--- a/lasso/id-wsf-2.0/wsf2_profile.h
+++ /dev/null
@@ -1,115 +0,0 @@
-/* $Id: wsf_profile.h,v 1.13 2006/11/14 17:07:30 Exp $
- *
- * Lasso - A free implementation of the Liberty Alliance specifications.
- *
- * Copyright (C) 2004-2007 Entr'ouvert
- * http://lasso.entrouvert.org
- *
- * Authors: See AUTHORS file in top-level directory.
- *
- * 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 __LASSO_WSF2_PROFILE_H__
-#define __LASSO_WSF2_PROFILE_H__
-
-#ifdef __cplusplus
-extern "C" {
-
-#endif /* __cplusplus */
-
-#include <lasso/id-ff/server.h>
-#include <lasso/id-ff/identity.h>
-#include <lasso/id-ff/session.h>
-#include <lasso/xml/soap_envelope.h>
-#include <lasso/xml/soap_binding_provider.h>
-
-#define LASSO_TYPE_WSF2_PROFILE (lasso_wsf2_profile_get_type())
-#define LASSO_WSF2_PROFILE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), \
- LASSO_TYPE_WSF2_PROFILE, LassoWsf2Profile))
-#define LASSO_WSF2_PROFILE_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_CAST((klass), LASSO_TYPE_WSF2_PROFILE, LassoWsf2ProfileClass))
-#define LASSO_IS_WSF2_PROFILE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), LASSO_TYPE_WSF2_PROFILE))
-#define LASSO_IS_WSF2_PROFILE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), \
- LASSO_TYPE_WSF2_PROFILE))
-#define LASSO_WSF2_PROFILE_GET_CLASS(o) \
- (G_TYPE_INSTANCE_GET_CLASS ((o), LASSO_TYPE_WSF2_PROFILE, LassoWsf2ProfileClass))
-
-typedef struct _LassoWsf2Profile LassoWsf2Profile;
-typedef struct _LassoWsf2ProfileClass LassoWsf2ProfileClass;
-typedef struct _LassoWsf2ProfilePrivate LassoWsf2ProfilePrivate;
-
-struct _LassoWsf2Profile {
- LassoNode parent;
-
- LassoServer *server;
-
- LassoNode *request;
- LassoNode *response;
-
- LassoSoapEnvelope *soap_envelope_request;
- LassoSoapEnvelope *soap_envelope_response;
-
- gchar *msg_url;
- gchar *msg_body;
-
- /*< private >*/
- LassoIdentity *identity;
- LassoSession *session;
-
- gchar *name_id;
-
- LassoWsf2ProfilePrivate *private_data;
-};
-
-struct _LassoWsf2ProfileClass {
- LassoNodeClass parent;
-};
-
-LASSO_EXPORT GType lasso_wsf2_profile_get_type(void);
-
-LASSO_EXPORT LassoWsf2Profile* lasso_wsf2_profile_new(LassoServer *server);
-
-LASSO_EXPORT LassoIdentity* lasso_wsf2_profile_get_identity(LassoWsf2Profile *profile);
-LASSO_EXPORT LassoSession* lasso_wsf2_profile_get_session(LassoWsf2Profile *profile);
-LASSO_EXPORT gboolean lasso_wsf2_profile_is_identity_dirty(LassoWsf2Profile *profile);
-LASSO_EXPORT gboolean lasso_wsf2_profile_is_session_dirty(LassoWsf2Profile *profile);
-LASSO_EXPORT gint lasso_wsf2_profile_set_identity_from_dump(LassoWsf2Profile *profile,
- const gchar *dump);
-LASSO_EXPORT gint lasso_wsf2_profile_set_session_from_dump(LassoWsf2Profile *profile,
- const gchar *dump);
-
-LASSO_EXPORT gint lasso_wsf2_profile_init_soap_request(LassoWsf2Profile *profile,
- LassoNode *request, gchar *service_type);
-
-LASSO_EXPORT gint lasso_wsf2_profile_build_request_msg(LassoWsf2Profile *profile);
-
-LASSO_EXPORT gint lasso_wsf2_profile_process_soap_request_msg(LassoWsf2Profile *profile,
- const gchar *message);
-
-LASSO_EXPORT gint lasso_wsf2_profile_build_response_msg(LassoWsf2Profile *profile);
-
-LASSO_EXPORT gint lasso_wsf2_profile_process_soap_response_msg(LassoWsf2Profile *profile,
- const gchar *message);
-
-/* Private method */
-LassoSoapEnvelope* lasso_wsf2_profile_build_soap_envelope(const char *refToMessageId,
- const char *providerId);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __LASSO_WSF2_PROFILE_H__ */