summaryrefslogtreecommitdiffstats
path: root/lasso/id-ff
diff options
context:
space:
mode:
Diffstat (limited to 'lasso/id-ff')
-rw-r--r--lasso/id-ff/defederation.c10
-rw-r--r--lasso/id-ff/login.c10
-rw-r--r--lasso/id-ff/logout.c14
-rw-r--r--lasso/id-ff/name_identifier_mapping.c16
-rw-r--r--lasso/id-ff/name_registration.c24
-rw-r--r--lasso/id-ff/server.c3
6 files changed, 39 insertions, 38 deletions
diff --git a/lasso/id-ff/defederation.c b/lasso/id-ff/defederation.c
index 5b037520..ab27d73b 100644
--- a/lasso/id-ff/defederation.c
+++ b/lasso/id-ff/defederation.c
@@ -161,12 +161,11 @@ lasso_defederation_init_notification(LassoDefederation *defederation, gchar *rem
return -1;
}
-
remote_provider = g_hash_table_lookup(
profile->server->providers, profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Remote provider not found");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* get federation */
@@ -354,8 +353,9 @@ lasso_defederation_validate_notification(LassoDefederation *defederation)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Provider not found");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL,
+ LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* build the QUERY and the url. Dont need to sign the query,
diff --git a/lasso/id-ff/login.c b/lasso/id-ff/login.c
index 33a4ca41..d42f5d89 100644
--- a/lasso/id-ff/login.c
+++ b/lasso/id-ff/login.c
@@ -586,7 +586,8 @@ lasso_login_build_authn_request_msg(LassoLogin *login, const gchar *remote_provi
remote_provider = g_hash_table_lookup(LASSO_PROFILE(login)->server->providers,
LASSO_PROFILE(login)->remote_providerID);
if (remote_provider == NULL) {
- return -1; /* XXX */
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ LASSO_PROFILE(login)->remote_providerID);
}
protocolProfile = LASSO_LIB_AUTHN_REQUEST(LASSO_PROFILE(login)->request)->ProtocolProfile;
@@ -789,8 +790,8 @@ lasso_login_build_request_msg(LassoLogin *login)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Remote provider not found");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
profile->msg_url = lasso_provider_get_metadata_one(remote_provider, "SoapEndpoint");
return 0;
@@ -1004,8 +1005,7 @@ lasso_login_init_idp_initiated_authn_request(LassoLogin *login,
if (remote_providerID == NULL) {
first_providerID = lasso_server_get_first_providerID(LASSO_PROFILE(login)->server);
LASSO_PROFILE(login)->remote_providerID = first_providerID;
- }
- else {
+ } else {
LASSO_PROFILE(login)->remote_providerID = g_strdup(remote_providerID);
}
diff --git a/lasso/id-ff/logout.c b/lasso/id-ff/logout.c
index e40654fb..e5a14cbb 100644
--- a/lasso/id-ff/logout.c
+++ b/lasso/id-ff/logout.c
@@ -75,8 +75,8 @@ lasso_logout_build_request_msg(LassoLogout *logout)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* build the logout request message */
@@ -322,8 +322,8 @@ lasso_logout_init_request(LassoLogout *logout, char *remote_providerID,
remote_provider = g_hash_table_lookup(
profile->server->providers, profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Remote provider not found");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* before setting profile->request, verify if it is already set */
@@ -654,8 +654,10 @@ lasso_logout_validate_request(LassoLogout *logout)
/* get the provider */
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
- if (remote_provider == NULL)
- return -1;
+ if (remote_provider == NULL) {
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
+ }
/* Set LogoutResponse */
profile->response = NULL;
diff --git a/lasso/id-ff/name_identifier_mapping.c b/lasso/id-ff/name_identifier_mapping.c
index 06131ea9..cc73a150 100644
--- a/lasso/id-ff/name_identifier_mapping.c
+++ b/lasso/id-ff/name_identifier_mapping.c
@@ -43,8 +43,8 @@ lasso_name_identifier_mapping_build_request_msg(LassoNameIdentifierMapping *mapp
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Provider %s not found", profile->remote_providerID);
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
if (remote_provider->role != LASSO_PROVIDER_ROLE_IDP) {
@@ -82,8 +82,8 @@ lasso_name_identifier_mapping_build_response_msg(LassoNameIdentifierMapping *map
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Provider %s not found", profile->remote_providerID);
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
if (remote_provider->role != LASSO_PROVIDER_ROLE_SP) {
@@ -141,8 +141,8 @@ lasso_name_identifier_mapping_init_request(LassoNameIdentifierMapping *mapping,
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
if (remote_provider->role != LASSO_PROVIDER_ROLE_IDP) {
message(G_LOG_LEVEL_CRITICAL, "Init request method is forbidden for an IDP");
@@ -269,8 +269,8 @@ lasso_name_identifier_mapping_process_response_msg(LassoNameIdentifierMapping *m
remote_provider = g_hash_table_lookup(profile->server->providers,
LASSO_LIB_NAME_IDENTIFIER_MAPPING_RESPONSE(profile->response)->ProviderID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* verify signature */
diff --git a/lasso/id-ff/name_registration.c b/lasso/id-ff/name_registration.c
index b6dde3ac..da8cbbad 100644
--- a/lasso/id-ff/name_registration.c
+++ b/lasso/id-ff/name_registration.c
@@ -63,8 +63,8 @@ lasso_name_registration_build_request_msg(LassoNameRegistration *name_registrati
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
if (profile->http_request_method == LASSO_HTTP_METHOD_SOAP) {
@@ -118,8 +118,8 @@ lasso_name_registration_build_response_msg(LassoNameRegistration *name_registrat
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
if (profile->http_request_method == LASSO_HTTP_METHOD_SOAP) {
@@ -190,8 +190,8 @@ lasso_name_registration_init_request(LassoNameRegistration *name_registration,
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* Get federation */
@@ -386,8 +386,8 @@ lasso_name_registration_process_response_msg(LassoNameRegistration *name_registr
remote_provider = g_hash_table_lookup(profile->server->providers,
LASSO_LIB_STATUS_RESPONSE(profile->response)->ProviderID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* verify signature */
@@ -416,8 +416,8 @@ lasso_name_registration_process_response_msg(LassoNameRegistration *name_registr
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Remote provider not found");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
if (remote_provider->role == LASSO_PROVIDER_ROLE_SP) {
@@ -503,8 +503,8 @@ lasso_name_registration_validate_request(LassoNameRegistration *name_registratio
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (remote_provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "XXX");
- return -1;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
+ profile->remote_providerID);
}
/* update name identifier in federation */
diff --git a/lasso/id-ff/server.c b/lasso/id-ff/server.c
index cdec3b0b..3cb78ad5 100644
--- a/lasso/id-ff/server.c
+++ b/lasso/id-ff/server.c
@@ -57,8 +57,7 @@ lasso_server_add_provider(LassoServer *server, LassoProviderRole role,
provider = lasso_provider_new(role, metadata, public_key, ca_cert_chain);
if (provider == NULL) {
- message(G_LOG_LEVEL_CRITICAL, "Failed to add new provider.");
- return LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED;
+ return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED);
}
g_hash_table_insert(server->providers, g_strdup(provider->ProviderID), provider);