more error code harmony, now with a new critical_error macro

This commit is contained in:
Frédéric Péters 2004-12-14 15:46:25 +00:00
parent 18dbcc8163
commit 2bda2b596e
8 changed files with 62 additions and 65 deletions

View File

@ -66,7 +66,7 @@ lasso_defederation_build_notification_msg(LassoDefederation *defederation)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -106,8 +106,7 @@ lasso_defederation_build_notification_msg(LassoDefederation *defederation)
}
if (profile->msg_url == NULL) {
message(G_LOG_LEVEL_CRITICAL, "Invalid http method");
return LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD;
return critical_error(LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
}
return 0;
@ -164,7 +163,7 @@ lasso_defederation_init_notification(LassoDefederation *defederation, gchar *rem
remote_provider = g_hash_table_lookup(
profile->server->providers, profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -197,8 +196,7 @@ lasso_defederation_init_notification(LassoDefederation *defederation, gchar *rem
LASSO_MD_PROTOCOL_TYPE_FEDERATION_TERMINATION,
http_method,
TRUE) == FALSE) {
message(G_LOG_LEVEL_CRITICAL, "This provider can't initiate this profile");
return LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE;
return critical_error(LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
}
}
@ -279,7 +277,7 @@ lasso_defederation_process_notification_msg(LassoDefederation *defederation, cha
profile->request = lasso_lib_federation_termination_notification_new();
format = lasso_node_init_from_message(profile->request, request_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
profile->remote_providerID = g_strdup(LASSO_LIB_FEDERATION_TERMINATION_NOTIFICATION(
@ -287,7 +285,7 @@ lasso_defederation_process_notification_msg(LassoDefederation *defederation, cha
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -352,8 +350,7 @@ lasso_defederation_validate_notification(LassoDefederation *defederation)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL,
LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}

View File

@ -263,8 +263,7 @@ lasso_login_process_federation(LassoLogin *login, gboolean is_consent_obtained)
if (strcmp(nameIDPolicy, LASSO_LIB_NAMEID_POLICY_TYPE_FEDERATED) != 0 &&
strcmp(nameIDPolicy, LASSO_LIB_NAMEID_POLICY_TYPE_ANY) != 0) {
message(G_LOG_LEVEL_CRITICAL, "unknown nameidpolicy");
return LASSO_LOGIN_ERROR_INVALID_NAMEIDPOLICY;
return critical_error(LASSO_LOGIN_ERROR_INVALID_NAMEIDPOLICY, nameIDPolicy);
}
/* consent is necessary, it should be obtained via consent attribute
@ -481,13 +480,12 @@ lasso_login_build_artifact_msg(LassoLogin *login,
g_return_val_if_fail(LASSO_IS_LOGIN(login), LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ);
if (http_method != LASSO_HTTP_METHOD_REDIRECT && http_method != LASSO_HTTP_METHOD_POST) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
return critical_error(LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
}
/* ProtocolProfile must be BrwsArt */
if (login->protocolProfile != LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_ART) {
return error_code(G_LOG_LEVEL_CRITICAL,
LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE);
return critical_error(LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE);
}
/* process federation and build assertion only if signature is OK */
@ -582,7 +580,7 @@ lasso_login_build_authn_request_msg(LassoLogin *login)
remote_provider = g_hash_table_lookup(LASSO_PROFILE(login)->server->providers,
LASSO_PROFILE(login)->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
LASSO_PROFILE(login)->remote_providerID);
}
@ -698,8 +696,7 @@ lasso_login_build_authn_response_msg(LassoLogin *login,
/* ProtocolProfile must be BrwsPost */
if (login->protocolProfile != LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_POST) {
return error_code(G_LOG_LEVEL_CRITICAL,
LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE);
return critical_error(LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE);
}
/* create LibAuthnResponse */
@ -790,7 +787,7 @@ lasso_login_build_request_msg(LassoLogin *login)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
profile->msg_url = lasso_provider_get_metadata_one(remote_provider, "SoapEndpoint");
@ -884,7 +881,7 @@ lasso_login_init_authn_request(LassoLogin *login, const gchar *remote_providerID
g_return_val_if_fail(LASSO_IS_LOGIN(login), LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ);
if (http_method != LASSO_HTTP_METHOD_REDIRECT && http_method != LASSO_HTTP_METHOD_POST) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
return critical_error(LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
}
if (remote_providerID != NULL) {
@ -936,7 +933,7 @@ lasso_login_init_request(LassoLogin *login, gchar *response_msg,
if (response_http_method != LASSO_HTTP_METHOD_REDIRECT &&
response_http_method != LASSO_HTTP_METHOD_POST) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
return critical_error(LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
}
/* rebuild response (artifact) */
@ -1102,8 +1099,7 @@ lasso_login_process_authn_request_msg(LassoLogin *login, const char *authn_reque
if (authn_request_msg == NULL) {
if (LASSO_PROFILE(login)->request == NULL) {
return error_code(G_LOG_LEVEL_CRITICAL,
LASSO_PROFILE_ERROR_MISSING_REQUEST);
return critical_error(LASSO_PROFILE_ERROR_MISSING_REQUEST);
}
/* LibAuthnRequest already set by lasso_login_init_idp_initiated_authn_request() */
@ -1120,7 +1116,7 @@ lasso_login_process_authn_request_msg(LassoLogin *login, const char *authn_reque
format = lasso_node_init_from_message(LASSO_NODE(request), authn_request_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN ||
format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
LASSO_PROFILE(login)->request = LASSO_NODE(request);
@ -1137,8 +1133,7 @@ lasso_login_process_authn_request_msg(LassoLogin *login, const char *authn_reque
protocolProfile = LASSO_LIB_PROTOCOL_PROFILE_BRWS_POST;
login->protocolProfile = LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_POST;
} else {
return error_code(G_LOG_LEVEL_CRITICAL,
LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE);
return critical_error(LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE);
}
/* check if requested single sign on protocol profile is supported */
@ -1147,7 +1142,7 @@ lasso_login_process_authn_request_msg(LassoLogin *login, const char *authn_reque
LASSO_PROVIDER(LASSO_PROFILE(login)->server),
LASSO_MD_PROTOCOL_TYPE_SINGLE_SIGN_ON,
protocolProfile) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
return critical_error(LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
}
/* get remote ProviderID */
@ -1200,14 +1195,14 @@ lasso_login_process_authn_response_msg(LassoLogin *login, gchar *authn_response_
LASSO_PROFILE(login)->response = lasso_lib_authn_response_new(NULL, NULL);
format = lasso_node_init_from_message(LASSO_PROFILE(login)->response, authn_response_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
LASSO_PROFILE(login)->remote_providerID = g_strdup(
LASSO_LIB_AUTHN_RESPONSE(LASSO_PROFILE(login)->response)->ProviderID);
if (LASSO_PROFILE(login)->remote_providerID == NULL) {
ret1 = error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND);
ret1 = critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND);
}
remote_provider = g_hash_table_lookup(LASSO_PROFILE(login)->server->providers,

View File

@ -75,7 +75,7 @@ lasso_logout_build_request_msg(LassoLogout *logout)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -113,8 +113,7 @@ lasso_logout_build_request_msg(LassoLogout *logout)
return 0;
}
message(G_LOG_LEVEL_CRITICAL, "Invalid http method");
return LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD;
return critical_error(LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
}
@ -322,7 +321,7 @@ lasso_logout_init_request(LassoLogout *logout, char *remote_providerID,
remote_provider = g_hash_table_lookup(
profile->server->providers, profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -416,13 +415,13 @@ gint lasso_logout_process_request_msg(LassoLogout *logout, char *request_msg)
profile->request = lasso_lib_logout_request_new();
format = lasso_node_init_from_message(profile->request, request_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
remote_provider = g_hash_table_lookup(profile->server->providers,
LASSO_LIB_LOGOUT_REQUEST(profile->request)->ProviderID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
LASSO_LIB_LOGOUT_REQUEST(profile->request)->ProviderID);
}
@ -488,7 +487,7 @@ lasso_logout_process_response_msg(LassoLogout *logout, gchar *response_msg)
profile->response = lasso_lib_logout_response_new();
format = lasso_node_init_from_message(profile->response, response_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
if (format == LASSO_MESSAGE_FORMAT_SOAP)
@ -500,14 +499,13 @@ lasso_logout_process_response_msg(LassoLogout *logout, gchar *response_msg)
profile->remote_providerID = g_strdup(
LASSO_LIB_STATUS_RESPONSE(profile->response)->ProviderID);
if (profile->remote_providerID == NULL) {
message(G_LOG_LEVEL_CRITICAL, "ProviderID not found");
return LASSO_PROFILE_ERROR_MISSING_REMOTE_PROVIDERID;
return critical_error(LASSO_PROFILE_ERROR_MISSING_REMOTE_PROVIDERID);
}
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -653,7 +651,7 @@ lasso_logout_validate_request(LassoLogout *logout)
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}

View File

@ -43,7 +43,7 @@ lasso_name_identifier_mapping_build_request_msg(LassoNameIdentifierMapping *mapp
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -82,7 +82,7 @@ lasso_name_identifier_mapping_build_response_msg(LassoNameIdentifierMapping *map
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -141,7 +141,7 @@ lasso_name_identifier_mapping_init_request(LassoNameIdentifierMapping *mapping,
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
if (remote_provider->role != LASSO_PROVIDER_ROLE_IDP) {
@ -172,8 +172,7 @@ lasso_name_identifier_mapping_init_request(LassoNameIdentifierMapping *mapping,
remote_provider,
LASSO_MD_PROTOCOL_TYPE_NAME_IDENTIFIER_MAPPING,
LASSO_HTTP_METHOD_REDIRECT, TRUE) == FALSE) {
message(G_LOG_LEVEL_CRITICAL, "unsupported profile!");
return LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE;
return critical_error(LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
}
profile->request = lasso_lib_name_identifier_mapping_request_new_full(
@ -210,13 +209,13 @@ lasso_name_identifier_mapping_process_request_msg(LassoNameIdentifierMapping *ma
profile->request = lasso_lib_name_identifier_mapping_request_new();
format = lasso_node_init_from_message(profile->request, request_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
remote_provider = g_hash_table_lookup(profile->server->providers,
LASSO_LIB_NAME_IDENTIFIER_MAPPING_REQUEST(profile->request)->ProviderID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
LASSO_LIB_NAME_IDENTIFIER_MAPPING_REQUEST(
profile->request)->ProviderID);
}
@ -227,7 +226,7 @@ lasso_name_identifier_mapping_process_request_msg(LassoNameIdentifierMapping *ma
remote_provider,
LASSO_MD_PROTOCOL_TYPE_NAME_IDENTIFIER_MAPPING,
LASSO_HTTP_METHOD_REDIRECT, FALSE) == FALSE ) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
return critical_error(LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
}
/* verify signature */
@ -261,13 +260,13 @@ lasso_name_identifier_mapping_process_response_msg(LassoNameIdentifierMapping *m
profile->response = lasso_lib_name_identifier_mapping_response_new();
format = lasso_node_init_from_message(profile->response, response_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
remote_provider = g_hash_table_lookup(profile->server->providers,
LASSO_LIB_NAME_IDENTIFIER_MAPPING_RESPONSE(profile->response)->ProviderID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}

View File

@ -63,7 +63,7 @@ lasso_name_registration_build_request_msg(LassoNameRegistration *name_registrati
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -100,7 +100,7 @@ lasso_name_registration_build_request_msg(LassoNameRegistration *name_registrati
return 0;
}
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
return critical_error(LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
}
gint
@ -117,7 +117,7 @@ lasso_name_registration_build_response_msg(LassoNameRegistration *name_registrat
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -152,7 +152,7 @@ lasso_name_registration_build_response_msg(LassoNameRegistration *name_registrat
return 0;
}
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
return critical_error(LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD);
}
void
@ -189,7 +189,7 @@ lasso_name_registration_init_request(LassoNameRegistration *name_registration,
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -303,13 +303,13 @@ gint lasso_name_registration_process_request_msg(LassoNameRegistration *name_reg
profile->request = lasso_lib_register_name_identifier_request_new();
format = lasso_node_init_from_message(profile->request, request_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
remote_provider = g_hash_table_lookup(profile->server->providers,
LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(profile->request)->ProviderID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(
profile->request)->ProviderID);
}
@ -327,7 +327,7 @@ gint lasso_name_registration_process_request_msg(LassoNameRegistration *name_reg
remote_provider,
LASSO_MD_PROTOCOL_TYPE_REGISTER_NAME_IDENTIFIER,
profile->http_request_method, FALSE) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
return critical_error(LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE);
}
nameIdentifier = LASSO_LIB_REGISTER_NAME_IDENTIFIER_REQUEST(
@ -378,7 +378,7 @@ lasso_name_registration_process_response_msg(LassoNameRegistration *name_registr
profile->response = lasso_lib_register_name_identifier_response_new();
format = lasso_node_init_from_message(profile->response, response_msg);
if (format == LASSO_MESSAGE_FORMAT_UNKNOWN || format == LASSO_MESSAGE_FORMAT_ERROR) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_PROFILE_ERROR_INVALID_MSG);
return critical_error(LASSO_PROFILE_ERROR_INVALID_MSG);
}
if (format == LASSO_MESSAGE_FORMAT_SOAP)
response_method = LASSO_HTTP_METHOD_SOAP;
@ -388,7 +388,7 @@ 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 (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -418,7 +418,7 @@ lasso_name_registration_process_response_msg(LassoNameRegistration *name_registr
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}
@ -506,7 +506,7 @@ lasso_name_registration_validate_request(LassoNameRegistration *name_registratio
remote_provider = g_hash_table_lookup(profile->server->providers,
profile->remote_providerID);
if (LASSO_IS_PROVIDER(remote_provider) == FALSE) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
return critical_error(LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND,
profile->remote_providerID);
}

View File

@ -57,7 +57,7 @@ lasso_server_add_provider(LassoServer *server, LassoProviderRole role,
provider = lasso_provider_new(role, metadata, public_key, ca_cert_chain);
if (provider == NULL) {
return error_code(G_LOG_LEVEL_CRITICAL, LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED);
return critical_error(LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED);
}
g_hash_table_insert(server->providers, g_strdup(provider->ProviderID), provider);

View File

@ -60,15 +60,15 @@ lasso_strerror(int error_code)
return "Failed to verify signature of %s.";
case LASSO_DS_ERROR_INVALID_SIGALG:
return "Invalid signature algorithm.";
case LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND:
return "Failed to get LassoProvider object "\
"with providerID %s in LassoServer object.";
case LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED:
return "Failed to add new provider.";
case LASSO_LOGOUT_ERROR_UNSUPPORTED_PROFILE:
return "Unsupported logout protocol profile";
case LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE:
return "Unsupported protocol profile";
case LASSO_PROFILE_ERROR_INVALID_QUERY:
return "Invalid URL query";
case LASSO_PROFILE_ERROR_INVALID_POST_MSG:
@ -81,6 +81,12 @@ lasso_strerror(int error_code)
return "Invalid HTTP method";
case LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE:
return "Invalid protocol profile";
case LASSO_PROFILE_ERROR_INVALID_MSG:
return "Invalid message";
case LASSO_PROFILE_ERROR_MISSING_REMOTE_PROVIDERID:
return "ProviderID not found";
case LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE:
return "Unsupported protocol profile";
case LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ:
return "An object type provided as parameter "\

View File

@ -80,6 +80,8 @@ int error_code(GLogLevelFlags level, int error, ...);
#define message(level, format, args...) \
_debug(level, __FILE__, __LINE__, __FUNCTION__, format, ##args)
#define critical_error(args...) error_code(G_LOG_LEVEL_CRITICAL, ##args)
#ifdef __cplusplus
}
#endif /* __cplusplus */