GSS_WRAP(3GSS)               Generic Security Services API Library Functions
NAME
       gss_wrap - attach a cryptographic message
SYNOPSIS
       cc [ 
flag... ] 
file... 
-lgss  [ 
library... ]
       #include <gssapi/gssapi.h>       
OM_uint32 gss_wrap(
OM_uint32 *minor_status,            
const gss_ctx_id_t context_handle, 
int conf_req_flag,            
gss_qop_t qop_req, 
const gss_buffer_t input_message_buffer,            
int *conf_state, 
gss_buffer_t output_message_buffer);
DESCRIPTION
       The 
gss_wrap() function attaches a cryptographic 
MIC and optionally
       encrypts the specified 
input_message. The 
output_message contains
       both the 
MIC and the message. The 
qop_req parameter allows a choice
       between several cryptographic algorithms, if supported by the chosen
       mechanism.
       Since some application-level protocols may wish to use tokens emitted
       by 
gss_wrap() to provide secure framing, the 
GSS-API supports the
       wrapping of zero-length messages.
PARAMETERS
       The parameter descriptions for 
gss_wrap() follow:       
minor_status                                The status code returned by the underlying
                                mechanism.       
context_handle                                Identifies the context on which the message
                                will be sent.       
conf_req_flag                                If the value of 
conf_req_flag is non-zero,
                                both confidentiality and integrity services
                                are requested. If the value is zero, then
                                only integrity service is requested.       
qop_req                                Specifies the required quality of
                                protection. A mechanism-specific default may
                                be requested by setting 
qop_req to                                
GSS_C_QOP_DEFAULT. If an unsupported
                                protection strength is requested, 
gss_wrap()                                will return a 
major_status of 
GSS_S_BAD_QOP.       
input_message_buffer                                The message to be protected.       
conf_state                                If the value of 
conf_state is non-zero,
                                confidentiality, data origin authentication,
                                and integrity services have been applied. If
                                the value is zero, then integrity services
                                have been applied. Specify 
NULL if this
                                parameter is not required.       
output_message_buffer                                The buffer to receive the protected message.
                                Storage associated with this message must be
                                freed by the application after use with a
                                call to 
gss_release_buffer(3GSS).
ERRORS
       gss_wrap() may return the following status codes:       
GSS_S_COMPLETE                                Successful completion.       
GSS_S_CONTEXT_EXPIRED                                The context has already expired.       
GSS_S_NO_CONTEXT                                The 
context_handle parameter did not
                                identify a valid context.       
GSS_S_BAD_QOP                                The specified 
QOP is not supported by the
                                mechanism.       
GSS_S_FAILURE                                The underlying mechanism detected an error
                                for which no specific 
GSS status code is
                                defined.  The mechanism-specific status code
                                reported by means of the 
minor_status                                parameter details the error condition.
ATTRIBUTES
       See 
attributes(7)  for descriptions of the following attributes:
       +---------------+-----------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE |
       +---------------+-----------------+
       |MT-Level       | Safe            |
       +---------------+-----------------+
SEE ALSO
       gss_release_buffer(3GSS), 
attributes(7)       Solaris Security for Developers Guide                              January 15, 2003                GSS_WRAP(3GSS)