diff options
| author | Damien Laniel <dlaniel@entrouvert.com> | 2007-05-09 16:41:32 +0000 |
|---|---|---|
| committer | Damien Laniel <dlaniel@entrouvert.com> | 2007-05-09 16:41:32 +0000 |
| commit | 7f11dc341a6714a9fc5148ab9018b6797bc37b71 (patch) | |
| tree | e47d7e0766102f2c06c8b9b21542c5ffaf2748fe | |
| parent | f48ab7d7e164fcdecd56445baa1a3c1993e1f934 (diff) | |
| download | lasso-7f11dc341a6714a9fc5148ab9018b6797bc37b71.tar.gz lasso-7f11dc341a6714a9fc5148ab9018b6797bc37b71.tar.xz lasso-7f11dc341a6714a9fc5148ab9018b6797bc37b71.zip | |
in lasso_idwsf2_discovery_register_metadata, create idenity if it doesn't exist
| -rw-r--r-- | lasso/id-wsf-2.0/discovery.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lasso/id-wsf-2.0/discovery.c b/lasso/id-wsf-2.0/discovery.c index e83680b8..02e86221 100644 --- a/lasso/id-wsf-2.0/discovery.c +++ b/lasso/id-wsf-2.0/discovery.c @@ -312,14 +312,19 @@ lasso_idwsf2_discovery_register_metadata(LassoIdWsf2Discovery *discovery) LassoWsf2Profile *profile = LASSO_WSF2_PROFILE(discovery); LassoIdWsf2DiscoSvcMDAssociationAdd *request; LassoIdWsf2DiscoSvcMDAssociationAddResponse *response; - LassoIdentity *identity = profile->identity; + LassoIdentity *identity; LassoSoapEnvelope *envelope; GList *i; int res = 0; g_return_val_if_fail(LASSO_IS_IDWSF2_DISCOVERY(discovery), LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ); - g_return_val_if_fail(LASSO_IS_IDENTITY(identity), LASSO_PROFILE_ERROR_IDENTITY_NOT_FOUND); + + /* verify if identity already exists else create it */ + if (profile->identity == NULL) { + profile->identity = lasso_identity_new(); + } + identity = profile->identity; if (! LASSO_IS_IDWSF2_DISCO_SVC_MD_ASSOCIATION_ADD(profile->request)) { res = LASSO_PROFILE_ERROR_INVALID_SOAP_MSG; |
