00001 /* 00002 * Copyright (C) 2006, 2007 Internet Systems Consortium, Inc. ("ISC") 00003 * 00004 * Permission to use, copy, modify, and/or distribute this software for any 00005 * purpose with or without fee is hereby granted, provided that the above 00006 * copyright notice and this permission notice appear in all copies. 00007 * 00008 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 00009 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 00010 * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 00011 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 00012 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 00013 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 00014 * PERFORMANCE OF THIS SOFTWARE. 00015 */ 00016 00017 /* $Id: spnego.h,v 1.4 2007/06/19 23:47:16 tbox Exp $ */ 00018 00019 /*! \file 00020 * \brief 00021 * Entry points into portable SPNEGO implementation. 00022 * See spnego.c for information on the SPNEGO implementation itself. 00023 */ 00024 00025 #ifndef _SPNEGO_H_ 00026 #define _SPNEGO_H_ 00027 00028 /*% 00029 * Wrapper for GSSAPI gss_init_sec_context(), using portable SPNEGO 00030 * implementation instead of the one that's part of the GSSAPI 00031 * library. Takes arguments identical to the standard GSSAPI 00032 * function, uses standard gss_init_sec_context() to handle 00033 * everything inside the SPNEGO wrapper. 00034 */ 00035 OM_uint32 00036 gss_init_sec_context_spnego(OM_uint32 *, 00037 const gss_cred_id_t, 00038 gss_ctx_id_t *, 00039 const gss_name_t, 00040 const gss_OID, 00041 OM_uint32, 00042 OM_uint32, 00043 const gss_channel_bindings_t, 00044 const gss_buffer_t, 00045 gss_OID *, 00046 gss_buffer_t, 00047 OM_uint32 *, 00048 OM_uint32 *); 00049 00050 /*% 00051 * Wrapper for GSSAPI gss_accept_sec_context(), using portable SPNEGO 00052 * implementation instead of the one that's part of the GSSAPI 00053 * library. Takes arguments identical to the standard GSSAPI 00054 * function. Checks the OID of the input token to see if it's SPNEGO; 00055 * if so, processes it, otherwise hands the call off to the standard 00056 * gss_accept_sec_context() function. 00057 */ 00058 OM_uint32 gss_accept_sec_context_spnego(OM_uint32 *, 00059 gss_ctx_id_t *, 00060 const gss_cred_id_t, 00061 const gss_buffer_t, 00062 const gss_channel_bindings_t, 00063 gss_name_t *, 00064 gss_OID *, 00065 gss_buffer_t, 00066 OM_uint32 *, 00067 OM_uint32 *, 00068 gss_cred_id_t *); 00069 00070 00071 #endif