Go to the documentation of this file.00001 #ifndef HEADER_CURL_GSSAPI_H
00002 #define HEADER_CURL_GSSAPI_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include "curl_setup.h"
00026 #include "urldata.h"
00027
00028 #ifdef HAVE_GSSAPI
00029
00030 #ifdef HAVE_GSSGNU
00031 # include <gss.h>
00032 #elif defined HAVE_GSSMIT
00033
00034 # include <gssapi/gssapi.h>
00035 # include <gssapi/gssapi_generic.h>
00036 # include <gssapi/gssapi_krb5.h>
00037 #else
00038
00039 # include <gssapi.h>
00040 #endif
00041
00042 extern gss_OID_desc Curl_spnego_mech_oid;
00043 extern gss_OID_desc Curl_krb5_mech_oid;
00044
00045
00046 OM_uint32 Curl_gss_init_sec_context(
00047 struct Curl_easy *data,
00048 OM_uint32 *minor_status,
00049 gss_ctx_id_t *context,
00050 gss_name_t target_name,
00051 gss_OID mech_type,
00052 gss_channel_bindings_t input_chan_bindings,
00053 gss_buffer_t input_token,
00054 gss_buffer_t output_token,
00055 const bool mutual_auth,
00056 OM_uint32 *ret_flags);
00057
00058
00059 void Curl_gss_log_error(struct Curl_easy *data, const char *prefix,
00060 OM_uint32 major, OM_uint32 minor);
00061
00062
00063 #ifdef HAVE_OLD_GSSMIT
00064 #define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
00065 #define NCOMPAT 1
00066 #endif
00067
00068
00069 #define GSSAUTH_P_NONE 1
00070 #define GSSAUTH_P_INTEGRITY 2
00071 #define GSSAUTH_P_PRIVACY 4
00072
00073 #endif
00074
00075 #endif