diff options
author | Nicolas Clapies <nclapies@entrouvert.com> | 2004-09-22 14:33:06 +0000 |
---|---|---|
committer | Nicolas Clapies <nclapies@entrouvert.com> | 2004-09-22 14:33:06 +0000 |
commit | 179a57c71fa32db5e0c0cf807826ec2756830535 (patch) | |
tree | 018d7beff0323386d86a342bd13e23b3ca28be47 /lasso/Attic | |
parent | 2e321ac1f615cd7d38bb8a948055a13530005eac (diff) | |
download | lasso-179a57c71fa32db5e0c0cf807826ec2756830535.tar.gz lasso-179a57c71fa32db5e0c0cf807826ec2756830535.tar.xz lasso-179a57c71fa32db5e0c0cf807826ec2756830535.zip |
lasso_federation_set_local_nameIdentifier() and lasso_federation_set_remote_nameIdentifier() remove the old value before setting local_nameIdentifier of remote_nameIdentifier
Diffstat (limited to 'lasso/Attic')
-rw-r--r-- | lasso/Attic/protocols/federation.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lasso/Attic/protocols/federation.c b/lasso/Attic/protocols/federation.c index c6e6c431..8ff4e3a1 100644 --- a/lasso/Attic/protocols/federation.c +++ b/lasso/Attic/protocols/federation.c @@ -150,6 +150,9 @@ void lasso_federation_set_local_nameIdentifier(LassoFederation *federation, LassoNode *nameIdentifier) { + if(federation->local_nameIdentifier != NULL) { + lasso_node_destroy(federation->local_nameIdentifier); + } federation->local_nameIdentifier = lasso_node_copy(nameIdentifier); } @@ -157,6 +160,9 @@ void lasso_federation_set_remote_nameIdentifier(LassoFederation *federation, LassoNode *nameIdentifier) { + if(federation->remote_nameIdentifier != NULL) { + lasso_node_destroy(federation->remote_nameIdentifier); + } federation->remote_nameIdentifier = lasso_node_copy(nameIdentifier); } @@ -166,6 +172,10 @@ lasso_federation_verify_nameIdentifier(LassoFederation *federation, { gchar *federation_content, *nameIdentifier_content; + g_return_val_if_fail(LASSO_IS_FEDERATION(federation), FALSE); + g_return_val_if_fail(LASSO_IS_NODE(nameIdentifier), FALSE); + + /* verify local name identifier */ nameIdentifier_content = lasso_node_get_content(nameIdentifier, NULL); if(federation->local_nameIdentifier != NULL) { federation_content = lasso_node_get_content(federation->local_nameIdentifier, @@ -176,6 +186,8 @@ lasso_federation_verify_nameIdentifier(LassoFederation *federation, } xmlFree(federation_content); } + + /* verify remote name identifier */ if(federation->remote_nameIdentifier != NULL) { federation_content = lasso_node_get_content(federation->remote_nameIdentifier, NULL); |