Grid Community Toolkit  6.2.1607800521 (tag: v6.2.20201212)
Functions
Error Messages

GRAM Error Messages. More...

Functions

const char * globus_gram_protocol_error_string (int error_code)
 Get a description of a a GRAM error code. More...
 
void globus_gram_protocol_error_7_hack_replace_message (const char *message)
 Replace the error message associated with error 7 with a custom message. More...
 
void globus_gram_protocol_error_10_hack_replace_message (const char *message)
 Replace the error message associated with error 10 with a custom message. More...
 

Detailed Description

GRAM Error Messages.

Functions in this section handle converting GRAM error codes to strings which can help the user diagnose GRAM problems.

Function Documentation

◆ globus_gram_protocol_error_10_hack_replace_message()

void globus_gram_protocol_error_10_hack_replace_message ( const char *  message)

Replace the error message associated with error 10 with a custom message.

The globus_gram_protocol_error_10_hack_replace_message() function creates a custom version of the error message for the error GLOBUS_GRAM_PROTOCOL_ERROR_PROTOCOL_FAILED. The string pointed to by the message parameter is copied to thread-local storage, and subsequent calls to globus_gram_protocol_error_string() with this error number will return this copy of the string. Each time globus_gram_protocol_error_10_hack_replace_message() is called for a particular thread, the previous message is freed.

The purpose of this function is to allow more meaningful error messages to be generated when protocol errors occur. In particular, the specific XIO error reason can be used in place of a generic protocol failure message.

Parameters
messageThe new message to be associated with the GLOBUS_GRAM_PROTOCOL_ERROR_PROTOCOL_FAILED error code.
Note
Since Globus 5.0.0, this function uses thread-specific storage, so that the value returned by globus_gram_protocol_error_string() for GLOBUS_GRAM_PROTOCOL_ERROR_PROTOCOL_FAILED is that for the last authorization error where globus_gram_protocol_error_10_hack_replace_message() was called from this thread.

◆ globus_gram_protocol_error_7_hack_replace_message()

void globus_gram_protocol_error_7_hack_replace_message ( const char *  message)

Replace the error message associated with error 7 with a custom message.

The globus_gram_protocol_error_7_hack_replace_message() function creates a custom version of the error message for the error GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATION. The string pointed to by the message parameter is copied to thread-local storage, and subsequent calls to globus_gram_protocol_error_string() with this error number will return this copy of the string. Each time globus_gram_protocol_error_7_hack_replace_message() is called for a particular thread, the previous message is freed.

The purpose of this function is to allow more meaningful error messages to be generated when authentication failures occur. In particular, the specific GSSAPI error reason can be used in place of a generic authorization failure message.

Parameters
messageThe new message to be associated with the GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATION error code.
Note
Since Globus 5.0.0, this function uses thread-specific storage, so that the value returned by globus_gram_protocol_error_string() for GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATION is that for the last authorization error where globus_gram_protocol_error_7_hack_replace_message() was called from this thread.

◆ globus_gram_protocol_error_string()

const char* globus_gram_protocol_error_string ( int  error_code)

Get a description of a a GRAM error code.

The globus_gram_protocol_error_string() function takes a GRAM error code value and returns the associated error code string for the message. The string is statically allocated by the GRAM Protocol library and should not be modified or freed by the caller. The string is intended to complete a sentence of the form "[operation] failed because ..."

Parameters
error_codeThe error code to translate into a string.
Returns
The globus_gram_protocol_error_string() function returns a static string containing an explanation of the error.