globus_xio_gsi.h
Go to the documentation of this file.
/*
* Copyright 1999-2006 University of Chicago
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef GLOBUS_XIO_GSI_DRIVER_H
#define GLOBUS_XIO_GSI_DRIVER_H
#include "gssapi.h"
#include "globus_common.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifndef GLOBUS_GLOBAL_DOCUMENT_SET
#endif
typedef enum
{
GLOBUS_XIO_GSI_ERROR_INVALID_PROTECTION_LEVEL,
GLOBUS_XIO_GSI_ERROR_WRAP_GSSAPI,
GLOBUS_XIO_GSI_ERROR_EMPTY_TARGET_NAME,
GLOBUS_XIO_GSI_ERROR_EMPTY_HOST_NAME,
GLOBUS_XIO_GSI_AUTHORIZATION_FAILED,
GLOBUS_XIO_GSI_ERROR_TOKEN_TOO_BIG
} globus_xio_gsi_error_t;
#define globus_xio_gsi_attr_cntl globus_xio_attr_cntl
#define globus_xio_gsi_handle_cntl globus_xio_handle_cntl
typedef enum
{
/* gss_cred_id_t credential */
GLOBUS_XIO_GSI_SET_CREDENTIAL,
/* gss_cred_id_t * credential */
GLOBUS_XIO_GSI_GET_CREDENTIAL,
/* OM_uint32 req_flags */
GLOBUS_XIO_GSI_SET_GSSAPI_REQ_FLAGS,
/* OM_uint32 * req_flags */
GLOBUS_XIO_GSI_GET_GSSAPI_REQ_FLAGS,
/* globus_xio_gsi_proxy_mode_t proxy_mode*/
GLOBUS_XIO_GSI_SET_PROXY_MODE,
/* globus_xio_gsi_proxy_mode_t * proxy_mode*/
GLOBUS_XIO_GSI_GET_PROXY_MODE,
/* globus_xio_gsi_authorization_mode_t authz_mode*/
GLOBUS_XIO_GSI_SET_AUTHORIZATION_MODE,
/* globus_xio_gsi_authorization_mode_t * authz_mode*/
GLOBUS_XIO_GSI_GET_AUTHORIZATION_MODE,
/* globus_xio_gsi_delegation_mode_t delegation_mode*/
GLOBUS_XIO_GSI_SET_DELEGATION_MODE,
/* globus_xio_gsi_delegation_mode_t * delegation_mode*/
GLOBUS_XIO_GSI_GET_DELEGATION_MODE,
/* globus_bool_t ssl_mode*/
GLOBUS_XIO_GSI_SET_SSL_COMPATIBLE,
/* globus_bool_t anon_mode*/
GLOBUS_XIO_GSI_SET_ANON,
/* globus_bool_t wrap_mode*/
GLOBUS_XIO_GSI_SET_WRAP_MODE,
/* globus_bool_t * wrap_mode*/
GLOBUS_XIO_GSI_GET_WRAP_MODE,
/* globus_size_t buffer_size*/
GLOBUS_XIO_GSI_SET_BUFFER_SIZE,
/* globus_size_t * buffer_size*/
GLOBUS_XIO_GSI_GET_BUFFER_SIZE,
/* globus_xio_gsi_protection_level_t protection_level*/
GLOBUS_XIO_GSI_SET_PROTECTION_LEVEL,
/* globus_xio_gsi_protection_level_t * protection_level*/
GLOBUS_XIO_GSI_GET_PROTECTION_LEVEL,
/* gss_name_t * target_name */
GLOBUS_XIO_GSI_GET_TARGET_NAME,
/* gss_name_t target_name */
GLOBUS_XIO_GSI_SET_TARGET_NAME,
/* gss_ctx_id_t * context */
GLOBUS_XIO_GSI_GET_CONTEXT,
/* gss_cred_id_t * credential */
GLOBUS_XIO_GSI_GET_DELEGATED_CRED,
/* gss_name_t * peer_name */
GLOBUS_XIO_GSI_GET_PEER_NAME,
/* gss_name_t * local_name */
GLOBUS_XIO_GSI_GET_LOCAL_NAME,
/* gss_cred_id_t credential,
gss_OID_set restriction_oids,
gss_buffer_set_t restriction_buffers,
OM_uint32 time_req */
GLOBUS_XIO_GSI_INIT_DELEGATION,
/* gss_cred_id_t credential,
gss_OID_set restriction_oids,
gss_buffer_set_t restriction_buffers,
OM_uint32 time_req,
globus_xio_gsi_delegation_init_callback_t callback,
void * callback_arg */
GLOBUS_XIO_GSI_REGISTER_INIT_DELEGATION,
/* gss_cred_id_t * credential,
gss_OID_set restriction_oids,
gss_buffer_set_t restriction_buffers,
OM_uint32 time_req */
GLOBUS_XIO_GSI_ACCEPT_DELEGATION,
/* gss_OID_set restriction_oids,
gss_buffer_set_t restriction_buffers,
OM_uint32 time_req,
globus_xio_gsi_delegation_accept_callback_t callback,
void * callback_arg */
GLOBUS_XIO_GSI_REGISTER_ACCEPT_DELEGATION,
/* globus_bool_t server_mode */
GLOBUS_XIO_GSI_FORCE_SERVER_MODE,
/* globus_bool_t allow*/
GLOBUS_XIO_GSI_SET_ALLOW_MISSING_SIGNING_POLICY,
/* globus_bool_t * allow*/
GLOBUS_XIO_GSI_GET_ALLOW_MISSING_SIGNING_POLICY
} globus_xio_gsi_cmd_t;
typedef enum
{
GLOBUS_XIO_GSI_PROTECTION_LEVEL_NONE,
GLOBUS_XIO_GSI_PROTECTION_LEVEL_INTEGRITY,
GLOBUS_XIO_GSI_PROTECTION_LEVEL_PRIVACY
} globus_xio_gsi_protection_level_t;
typedef enum
{
GLOBUS_XIO_GSI_DELEGATION_MODE_NONE,
GLOBUS_XIO_GSI_DELEGATION_MODE_LIMITED,
GLOBUS_XIO_GSI_DELEGATION_MODE_FULL
} globus_xio_gsi_delegation_mode_t;
typedef enum
{
GLOBUS_XIO_GSI_PROXY_MODE_FULL,
GLOBUS_XIO_GSI_PROXY_MODE_LIMITED,
GLOBUS_XIO_GSI_PROXY_MODE_MANY
} globus_xio_gsi_proxy_mode_t;
typedef enum
{
GLOBUS_XIO_GSI_NO_AUTHORIZATION,
GLOBUS_XIO_GSI_SELF_AUTHORIZATION,
GLOBUS_XIO_GSI_IDENTITY_AUTHORIZATION,
GLOBUS_XIO_GSI_HOST_AUTHORIZATION
} globus_xio_gsi_authorization_mode_t;
typedef void (* globus_xio_gsi_delegation_init_callback_t)(
globus_result_t result,
void * user_arg);
typedef void (* globus_xio_gsi_delegation_accept_callback_t)(
globus_result_t result,
gss_cred_id_t delegated_cred,
OM_uint32 time_rec,
void * user_arg);
#ifdef __cplusplus
}
#endif
#endif /* GLOBUS_XIO_GSI_DRIVER_H */
GLOBUS_XIO_GSI_ERROR_TOKEN_TOO_BIG
Definition: globus_xio_gsi.h:158
globus_xio_gsi_delegation_mode_t
globus_xio_gsi_delegation_mode_t
Definition: globus_xio_gsi.h:317
GLOBUS_XIO_GSI_GET_TARGET_NAME
Definition: globus_xio_gsi.h:249
GLOBUS_XIO_GSI_DELEGATION_MODE_FULL
Definition: globus_xio_gsi.h:324
GLOBUS_XIO_GSI_SET_GSSAPI_REQ_FLAGS
Definition: globus_xio_gsi.h:185
GLOBUS_XIO_GSI_PROTECTION_LEVEL_PRIVACY
Definition: globus_xio_gsi.h:310
GLOBUS_XIO_GSI_SET_SSL_COMPATIBLE
Definition: globus_xio_gsi.h:217
GLOBUS_XIO_GSI_SET_ALLOW_MISSING_SIGNING_POLICY
Definition: globus_xio_gsi.h:292
GLOBUS_XIO_GSI_GET_PROXY_MODE
Definition: globus_xio_gsi.h:197
globus_xio_gsi_cmd_t
globus_xio_gsi_cmd_t
Definition: globus_xio_gsi.h:173
GLOBUS_XIO_GSI_GET_CREDENTIAL
Definition: globus_xio_gsi.h:181
GLOBUS_XIO_GSI_SET_PROXY_MODE
Definition: globus_xio_gsi.h:193
GLOBUS_XIO_GSI_GET_AUTHORIZATION_MODE
Definition: globus_xio_gsi.h:205
GLOBUS_XIO_GSI_ERROR_INVALID_PROTECTION_LEVEL
Definition: globus_xio_gsi.h:142
GLOBUS_XIO_GSI_GET_GSSAPI_REQ_FLAGS
Definition: globus_xio_gsi.h:189
GLOBUS_XIO_GSI_GET_DELEGATED_CRED
Definition: globus_xio_gsi.h:261
GLOBUS_XIO_GSI_SET_WRAP_MODE
Definition: globus_xio_gsi.h:225
GLOBUS_XIO_GSI_GET_PROTECTION_LEVEL
Definition: globus_xio_gsi.h:245
GLOBUS_XIO_GSI_GET_PEER_NAME
Definition: globus_xio_gsi.h:265
GLOBUS_XIO_GSI_PROXY_MODE_FULL
Definition: globus_xio_gsi.h:334
GLOBUS_XIO_GSI_GET_DELEGATION_MODE
Definition: globus_xio_gsi.h:213
GLOBUS_XIO_GSI_GET_BUFFER_SIZE
Definition: globus_xio_gsi.h:237
GLOBUS_XIO_GSI_PROTECTION_LEVEL_NONE
Definition: globus_xio_gsi.h:306
GLOBUS_XIO_GSI_ERROR_EMPTY_TARGET_NAME
Definition: globus_xio_gsi.h:148
GLOBUS_XIO_GSI_DELEGATION_MODE_LIMITED
Definition: globus_xio_gsi.h:322
GLOBUS_XIO_GSI_ERROR_WRAP_GSSAPI
Definition: globus_xio_gsi.h:144
GLOBUS_XIO_GSI_PROXY_MODE_MANY
Definition: globus_xio_gsi.h:340
globus_xio_gsi_authorization_mode_t
globus_xio_gsi_authorization_mode_t
Definition: globus_xio_gsi.h:348
GLOBUS_XIO_GSI_SET_ANON
Definition: globus_xio_gsi.h:221
globus_xio_gsi_protection_level_t
globus_xio_gsi_protection_level_t
Definition: globus_xio_gsi.h:303
GLOBUS_XIO_GSI_REGISTER_INIT_DELEGATION
Definition: globus_xio_gsi.h:277
GLOBUS_XIO_GSI_ACCEPT_DELEGATION
Definition: globus_xio_gsi.h:280
GLOBUS_XIO_GSI_HOST_AUTHORIZATION
Definition: globus_xio_gsi.h:363
globus_xio_gsi_delegation_accept_callback_t
void(* globus_xio_gsi_delegation_accept_callback_t)(globus_result_t result, gss_cred_id_t delegated_cred, OM_uint32 time_rec, void *user_arg)
Definition: globus_xio_gsi.h:378
globus_xio_gsi_error_t
globus_xio_gsi_error_t
Definition: globus_xio_gsi.h:137
GLOBUS_XIO_GSI_SET_CREDENTIAL
Definition: globus_xio_gsi.h:177
GLOBUS_XIO_GSI_GET_LOCAL_NAME
Definition: globus_xio_gsi.h:269
GLOBUS_XIO_GSI_INIT_DELEGATION
Definition: globus_xio_gsi.h:273
globus_xio_gsi_delegation_init_callback_t
void(* globus_xio_gsi_delegation_init_callback_t)(globus_result_t result, void *user_arg)
Definition: globus_xio_gsi.h:370
GLOBUS_XIO_GSI_GET_WRAP_MODE
Definition: globus_xio_gsi.h:229
GLOBUS_XIO_GSI_PROXY_MODE_LIMITED
Definition: globus_xio_gsi.h:338
GLOBUS_XIO_GSI_DELEGATION_MODE_NONE
Definition: globus_xio_gsi.h:320
GLOBUS_XIO_GSI_SET_DELEGATION_MODE
Definition: globus_xio_gsi.h:209
globus_xio_gsi_proxy_mode_t
globus_xio_gsi_proxy_mode_t
Definition: globus_xio_gsi.h:331
GLOBUS_XIO_GSI_REGISTER_ACCEPT_DELEGATION
Definition: globus_xio_gsi.h:284
GLOBUS_XIO_GSI_SELF_AUTHORIZATION
Definition: globus_xio_gsi.h:355
GLOBUS_XIO_GSI_SET_TARGET_NAME
Definition: globus_xio_gsi.h:253
GLOBUS_XIO_GSI_NO_AUTHORIZATION
Definition: globus_xio_gsi.h:353
GLOBUS_XIO_GSI_FORCE_SERVER_MODE
Definition: globus_xio_gsi.h:288
GLOBUS_XIO_GSI_AUTHORIZATION_FAILED
Definition: globus_xio_gsi.h:154
GLOBUS_XIO_GSI_SET_PROTECTION_LEVEL
Definition: globus_xio_gsi.h:241
GLOBUS_XIO_GSI_IDENTITY_AUTHORIZATION
Definition: globus_xio_gsi.h:359
GLOBUS_XIO_GSI_GET_CONTEXT
Definition: globus_xio_gsi.h:257
GLOBUS_XIO_GSI_SET_AUTHORIZATION_MODE
Definition: globus_xio_gsi.h:201
GLOBUS_XIO_GSI_SET_BUFFER_SIZE
Definition: globus_xio_gsi.h:233
GLOBUS_XIO_GSI_ERROR_EMPTY_HOST_NAME
Definition: globus_xio_gsi.h:152
GLOBUS_XIO_GSI_PROTECTION_LEVEL_INTEGRITY
Definition: globus_xio_gsi.h:308
GLOBUS_XIO_GSI_GET_ALLOW_MISSING_SIGNING_POLICY
Definition: globus_xio_gsi.h:296