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