Grid Community Toolkit  6.2.1629922860 (tag: v6.2.20210826)
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
globus_gsi_authz.h
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2006 University of Chicago
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef GLOBUS_GSI_AUTHZ_H
18 #define GLOBUS_GSI_AUTHZ_H 1
19 
25 #include "globus_common.h"
26 #include "gssapi.h"
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 #define GLOBUS_GSI_AUTHZ_MODULE (&globus_i_gsi_authz_module)
33 
34 extern
36 
37 #ifndef GLOBUS_GLOBAL_DOCUMENT_SET
38 
42 #endif
43 
55 typedef struct globus_i_gsi_authz_handle_s *
56  globus_gsi_authz_handle_t;
57 
58 typedef void (* globus_gsi_authz_cb_t)(
59  void * callback_arg,
60  globus_gsi_authz_handle_t handle,
61  globus_result_t result);
62 
65  globus_gsi_authz_handle_t * handle,
66  const char * service_name,
67  const gss_ctx_id_t context,
68  globus_gsi_authz_cb_t callback,
69  void * callback_arg);
70 
73  globus_gsi_authz_handle_t handle,
74  const void * action,
75  const void * object,
76  globus_gsi_authz_cb_t callback,
77  void * callback_arg);
78 
81  globus_gsi_authz_handle_t handle);
82 
85  globus_gsi_authz_handle_t handle,
86  globus_gsi_authz_cb_t callback,
87  void * callback_arg);
88 
91  globus_gsi_authz_handle_t handle,
92  char ** identity_ptr,
93  globus_gsi_authz_cb_t callback,
94  void * callback_arg);
95 
96 #ifdef __cplusplus
97 }
98 #endif
99 
100 #endif /* GLOBUS_GSI_AUTHZ_H */
globus_result_t globus_gsi_authz_handle_init(globus_gsi_authz_handle_t *handle, const char *service_name, const gss_ctx_id_t context, globus_gsi_authz_cb_t callback, void *callback_arg)
Initialize an authorization handle.
Definition: globus_gsi_authz.c:308
globus_result_t globus_gsi_authorize(globus_gsi_authz_handle_t handle, const void *action, const void *object, globus_gsi_authz_cb_t callback, void *callback_arg)
Start the authorization decision-making process.
Definition: globus_gsi_authz.c:430
globus_module_descriptor_t globus_i_gsi_authz_module
Definition: globus_gsi_authz.c:40
globus_result_t globus_gsi_authz_get_authorization_identity(globus_gsi_authz_handle_t handle, char **identity_ptr, globus_gsi_authz_cb_t callback, void *callback_arg)
Query for authorization identity.
Definition: globus_gsi_authz.c:672
globus_result_t globus_gsi_cancel_authz(globus_gsi_authz_handle_t handle)
Cancel Authorization.
Definition: globus_gsi_authz.c:529
globus_result_t globus_gsi_authz_handle_destroy(globus_gsi_authz_handle_t handle, globus_gsi_authz_cb_t callback, void *callback_arg)
Destroy an authz handle.
Definition: globus_gsi_authz.c:573
Headers common to all of Globus.
uint32_t globus_result_t
Definition: globus_types.h:99
Module Descriptor.
Definition: globus_module.h:71