WS-Delegation Client Utilities

Defines

Typedefs

Enumerations

Functions


Define Documentation

#define GLOBUS_DELEGATION_CLIENT_UTIL_MODULE

Module descriptor for WS-Delegation Client Utilities.

Activate this module with globus_module_activate() before calling any functions in this API.


Typedef Documentation

typedef struct globus_delegation_client_util_handle_s* globus_delegation_client_util_handle_t

Client Handle

A client handle is used to encapsulate state used by this API when processing a delegation operation.

A client handle may have at most one operation in progress at any time, but may be reused for mulitple delegation operations.

Handles are created by calling globus_delegation_client_util_handle_init() and destroyed by calling globus_delegation_client_util_handle_destroy().

typedef struct globus_delegation_client_util_attr_s* globus_delegation_client_util_attr_t

Client Handle Attributes

Attributes may be used in the future for modifying the behavior of a client handle.

Currently there are no attributes.

typedef void(* globus_delegation_client_util_callback_t)(globus_delegation_client_util_handle_t handle, globus_result_t result, const wsa_EndpointReferenceType *delegated_epr, void *user_arg)

Delegation callback function signature

This callback signature is used to signal completion of nonblocking functions in this API.

Parameters:
handle The handle used to initiate this operation.
result The result of the delegation operation.
delegated_epr An EPR containing a reference to the location of the delegated credential.
user_arg User-specific argument passed to the nonblocking API function.


Enumeration Type Documentation

Error type enumeration.


Function Documentation

globus_result_t globus_delegation_client_util_handle_init ( globus_delegation_client_util_handle_t handle,
globus_soap_message_attr_t  message_attr,
globus_handler_chain_t  handler_chain,
const globus_gsi_cred_handle_t  user_cred,
globus_delegation_client_util_attr_t  attr 
)

Initialize a delegation client handle

Creates a new delegation client handle which can be used in subsequent delegate operations.

The handle may be used to process only one operation at a time. When no longer needed, it should be destroyed by calling globus_delegation_client_util_handle_destroy().

Parameters:
handle Pointer to hold the new delegation client handle.
message_attr SOAP message attributes to be used when invoking DelegationFactoryService operations.
handler_chain Handler chain to be used when invoking DelegationFactoryService operations. This may be NULL if no special handler chain is needed.
user_cred Credential to use for signing the delegated credential. This may be NULL to use the current user's default credential.
attr Delegation attributes (CURRENTLY UNUSED).
Return values:
GLOBUS_SUCCESS Handle successfully initialized.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_MEMORY Unable to allocate memory.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.
See also:
globus_delegation_client_util_handle_destroy()

void globus_delegation_client_util_handle_destroy ( globus_delegation_client_util_handle_t  handle  ) 

Destroy a client handle

Free all memory associated with a client handle.

No nonblocking may be current active on this handle. After this function returns, the handle's value is undefined.

Parameters:
handle Handle to destroy
See also:
globus_delegation_client_util_handle_init()

globus_result_t globus_delegation_client_util_cancel ( globus_delegation_client_util_handle_t  handle  ) 

Cancel a nonblocking operation

If a nonblocking operation is currently being processed by a handle, it will be terminated.

The operation's callback will be called once the operation is either completed or cancelled.

Parameters:
handle Handle which is processing a nonblocking operation.
Return values:
GLOBUS_SUCCESS Operation cancelled successfully.

globus_result_t globus_delegation_client_util_delegate_epr_register ( globus_delegation_client_util_handle_t  handle,
const wsa_EndpointReferenceType *  delegate_factory_epr,
globus_bool_t  full,
globus_delegation_client_util_callback_t  callback,
void *  user_arg 
)

Delegate credential (nonblocking).

Parameters:
handle Handle to use for delegation state.
delegate_factory_epr Endpoint Reference for the DelegationFactoryService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
callback Callback function pointer to call once the delegation has completed.
user_arg Argument to be passed to the callback function.
Return values:
GLOBUS_SUCCESS Delegation processing successfully started.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.

globus_result_t globus_delegation_client_util_delegate_register ( globus_delegation_client_util_handle_t  handle,
const char *  delegate_factory,
globus_bool_t  full,
globus_delegation_client_util_callback_t  callback,
void *  user_arg 
)

Delegate credential (nonblocking).

Parameters:
handle Handle to use for delegation state.
delegate_factory Endpoint contact for the DelegationFactoryService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
callback Callback function pointer to call once the delegation has completed.
user_arg Argument to be passed to the callback function.
Return values:
GLOBUS_SUCCESS Delegation processing successfully started.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.

globus_result_t globus_delegation_client_util_delegate_epr ( globus_delegation_client_util_handle_t  handle,
const wsa_EndpointReferenceType *  delegate_factory_epr,
globus_bool_t  full,
wsa_EndpointReferenceType **  delegated_epr 
)

Delegate credential.

Parameters:
handle Handle to use for delegation state.
delegate_factory_epr Endpoint Reference for the DelegationFactoryService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
delegated_epr Pointer to an EPR which will be initialzed to the value of the new delegated credential.
Return values:
GLOBUS_SUCCESS Delegation successful.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.

globus_result_t globus_delegation_client_util_delegate ( globus_delegation_client_util_handle_t  handle,
const char *  delegate_factory,
globus_bool_t  full,
wsa_EndpointReferenceType **  delegated_epr 
)

Delegate credential.

Parameters:
handle Handle to use for delegation state.
delegate_factory Endpoint contact for the DelegationFactoryService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
delegated_epr Pointer to an EPR which will be initialzed to the value of the new delegated credential.
Return values:
GLOBUS_SUCCESS Delegation successful.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.

globus_result_t globus_delegation_client_util_refresh_epr_register ( globus_delegation_client_util_handle_t  handle,
const wsa_EndpointReferenceType *  delegate_resource_epr,
globus_bool_t  full,
globus_delegation_client_util_callback_t  callback,
void *  user_arg 
)

Refresh credential (nonblocking).

Parameters:
handle Handle to use for delegation state.
delegate_factory_epr Endpoint Reference for the DelegationService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
callback Callback function pointer to call once the delegation has completed.
user_arg Argument to be passed to the callback function.
Return values:
GLOBUS_SUCCESS Delegation processing successfully started.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.

globus_result_t globus_delegation_client_util_refresh_register ( globus_delegation_client_util_handle_t  handle,
const char *  delegate_resource,
globus_bool_t  full,
globus_delegation_client_util_callback_t  callback,
void *  user_arg 
)

Refresh credential (nonblocking).

Parameters:
handle Handle to use for delegation state.
delegate_factory Endpoint contact for the DelegationService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
callback Callback function pointer to call once the delegation has completed.
user_arg Argument to be passed to the callback function.
Return values:
GLOBUS_SUCCESS Delegation processing successfully started.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.

globus_result_t globus_delegation_client_util_refresh_epr ( globus_delegation_client_util_handle_t  handle,
const wsa_EndpointReferenceType *  delegate_resource_epr,
globus_bool_t  full 
)

Refresh credential.

Parameters:
handle Handle to use for delegation state.
delegate_factory_epr Endpoint Reference for the DelegationService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
Return values:
GLOBUS_SUCCESS Delegation successful.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.

globus_result_t globus_delegation_client_util_refresh ( globus_delegation_client_util_handle_t  handle,
const char *  delegate_resource,
globus_bool_t  full 
)

Refresh credential.

Parameters:
handle Handle to use for delegation state.
delegate_resource Endpoint contact for the DelegationService
full If GLOBUS_TRUE, delegate a full proxy; otherwise, delegate a limited proxy.
Return values:
GLOBUS_SUCCESS Delegation successful.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_INVALID Invalid (NULL) parameter.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_ACTIVE The handle is already processing a delegation operation.
GLOBUS_DELEGATION_CLIENT_UTIL_ERROR_WRAPPED An low-level occurred.


about globus | grid research | globus toolkit | software development

Comments? webmaster@globus.org