1c0b9f4feSDoug Rabson.\" -*- nroff -*- 2c0b9f4feSDoug Rabson.\" 3c0b9f4feSDoug Rabson.\" Copyright (c) 2005 Doug Rabson 4c0b9f4feSDoug Rabson.\" All rights reserved. 5c0b9f4feSDoug Rabson.\" 6c0b9f4feSDoug Rabson.\" Redistribution and use in source and binary forms, with or without 7c0b9f4feSDoug Rabson.\" modification, are permitted provided that the following conditions 8c0b9f4feSDoug Rabson.\" are met: 9c0b9f4feSDoug Rabson.\" 1. Redistributions of source code must retain the above copyright 10c0b9f4feSDoug Rabson.\" notice, this list of conditions and the following disclaimer. 11c0b9f4feSDoug Rabson.\" 2. Redistributions in binary form must reproduce the above copyright 12c0b9f4feSDoug Rabson.\" notice, this list of conditions and the following disclaimer in the 13c0b9f4feSDoug Rabson.\" documentation and/or other materials provided with the distribution. 14c0b9f4feSDoug Rabson.\" 15c0b9f4feSDoug Rabson.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16c0b9f4feSDoug Rabson.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17c0b9f4feSDoug Rabson.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18c0b9f4feSDoug Rabson.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19c0b9f4feSDoug Rabson.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20c0b9f4feSDoug Rabson.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21c0b9f4feSDoug Rabson.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22c0b9f4feSDoug Rabson.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23c0b9f4feSDoug Rabson.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24c0b9f4feSDoug Rabson.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25c0b9f4feSDoug Rabson.\" SUCH DAMAGE. 26c0b9f4feSDoug Rabson.\" 27c0b9f4feSDoug Rabson.\" $FreeBSD$ 28c0b9f4feSDoug Rabson.\" 29c0b9f4feSDoug Rabson.\" Copyright (C) The Internet Society (2000). All Rights Reserved. 30c0b9f4feSDoug Rabson.\" 31c0b9f4feSDoug Rabson.\" This document and translations of it may be copied and furnished to 32c0b9f4feSDoug Rabson.\" others, and derivative works that comment on or otherwise explain it 33c0b9f4feSDoug Rabson.\" or assist in its implementation may be prepared, copied, published 34c0b9f4feSDoug Rabson.\" and distributed, in whole or in part, without restriction of any 35c0b9f4feSDoug Rabson.\" kind, provided that the above copyright notice and this paragraph are 36c0b9f4feSDoug Rabson.\" included on all such copies and derivative works. However, this 37c0b9f4feSDoug Rabson.\" document itself may not be modified in any way, such as by removing 38c0b9f4feSDoug Rabson.\" the copyright notice or references to the Internet Society or other 39c0b9f4feSDoug Rabson.\" Internet organizations, except as needed for the purpose of 40c0b9f4feSDoug Rabson.\" developing Internet standards in which case the procedures for 41c0b9f4feSDoug Rabson.\" copyrights defined in the Internet Standards process must be 42c0b9f4feSDoug Rabson.\" followed, or as required to translate it into languages other than 43c0b9f4feSDoug Rabson.\" English. 44c0b9f4feSDoug Rabson.\" 45c0b9f4feSDoug Rabson.\" The limited permissions granted above are perpetual and will not be 46c0b9f4feSDoug Rabson.\" revoked by the Internet Society or its successors or assigns. 47c0b9f4feSDoug Rabson.\" 48c0b9f4feSDoug Rabson.\" This document and the information contained herein is provided on an 49c0b9f4feSDoug Rabson.\" "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 50c0b9f4feSDoug Rabson.\" TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 51c0b9f4feSDoug Rabson.\" BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 52c0b9f4feSDoug Rabson.\" HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 53c0b9f4feSDoug Rabson.\" MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 54c0b9f4feSDoug Rabson.\" 55c0b9f4feSDoug Rabson.\" The following commands are required for all man pages. 56c0b9f4feSDoug Rabson.Dd November 12, 2005 57c0b9f4feSDoug Rabson.Os 58c0b9f4feSDoug Rabson.Dt GSS_INQUIRE_CONTEXT 3 PRM 59c0b9f4feSDoug Rabson.Sh NAME 60c0b9f4feSDoug Rabson.Nm gss_inquire_context 61c0b9f4feSDoug Rabson.Nd Obtain information about a security context 62c0b9f4feSDoug Rabson.\" This next command is for sections 2 and 3 only. 63c0b9f4feSDoug Rabson.\" .Sh LIBRARY 64c0b9f4feSDoug Rabson.Sh SYNOPSIS 65c0b9f4feSDoug Rabson.In "gssapi/gssapi.h" 66c0b9f4feSDoug Rabson.Ft OM_uint32 67c0b9f4feSDoug Rabson.Fo gss_inquire_context 68c0b9f4feSDoug Rabson.Fa "OM_uint32 *minor_status" 69c0b9f4feSDoug Rabson.Fa "const gss_ctx_id_t context_handle" 70c0b9f4feSDoug Rabson.Fa "gss_name_t *src_name" 71c0b9f4feSDoug Rabson.Fa "gss_name_t *targ_name" 72c0b9f4feSDoug Rabson.Fa "OM_uint32 *lifetime_rec" 73c0b9f4feSDoug Rabson.Fa "gss_OID *mech_type" 74c0b9f4feSDoug Rabson.Fa "OM_uint32 *ctx_flags" 75c0b9f4feSDoug Rabson.Fa "int *locally_initiated" 76c0b9f4feSDoug Rabson.Fa "int *open" 77c0b9f4feSDoug Rabson.Fc 78c0b9f4feSDoug Rabson.Sh DESCRIPTION 79c0b9f4feSDoug RabsonObtains information about a security context. 80c0b9f4feSDoug RabsonThe caller must already have obtained a handle that refers to the 81c0b9f4feSDoug Rabsoncontext, 82c0b9f4feSDoug Rabsonalthough the context need not be fully established. 83c0b9f4feSDoug Rabson.Sh PARAMETERS 84c0b9f4feSDoug Rabson.Bl -tag 85c0b9f4feSDoug Rabson.It minor_status 86c0b9f4feSDoug RabsonMechanism specific status code. 87c0b9f4feSDoug Rabson.It context_handle 88c0b9f4feSDoug RabsonA handle that refers to the security context. 89c0b9f4feSDoug Rabson.It src_name 90c0b9f4feSDoug RabsonThe name of the context initiator. 91c0b9f4feSDoug RabsonIf the context was established using anonymous authentication, 92c0b9f4feSDoug Rabsonand if the application invoking 93c0b9f4feSDoug Rabson.Fn gss_inquire_context 94c0b9f4feSDoug Rabsonis the context acceptor, 95c0b9f4feSDoug Rabsonan anonymous name will be returned. 96c0b9f4feSDoug RabsonStorage associated with this name must be freed by the application 97c0b9f4feSDoug Rabsonafter use with a call to 98c0b9f4feSDoug Rabson.Fn gss_release_name . 99c0b9f4feSDoug RabsonSpecify 100c0b9f4feSDoug Rabson.Dv NULL 101c0b9f4feSDoug Rabsonif not required. 102c0b9f4feSDoug Rabson.It targ_name 103c0b9f4feSDoug RabsonThe name of the context acceptor. 104c0b9f4feSDoug RabsonStorage associated with this name must be freed by the application 105c0b9f4feSDoug Rabsonafter use with a call to 106c0b9f4feSDoug Rabson.Fn gss_release_name . 107c0b9f4feSDoug RabsonIf the context acceptor did not authenticate itself, 108c0b9f4feSDoug Rabsonand if the initiator did not specify a target name in its call to 109c0b9f4feSDoug Rabson.Fn gss_init_sec_context , 110c0b9f4feSDoug Rabsonthe value 111c0b9f4feSDoug Rabson.Dv GSS_C_NO_NAME 112c0b9f4feSDoug Rabsonwill be returned. 113c0b9f4feSDoug RabsonSpecify 114c0b9f4feSDoug Rabson.Dv NULL 115c0b9f4feSDoug Rabsonif not required. 116c0b9f4feSDoug Rabson.It lifetime_rec 117c0b9f4feSDoug RabsonThe number of seconds for which the context will remain valid. 118c0b9f4feSDoug RabsonIf the context has expired, 119c0b9f4feSDoug Rabsonthis parameter will be set to zero. 120c0b9f4feSDoug RabsonIf the implementation does not support context expiration, 121c0b9f4feSDoug Rabsonthe value 122c0b9f4feSDoug Rabson.Dv GSS_C_INDEFINITE 123c0b9f4feSDoug Rabsonwill be returned. 124c0b9f4feSDoug RabsonSpecify 125c0b9f4feSDoug Rabson.Dv NULL 126c0b9f4feSDoug Rabsonif not required. 127c0b9f4feSDoug Rabson.It mech_type 128c0b9f4feSDoug RabsonThe security mechanism providing the context. 129c0b9f4feSDoug RabsonThe returned OID will be a pointer to static storage that should be 130c0b9f4feSDoug Rabsontreated as read-only by the application; 131c0b9f4feSDoug Rabsonin particular the application should not attempt to free it. 132c0b9f4feSDoug RabsonSpecify 133c0b9f4feSDoug Rabson.Dv NULL 134c0b9f4feSDoug Rabsonif not required. 135c0b9f4feSDoug Rabson.It ctx_flags 136c0b9f4feSDoug RabsonContains various independent flags, 137c0b9f4feSDoug Rabsoneach of which indicates that the context supports 138c0b9f4feSDoug Rabson(or is expected to support, if 139c0b9f4feSDoug Rabson.Fa open 140c0b9f4feSDoug Rabsonis false) 141c0b9f4feSDoug Rabsona specific service option. 142c0b9f4feSDoug RabsonIf not needed, specify 143c0b9f4feSDoug Rabson.Dv NULL . 144c0b9f4feSDoug RabsonSymbolic names are provided for each flag, 145c0b9f4feSDoug Rabsonand the symbolic names corresponding to the required flags should be 146c0b9f4feSDoug Rabsonlogically-ANDed with the 147c0b9f4feSDoug Rabson.Fa ctx_flags 148c0b9f4feSDoug Rabsonvalue to test whether a given option is supported by the context. 149c0b9f4feSDoug RabsonThe flags are: 150c0b9f4feSDoug Rabson.Bl -tag -width "WW" 151c0b9f4feSDoug Rabson.It GSS_C_DELEG_FLAG 152c0b9f4feSDoug Rabson.Bl -tag -width "False" 153c0b9f4feSDoug Rabson.It True 154c0b9f4feSDoug RabsonCredentials were delegated from the initiator to the acceptor. 155c0b9f4feSDoug Rabson.It False 156c0b9f4feSDoug RabsonNo credentials were delegated. 157c0b9f4feSDoug Rabson.El 158c0b9f4feSDoug Rabson.It GSS_C_MUTUAL_FLAG 159c0b9f4feSDoug Rabson.Bl -tag -width "False" 160c0b9f4feSDoug Rabson.It True 161c0b9f4feSDoug RabsonThe acceptor was authenticated to the initiator. 162c0b9f4feSDoug Rabson.It False 163c0b9f4feSDoug RabsonThe acceptor did not authenticate itself. 164c0b9f4feSDoug Rabson.El 165c0b9f4feSDoug Rabson.It GSS_C_REPLAY_FLAG 166c0b9f4feSDoug Rabson.Bl -tag -width "False" 167c0b9f4feSDoug Rabson.It True 168c0b9f4feSDoug RabsonReplay of protected messages will be detected. 169c0b9f4feSDoug Rabson.It False 170c0b9f4feSDoug RabsonReplayed messages will not be detected. 171c0b9f4feSDoug Rabson.El 172c0b9f4feSDoug Rabson.It GSS_C_SEQUENCE_FLAG 173c0b9f4feSDoug Rabson.Bl -tag -width "False" 174c0b9f4feSDoug Rabson.It True 175c0b9f4feSDoug RabsonOut-of-sequence protected messages will be detected. 176c0b9f4feSDoug Rabson.It False 177c0b9f4feSDoug RabsonOut-of-sequence messages will not be detected. 178c0b9f4feSDoug Rabson.El 179c0b9f4feSDoug Rabson.It GSS_C_CONF_FLAG 180c0b9f4feSDoug Rabson.Bl -tag -width "False" 181c0b9f4feSDoug Rabson.It True 182c0b9f4feSDoug RabsonConfidentiality service may be invoked by calling 183c0b9f4feSDoug Rabson.Fn gss_wrap 184c0b9f4feSDoug Rabsonroutine. 185c0b9f4feSDoug Rabson.It False 186c0b9f4feSDoug RabsonNo confidentiality service 187c0b9f4feSDoug Rabson(via 188c0b9f4feSDoug Rabson.Fn gss_wrap ) 189c0b9f4feSDoug Rabsonavailable. 190c0b9f4feSDoug Rabson.Fn gss_wrap 191c0b9f4feSDoug Rabsonwill provide message encapsulation, 192c0b9f4feSDoug Rabsondata-origin authentication and integrity services only. 193c0b9f4feSDoug Rabson.El 194c0b9f4feSDoug Rabson.It GSS_C_INTEG_FLAG 195c0b9f4feSDoug Rabson.Bl -tag -width "False" 196c0b9f4feSDoug Rabson.It True 197c0b9f4feSDoug RabsonIntegrity service may be invoked by calling either 198c0b9f4feSDoug Rabson.Fn gss_get_mic 199c0b9f4feSDoug Rabsonor 200c0b9f4feSDoug Rabson.Fn gss_wrap 201c0b9f4feSDoug Rabsonroutines. 202c0b9f4feSDoug Rabson.It False 203c0b9f4feSDoug RabsonPer-message integrity service unavailable. 204c0b9f4feSDoug Rabson.El 205c0b9f4feSDoug Rabson.It GSS_C_ANON_FLAG 206c0b9f4feSDoug Rabson.Bl -tag -width "False" 207c0b9f4feSDoug Rabson.It True 208c0b9f4feSDoug RabsonThe initiator's identity will not be revealed to the acceptor. 209c0b9f4feSDoug RabsonThe 210c0b9f4feSDoug Rabson.Fa src_name 211c0b9f4feSDoug Rabsonparameter (if requested) contains an anonymous internal name. 212c0b9f4feSDoug Rabson.It False 213c0b9f4feSDoug RabsonThe initiator has been authenticated normally. 214c0b9f4feSDoug Rabson.El 215c0b9f4feSDoug Rabson.It GSS_C_PROT_READY_FLAG 216c0b9f4feSDoug Rabson.Bl -tag -width "False" 217c0b9f4feSDoug Rabson.It True 218c0b9f4feSDoug RabsonProtection services 219c0b9f4feSDoug Rabson(as specified by the states of the 220c0b9f4feSDoug Rabson.Dv GSS_C_CONF_FLAG 221c0b9f4feSDoug Rabsonand 222c0b9f4feSDoug Rabson.Dv GSS_C_INTEG_FLAG ) 223c0b9f4feSDoug Rabsonare available for use. 224c0b9f4feSDoug Rabson.It False 225c0b9f4feSDoug RabsonProtection services 226c0b9f4feSDoug Rabson(as specified by the states of the 227c0b9f4feSDoug Rabson.Dv GSS_C_CONF_FLAG 228c0b9f4feSDoug Rabsonand 229c0b9f4feSDoug Rabson.Dv GSS_C_INTEG_FLAG ) 230c0b9f4feSDoug Rabsonare available only if the context is fully established 231c0b9f4feSDoug Rabson(i.e. if the 232c0b9f4feSDoug Rabson.Fa open 233c0b9f4feSDoug Rabsonparameter is non-zero). 234c0b9f4feSDoug Rabson.El 235c0b9f4feSDoug Rabson.It GSS_C_TRANS_FLAG 236c0b9f4feSDoug Rabson.Bl -tag -width "False" 237c0b9f4feSDoug Rabson.It True 238c0b9f4feSDoug RabsonThe security context may be transferred to other processes via a call to 239c0b9f4feSDoug Rabson.Fn gss_export_sec_context . 240c0b9f4feSDoug Rabson.It False 241c0b9f4feSDoug RabsonThe security context is not transferable. 242c0b9f4feSDoug Rabson.El 243c0b9f4feSDoug Rabson.El 244c0b9f4feSDoug Rabson.It locally_initiated 245c0b9f4feSDoug RabsonNon-zero if the invoking application is the context initiator. 246c0b9f4feSDoug RabsonSpecify 247c0b9f4feSDoug Rabson.Dv NULL 248c0b9f4feSDoug Rabsonif not required. 249c0b9f4feSDoug Rabson.It open 250c0b9f4feSDoug RabsonNon-zero if the context is fully established; 251c0b9f4feSDoug RabsonZero if a context-establishment token is expected from the peer 252c0b9f4feSDoug Rabsonapplication. 253c0b9f4feSDoug RabsonSpecify 254c0b9f4feSDoug Rabson.Dv NULL 255c0b9f4feSDoug Rabsonif not required. 256c0b9f4feSDoug Rabson.El 257c0b9f4feSDoug Rabson.Sh RETURN VALUES 258c0b9f4feSDoug Rabson.Bl -tag 259c0b9f4feSDoug Rabson.It GSS_S_COMPLETE 260c0b9f4feSDoug RabsonSuccessful completion 261c0b9f4feSDoug Rabson.It GSS_S_NO_CONTEXT 262c0b9f4feSDoug RabsonThe referenced context could not be accessed 263c0b9f4feSDoug Rabson.El 264c0b9f4feSDoug Rabson.Sh SEE ALSO 265c0b9f4feSDoug Rabson.Xr gss_release_name 3 , 266c0b9f4feSDoug Rabson.Xr gss_init_sec_context 3 , 267c0b9f4feSDoug Rabson.Xr gss_wrap 3 , 268c0b9f4feSDoug Rabson.Xr gss_get_mic 3 , 269c0b9f4feSDoug Rabson.Xr gss_export_sec_context 3 270c0b9f4feSDoug Rabson.Sh STANDARDS 271c0b9f4feSDoug Rabson.Bl -tag 272c0b9f4feSDoug Rabson.It RFC 2743 273c0b9f4feSDoug RabsonGeneric Security Service Application Program Interface Version 2, Update 1 274c0b9f4feSDoug Rabson.It RFC 2744 275c0b9f4feSDoug RabsonGeneric Security Service API Version 2 : C-bindings 276c0b9f4feSDoug Rabson.\" .Sh HISTORY 277c0b9f4feSDoug Rabson.El 278c0b9f4feSDoug Rabson.Sh HISTORY 279c0b9f4feSDoug RabsonThe 280c0b9f4feSDoug Rabson.Nm 281c0b9f4feSDoug Rabsonmanual page example first appeared in 282c0b9f4feSDoug Rabson.Fx 7.0 . 283c0b9f4feSDoug Rabson.Sh AUTHORS 284c0b9f4feSDoug RabsonJohn Wray, Iris Associates 285