1*ebfedea0SLionel Sambuc /* $NetBSD: doxygen.c,v 1.1.1.1 2011/04/13 18:14:46 elric Exp $ */ 2*ebfedea0SLionel Sambuc 3*ebfedea0SLionel Sambuc /* 4*ebfedea0SLionel Sambuc * Copyright (c) 2009 Kungliga Tekniska Högskolan 5*ebfedea0SLionel Sambuc * (Royal Institute of Technology, Stockholm, Sweden). 6*ebfedea0SLionel Sambuc * All rights reserved. 7*ebfedea0SLionel Sambuc * 8*ebfedea0SLionel Sambuc * Redistribution and use in source and binary forms, with or without 9*ebfedea0SLionel Sambuc * modification, are permitted provided that the following conditions 10*ebfedea0SLionel Sambuc * are met: 11*ebfedea0SLionel Sambuc * 12*ebfedea0SLionel Sambuc * 1. Redistributions of source code must retain the above copyright 13*ebfedea0SLionel Sambuc * notice, this list of conditions and the following disclaimer. 14*ebfedea0SLionel Sambuc * 15*ebfedea0SLionel Sambuc * 2. Redistributions in binary form must reproduce the above copyright 16*ebfedea0SLionel Sambuc * notice, this list of conditions and the following disclaimer in the 17*ebfedea0SLionel Sambuc * documentation and/or other materials provided with the distribution. 18*ebfedea0SLionel Sambuc * 19*ebfedea0SLionel Sambuc * 3. Neither the name of the Institute nor the names of its contributors 20*ebfedea0SLionel Sambuc * may be used to endorse or promote products derived from this software 21*ebfedea0SLionel Sambuc * without specific prior written permission. 22*ebfedea0SLionel Sambuc * 23*ebfedea0SLionel Sambuc * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 24*ebfedea0SLionel Sambuc * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25*ebfedea0SLionel Sambuc * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 26*ebfedea0SLionel Sambuc * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 27*ebfedea0SLionel Sambuc * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28*ebfedea0SLionel Sambuc * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29*ebfedea0SLionel Sambuc * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30*ebfedea0SLionel Sambuc * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31*ebfedea0SLionel Sambuc * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32*ebfedea0SLionel Sambuc * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33*ebfedea0SLionel Sambuc * SUCH DAMAGE. 34*ebfedea0SLionel Sambuc */ 35*ebfedea0SLionel Sambuc 36*ebfedea0SLionel Sambuc /*! @mainpage Heimdal GSS-API Library 37*ebfedea0SLionel Sambuc * 38*ebfedea0SLionel Sambuc * Heimdal implements the following mechanisms: 39*ebfedea0SLionel Sambuc * 40*ebfedea0SLionel Sambuc * - Kerberos 5 41*ebfedea0SLionel Sambuc * - SPNEGO 42*ebfedea0SLionel Sambuc * - NTLM 43*ebfedea0SLionel Sambuc * 44*ebfedea0SLionel Sambuc * See @ref gssapi_mechs for more describtion about these mechanisms. 45*ebfedea0SLionel Sambuc * 46*ebfedea0SLionel Sambuc * The project web page: http://www.h5l.org/ 47*ebfedea0SLionel Sambuc * 48*ebfedea0SLionel Sambuc * - @ref gssapi_services_intro 49*ebfedea0SLionel Sambuc * - @ref gssapi_mechs 50*ebfedea0SLionel Sambuc * - @ref gssapi_api_INvsMN 51*ebfedea0SLionel Sambuc */ 52*ebfedea0SLionel Sambuc 53*ebfedea0SLionel Sambuc /** 54*ebfedea0SLionel Sambuc * @page gssapi_services_intro Introduction to GSS-API services 55*ebfedea0SLionel Sambuc * @section gssapi_services GSS-API services 56*ebfedea0SLionel Sambuc * 57*ebfedea0SLionel Sambuc * @subsection gssapi_services_context Context creation 58*ebfedea0SLionel Sambuc * 59*ebfedea0SLionel Sambuc * - delegation 60*ebfedea0SLionel Sambuc * - mutual authentication 61*ebfedea0SLionel Sambuc * - anonymous 62*ebfedea0SLionel Sambuc * - use per message before context creation has completed 63*ebfedea0SLionel Sambuc * 64*ebfedea0SLionel Sambuc * return status: 65*ebfedea0SLionel Sambuc * - support conf 66*ebfedea0SLionel Sambuc * - support int 67*ebfedea0SLionel Sambuc * 68*ebfedea0SLionel Sambuc * @subsection gssapi_context_flags Context creation flags 69*ebfedea0SLionel Sambuc * 70*ebfedea0SLionel Sambuc * - GSS_C_DELEG_FLAG 71*ebfedea0SLionel Sambuc * - GSS_C_MUTUAL_FLAG 72*ebfedea0SLionel Sambuc * - GSS_C_REPLAY_FLAG 73*ebfedea0SLionel Sambuc * - GSS_C_SEQUENCE_FLAG 74*ebfedea0SLionel Sambuc * - GSS_C_CONF_FLAG 75*ebfedea0SLionel Sambuc * - GSS_C_INTEG_FLAG 76*ebfedea0SLionel Sambuc * - GSS_C_ANON_FLAG 77*ebfedea0SLionel Sambuc * - GSS_C_PROT_READY_FLAG 78*ebfedea0SLionel Sambuc * - GSS_C_TRANS_FLAG 79*ebfedea0SLionel Sambuc * - GSS_C_DCE_STYLE 80*ebfedea0SLionel Sambuc * - GSS_C_IDENTIFY_FLAG 81*ebfedea0SLionel Sambuc * - GSS_C_EXTENDED_ERROR_FLAG 82*ebfedea0SLionel Sambuc * - GSS_C_DELEG_POLICY_FLAG 83*ebfedea0SLionel Sambuc * 84*ebfedea0SLionel Sambuc * 85*ebfedea0SLionel Sambuc * @subsection gssapi_services_permessage Per-message services 86*ebfedea0SLionel Sambuc * 87*ebfedea0SLionel Sambuc * - conf 88*ebfedea0SLionel Sambuc * - int 89*ebfedea0SLionel Sambuc * - message integrity 90*ebfedea0SLionel Sambuc * - replay detection 91*ebfedea0SLionel Sambuc * - out of sequence 92*ebfedea0SLionel Sambuc * 93*ebfedea0SLionel Sambuc */ 94*ebfedea0SLionel Sambuc 95*ebfedea0SLionel Sambuc /** 96*ebfedea0SLionel Sambuc * @page gssapi_mechs_intro GSS-API mechanisms 97*ebfedea0SLionel Sambuc * @section gssapi_mechs GSS-API mechanisms 98*ebfedea0SLionel Sambuc * 99*ebfedea0SLionel Sambuc * - Kerberos 5 - GSS_KRB5_MECHANISM 100*ebfedea0SLionel Sambuc * - SPNEGO - GSS_SPNEGO_MECHANISM 101*ebfedea0SLionel Sambuc * - NTLM - GSS_NTLM_MECHANISM 102*ebfedea0SLionel Sambuc 103*ebfedea0SLionel Sambuc */ 104*ebfedea0SLionel Sambuc 105*ebfedea0SLionel Sambuc 106*ebfedea0SLionel Sambuc /** 107*ebfedea0SLionel Sambuc * @page internalVSmechname Internal names and mechanism names 108*ebfedea0SLionel Sambuc * @section gssapi_api_INvsMN Name forms 109*ebfedea0SLionel Sambuc * 110*ebfedea0SLionel Sambuc * There are two forms of name in GSS-API, Internal form and 111*ebfedea0SLionel Sambuc * Contiguous string ("flat") form. gss_export_name() and 112*ebfedea0SLionel Sambuc * gss_import_name() can be used to convert between the two forms. 113*ebfedea0SLionel Sambuc * 114*ebfedea0SLionel Sambuc * - The contiguous string form is described by an oid specificing the 115*ebfedea0SLionel Sambuc * type and an octet string. A special form of the contiguous 116*ebfedea0SLionel Sambuc * string form is the exported name object. The exported name 117*ebfedea0SLionel Sambuc * defined for each mechanism, is something that can be stored and 118*ebfedea0SLionel Sambuc * complared later. The exported name is what should be used for 119*ebfedea0SLionel Sambuc * ACLs comparisons. 120*ebfedea0SLionel Sambuc * 121*ebfedea0SLionel Sambuc * - The Internal form 122*ebfedea0SLionel Sambuc * 123*ebfedea0SLionel Sambuc * There is also special form of the Internal Name (IN), and that is 124*ebfedea0SLionel Sambuc * the Mechanism Name (MN). In the mechanism name all the generic 125*ebfedea0SLionel Sambuc * information is stripped of and only contain the information for 126*ebfedea0SLionel Sambuc * one mechanism. In GSS-API some function return MN and some 127*ebfedea0SLionel Sambuc * require MN as input. Each of these function is marked up as such. 128*ebfedea0SLionel Sambuc * 129*ebfedea0SLionel Sambuc * 130*ebfedea0SLionel Sambuc * Describe relationship between import_name, canonicalize_name, 131*ebfedea0SLionel Sambuc * export_name and friends. 132*ebfedea0SLionel Sambuc */ 133*ebfedea0SLionel Sambuc 134*ebfedea0SLionel Sambuc /** @defgroup gssapi Heimdal GSS-API functions */ 135