00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef GLOBUS_GSI_AUTHZ_H
00018 #define GLOBUS_GSI_AUTHZ_H 1
00019
00025 #include "globus_common.h"
00026 #include "gssapi.h"
00027
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031
00032 #define GLOBUS_GSI_AUTHZ_MODULE (&globus_i_gsi_authz_module)
00033
00034 extern
00035 globus_module_descriptor_t globus_i_gsi_authz_module;
00036
00037 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
00038
00042 #endif
00043
00055 typedef struct globus_i_gsi_authz_handle_s *
00056 globus_gsi_authz_handle_t;
00057
00058 typedef void (* globus_gsi_authz_cb_t)(
00059 void * callback_arg,
00060 globus_gsi_authz_handle_t handle,
00061 globus_result_t result);
00062
00063 globus_result_t
00064 globus_gsi_authz_handle_init(
00065 globus_gsi_authz_handle_t * handle,
00066 const char * service_name,
00067 const gss_ctx_id_t context,
00068 globus_gsi_authz_cb_t callback,
00069 void * callback_arg);
00070
00071 globus_result_t
00072 globus_gsi_authorize(
00073 globus_gsi_authz_handle_t handle,
00074 const void * action,
00075 const void * object,
00076 globus_gsi_authz_cb_t callback,
00077 void * callback_arg);
00078
00079 globus_result_t
00080 globus_gsi_cancel_authz(
00081 globus_gsi_authz_handle_t handle);
00082
00083 globus_result_t
00084 globus_gsi_authz_handle_destroy(
00085 globus_gsi_authz_handle_t handle,
00086 globus_gsi_authz_cb_t callback,
00087 void * callback_arg);
00088
00089 globus_result_t
00090 globus_gsi_authz_get_authorization_identity(
00091 globus_gsi_authz_handle_t handle,
00092 char ** identity_ptr,
00093 globus_gsi_authz_cb_t callback,
00094 void * callback_arg);
00095
00096 #ifdef __cplusplus
00097 }
00098 #endif
00099
00100 #endif