xref: /freebsd/lib/libgssapi/gss_get_mic.3 (revision 60b9f20a484d81b76a7edb8bc85ac4ccb72ec1d8)
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.\" The following commands are required for all man pages.
30c0b9f4feSDoug Rabson.Dd November 12, 2005
31c0b9f4feSDoug Rabson.Os
32c0b9f4feSDoug Rabson.Dt GSS_GET_MIC 3 PRM
33c0b9f4feSDoug Rabson.Sh NAME
34c0b9f4feSDoug Rabson.Nm gss_get_mic ,
35c0b9f4feSDoug Rabson.Nm gss_sign
36c0b9f4feSDoug Rabson.Nd Calculate a cryptographic message integrity code (MIC) for a
37c0b9f4feSDoug Rabsonmessage; integrity service
38c0b9f4feSDoug Rabson.\" This next command is for sections 2 and 3 only.
39c0b9f4feSDoug Rabson.\" .Sh LIBRARY
40c0b9f4feSDoug Rabson.Sh SYNOPSIS
41c0b9f4feSDoug Rabson.In "gssapi/gssapi.h"
42c0b9f4feSDoug Rabson.Ft OM_uint32
43c0b9f4feSDoug Rabson.Fo gss_get_mic
44c0b9f4feSDoug Rabson.Fa "OM_uint32 *minor_status"
45c0b9f4feSDoug Rabson.Fa "const gss_ctx_id_t context_handle"
46c0b9f4feSDoug Rabson.Fa "gss_qop_t qop_req"
47c0b9f4feSDoug Rabson.Fa "const gss_buffer_t message_buffer"
48c0b9f4feSDoug Rabson.Fa "gss_buffer_t msg_token"
49c0b9f4feSDoug Rabson.Fc
50c0b9f4feSDoug Rabson.Ft OM_uint32
51c0b9f4feSDoug Rabson.Fo gss_sign
52c0b9f4feSDoug Rabson.Fa "OM_uint32 *minor_status"
53c0b9f4feSDoug Rabson.Fa "const gss_ctx_id_t context_handle"
54c0b9f4feSDoug Rabson.Fa "gss_qop_t qop_req"
55c0b9f4feSDoug Rabson.Fa "gss_buffer_t message_buffer"
56c0b9f4feSDoug Rabson.Fa "gss_buffer_t msg_token"
57c0b9f4feSDoug Rabson.Fc
58c0b9f4feSDoug Rabson.Sh DESCRIPTION
59c0b9f4feSDoug RabsonGenerates a cryptographic MIC for the supplied message,
60c0b9f4feSDoug Rabsonand places the MIC in a token for transfer to the peer application.
61c0b9f4feSDoug RabsonThe
62c0b9f4feSDoug Rabson.Fa qop_req
63c0b9f4feSDoug Rabsonparameter allows a choice between several cryptographic algorithms,
64c0b9f4feSDoug Rabsonif supported by the chosen mechanism.
65c0b9f4feSDoug Rabson.Pp
66c0b9f4feSDoug RabsonSince some application-level protocols may wish to use tokens emitted
67c0b9f4feSDoug Rabsonby
68c0b9f4feSDoug Rabson.Fn gss_wrap
69c0b9f4feSDoug Rabsonto provide "secure framing",
70c0b9f4feSDoug Rabsonimplementations must support derivation of MICs from zero-length messages.
71c0b9f4feSDoug Rabson.Pp
72c0b9f4feSDoug RabsonThe
73c0b9f4feSDoug Rabson.Fn gss_sign
74c0b9f4feSDoug Rabsonroutine is an obsolete variant of
75c0b9f4feSDoug Rabson.Fn gss_get_mic .
76c0b9f4feSDoug RabsonIt is
77c0b9f4feSDoug Rabsonprovided for backwards
78c0b9f4feSDoug Rabsoncompatibility with applications using the GSS-API V1 interface.
79c0b9f4feSDoug RabsonA distinct entrypoint (as opposed to #define) is provided,
80c0b9f4feSDoug Rabsonboth to allow GSS-API V1 applications to link
81c0b9f4feSDoug Rabsonand to retain the slight parameter type differences between the
82c0b9f4feSDoug Rabsonobsolete versions of this routine and its current form.
83c0b9f4feSDoug Rabson.Sh PARAMETERS
84c0b9f4feSDoug Rabson.Bl -tag
85c0b9f4feSDoug Rabson.It minor_status
86c0b9f4feSDoug RabsonMechanism specific status code.
87c0b9f4feSDoug Rabson.It context_handle
88c0b9f4feSDoug RabsonIdentifies the context on which the message will be sent.
89c0b9f4feSDoug Rabson.It qop_req
90c0b9f4feSDoug RabsonSpecifies requested quality of protection.
91c0b9f4feSDoug RabsonCallers are encouraged, on portability grounds,
92c0b9f4feSDoug Rabsonto accept the default quality of protection offered by the chosen
93c0b9f4feSDoug Rabsonmechanism,
94c0b9f4feSDoug Rabsonwhich may be requested by specifying
95c0b9f4feSDoug Rabson.Dv GSS_C_QOP_DEFAULT
96c0b9f4feSDoug Rabsonfor this parameter.
97c0b9f4feSDoug RabsonIf an unsupported protection strength is requested,
98c0b9f4feSDoug Rabson.Fn gss_get_mic
99c0b9f4feSDoug Rabsonwill return a
100c0b9f4feSDoug Rabson.Fa major_status
101c0b9f4feSDoug Rabsonof
102c0b9f4feSDoug Rabson.Dv GSS_S_BAD_QOP .
103c0b9f4feSDoug Rabson.It message_buffer
104c0b9f4feSDoug RabsonMessage to be protected.
105c0b9f4feSDoug Rabson.It msg_token
106c0b9f4feSDoug RabsonBuffer to receive token.
107c0b9f4feSDoug RabsonThe application must free storage associated with this buffer after
108c0b9f4feSDoug Rabsonuse with a call to
109c0b9f4feSDoug Rabson.Fn gss_release_buffer .
110c0b9f4feSDoug Rabson.El
111c0b9f4feSDoug Rabson.Sh RETURN VALUES
112c0b9f4feSDoug Rabson.Bl -tag
113c0b9f4feSDoug Rabson.It GSS_S_COMPLETE
114c0b9f4feSDoug RabsonSuccessful completion
115c0b9f4feSDoug Rabson.It GSS_S_CONTEXT_EXPIRED
116c0b9f4feSDoug RabsonThe context has already expired
117c0b9f4feSDoug Rabson.It GSS_S_NO_CONTEXT
118c0b9f4feSDoug RabsonThe context_handle parameter did not identify a valid context
119c0b9f4feSDoug Rabson.It GSS_S_BAD_QOP
120c0b9f4feSDoug RabsonThe specified QOP is not supported by the mechanism
121c0b9f4feSDoug Rabson.El
122c0b9f4feSDoug Rabson.Sh SEE ALSO
123c0b9f4feSDoug Rabson.Xr gss_wrap 3 ,
124c0b9f4feSDoug Rabson.Xr gss_release_buffer 3
125c0b9f4feSDoug Rabson.Sh STANDARDS
126c0b9f4feSDoug Rabson.Bl -tag
127c0b9f4feSDoug Rabson.It RFC 2743
128c0b9f4feSDoug RabsonGeneric Security Service Application Program Interface Version 2, Update 1
129c0b9f4feSDoug Rabson.It RFC 2744
130c0b9f4feSDoug RabsonGeneric Security Service API Version 2 : C-bindings
131c0b9f4feSDoug Rabson.\" .Sh HISTORY
132c0b9f4feSDoug Rabson.El
133c0b9f4feSDoug Rabson.Sh HISTORY
134c0b9f4feSDoug RabsonThe
135c0b9f4feSDoug Rabson.Nm
136c0b9f4feSDoug Rabsonmanual page example first appeared in
137c0b9f4feSDoug Rabson.Fx 7.0 .
138c0b9f4feSDoug Rabson.Sh AUTHORS
139c0b9f4feSDoug RabsonJohn Wray, Iris Associates
14060b9f20aSDoug Rabson.Sh COPYRIGHT
14160b9f20aSDoug RabsonCopyright (C) The Internet Society (2000).  All Rights Reserved.
14260b9f20aSDoug Rabson.Pp
14360b9f20aSDoug RabsonThis document and translations of it may be copied and furnished to
14460b9f20aSDoug Rabsonothers, and derivative works that comment on or otherwise explain it
14560b9f20aSDoug Rabsonor assist in its implementation may be prepared, copied, published
14660b9f20aSDoug Rabsonand distributed, in whole or in part, without restriction of any
14760b9f20aSDoug Rabsonkind, provided that the above copyright notice and this paragraph are
14860b9f20aSDoug Rabsonincluded on all such copies and derivative works.  However, this
14960b9f20aSDoug Rabsondocument itself may not be modified in any way, such as by removing
15060b9f20aSDoug Rabsonthe copyright notice or references to the Internet Society or other
15160b9f20aSDoug RabsonInternet organizations, except as needed for the purpose of
15260b9f20aSDoug Rabsondeveloping Internet standards in which case the procedures for
15360b9f20aSDoug Rabsoncopyrights defined in the Internet Standards process must be
15460b9f20aSDoug Rabsonfollowed, or as required to translate it into languages other than
15560b9f20aSDoug RabsonEnglish.
15660b9f20aSDoug Rabson.Pp
15760b9f20aSDoug RabsonThe limited permissions granted above are perpetual and will not be
15860b9f20aSDoug Rabsonrevoked by the Internet Society or its successors or assigns.
15960b9f20aSDoug Rabson.Pp
16060b9f20aSDoug RabsonThis document and the information contained herein is provided on an
16160b9f20aSDoug Rabson"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
16260b9f20aSDoug RabsonTASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
16360b9f20aSDoug RabsonBUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
16460b9f20aSDoug RabsonHEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
16560b9f20aSDoug RabsonMERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
166