---
name: "globus_gsi_gssapi"
section: "3"
platform: "linux"
package: "libglobus-gssapi-gsi-doc"
version: "14.20-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/globus_gsi_gssapi"
---

# globus\_gsi\_gssapi(3)

Globus GSSAPI - GSI Implementation Details.

## NAME

globus\_gsi\_gssapi - Globus GSSAPI

 \- GSI Implementation Details.

## SYNOPSIS

### Modules

**Constants**\
 Implementation-specific Constants.  **Activation**\
 Module Activation.  **Request Flags**\
 Request Flags.  **Return Flags**\
 Return Flags.  **GSSAPI Extensions**\
 Extensions.

### Functions

OM\_uint32 GSS\_CALLCONV **gss\_accept\_sec\_context** (OM\_uint32 \*minor\_status, gss\_ctx\_id\_t \*context\_handle\_P, const gss\_cred\_id\_t acceptor\_cred\_handle, const gss\_buffer\_t input\_token, const gss\_channel\_bindings\_t input\_chan\_bindings, gss\_name\_t \*src\_name\_P, gss\_OID \*mech\_type, gss\_buffer\_t output\_token, OM\_uint32 \*ret\_flags, OM\_uint32 \*time\_rec, gss\_cred\_id\_t \*delegated\_cred\_handle\_P)\
 GSS Accept Security Context.  OM\_uint32 GSS\_CALLCONV **gss\_acquire\_cred** (OM\_uint32 \*minor\_status, const gss\_name\_t desired\_name\_P, OM\_uint32 time\_req, const gss\_OID\_set desired\_mechs, gss\_cred\_usage\_t cred\_usage, gss\_cred\_id\_t \*output\_cred\_handle\_P, gss\_OID\_set \*actual\_mechs, OM\_uint32 \*time\_rec)\
 Acquire Credential.  OM\_uint32 GSS\_CALLCONV **gss\_compare\_name** (OM\_uint32 \*minor\_status, const gss\_name\_t name1\_P, const gss\_name\_t name2\_P, int \*name\_equal)\
 Compare Name.  OM\_uint32 GSS\_CALLCONV **gss\_delete\_sec\_context** (OM\_uint32 \*minor\_status, gss\_ctx\_id\_t \*context\_handle\_P, gss\_buffer\_t output\_token)\
 Delete Security Context.  OM\_uint32 GSS\_CALLCONV **gss\_display\_name** (OM\_uint32 \*minor\_status, const gss\_name\_t input\_name\_P, gss\_buffer\_t output\_name, gss\_OID \*output\_name\_type)\
 Display Name.  OM\_uint32 GSS\_CALLCONV **gss\_display\_status** (OM\_uint32 \*minor\_status, OM\_uint32 status\_value, int status\_type, const gss\_OID mech\_type, OM\_uint32 \*message\_context, gss\_buffer\_t status\_string)\
 Display Status

Calls the OpenSSL error print routines to produce a printable message. This may need some work, as the OpenSSL error messages are more of a trace, and my not be the best for the user. Also don't take advantage of being called in a loop. " OM\_uint32 GSS\_CALLCONV **gss\_duplicate\_name** (OM\_uint32 \*minor\_status, const gss\_name\_t src\_name, gss\_name\_t \*dest\_name)\
 Duplicate Name.  OM\_uint32 GSS\_CALLCONV **gss\_export\_name** (OM\_uint32 \*minor\_status, const gss\_name\_t input\_name\_P, gss\_buffer\_t exported\_name)\
 Export Name.  OM\_uint32 GSS\_CALLCONV **gss\_get\_mic** (OM\_uint32 \*minor\_status, const gss\_ctx\_id\_t context\_handle, gss\_qop\_t qop\_req, const gss\_buffer\_t message\_buffer, gss\_buffer\_t message\_token)\
 Get MIC

Calculates a cryptographic MIC (message integrity check) over an application message, and returns that MIC in the token. The token and message can then be passed to the peer application which calls **gss\_verify\_mic** to verify the MIC. " OM\_uint32 GSS\_CALLCONV **gss\_sign** (OM\_uint32 \*minor\_status, gss\_ctx\_id\_t context\_handle, int qop\_req, gss\_buffer\_t message\_buffer, gss\_buffer\_t message\_token)\
 Sign.  OM\_uint32 GSS\_CALLCONV **gss\_import\_name** (OM\_uint32 \*minor\_status, const gss\_buffer\_t input\_name\_buffer, const gss\_OID input\_name\_type, gss\_name\_t \*output\_name\_P)\
 OM\_uint32 GSS\_CALLCONV **gss\_init\_sec\_context** (OM\_uint32 \*minor\_status, const gss\_cred\_id\_t initiator\_cred\_handle, gss\_ctx\_id\_t \*context\_handle\_P, const gss\_name\_t target\_name, const gss\_OID mech\_type, OM\_uint32 req\_flags, OM\_uint32 time\_req, const gss\_channel\_bindings\_t input\_chan\_bindings, const gss\_buffer\_t input\_token, gss\_OID \*actual\_mech\_type, gss\_buffer\_t output\_token, OM\_uint32 \*ret\_flags, OM\_uint32 \*time\_rec)\
 Init Sec Context.  OM\_uint32 GSS\_CALLCONV **gss\_inquire\_context** (OM\_uint32 \*minor\_status, const gss\_ctx\_id\_t context\_handle\_P, gss\_name\_t \*src\_name\_P, gss\_name\_t \*targ\_name\_P, OM\_uint32 \*lifetime\_rec, gss\_OID \*mech\_type, OM\_uint32 \*ctx\_flags, int \*locally\_initiated, int \*open)\
 Inquire Context.  OM\_uint32 GSS\_CALLCONV **gss\_context\_time** (OM\_uint32 \*minor\_status, const gss\_ctx\_id\_t context\_handle, OM\_uint32 \*time\_rec)\
 Context Time.  OM\_uint32 GSS\_CALLCONV **gss\_inquire\_cred** (OM\_uint32 \*minor\_status, const gss\_cred\_id\_t cred\_handle\_P, gss\_name\_t \*name, OM\_uint32 \*lifetime, gss\_cred\_usage\_t \*cred\_usage, gss\_OID\_set \*mechanisms)\
 Inquire Cred.  OM\_uint32 GSS\_CALLCONV **gss\_add\_oid\_set\_member** (OM\_uint32 \*minor\_status, const gss\_OID member\_oid, gss\_OID\_set \*oid\_set)\
 Add OID Set Member.  OM\_uint32 GSS\_CALLCONV **gss\_create\_empty\_oid\_set** (OM\_uint32 \*minor\_status, gss\_OID\_set \*oid\_set)\
 Create Empty OID Set.  OM\_uint32 GSS\_CALLCONV **gss\_indicate\_mechs** (OM\_uint32 \*minor\_status, gss\_OID\_set \*mech\_set)\
 Indicate Mechs.  OM\_uint32 GSS\_CALLCONV **gss\_release\_oid\_set** (OM\_uint32 \*minor\_status, gss\_OID\_set \*mech\_set)\
 Release OID Set.  OM\_uint32 GSS\_CALLCONV **gss\_test\_oid\_set\_member** (OM\_uint32 \*minor\_status, const gss\_OID member, const gss\_OID\_set set, int \*present)\
 Test OID Set Member.  OM\_uint32 GSS\_CALLCONV **gss\_release\_buffer** (OM\_uint32 \*minor\_status, gss\_buffer\_t buffer)\
 Release Buffer.  OM\_uint32 GSS\_CALLCONV **gss\_release\_cred** (OM\_uint32 \*minor\_status, gss\_cred\_id\_t \*cred\_handle\_P)\
 Release Credential.  OM\_uint32 GSS\_CALLCONV **gss\_release\_name** (OM\_uint32 \*minor\_status, gss\_name\_t \*name\_P)\
 GSS Release Name.  OM\_uint32 GSS\_CALLCONV **gss\_unwrap** (OM\_uint32 \*minor\_status, const gss\_ctx\_id\_t context\_handle, const gss\_buffer\_t input\_message\_buffer, gss\_buffer\_t output\_message\_buffer, int \*conf\_state, gss\_qop\_t \*qop\_state)\
 Unwrap.  OM\_uint32 GSS\_CALLCONV **gss\_unseal** (OM\_uint32 \*minor\_status, gss\_ctx\_id\_t context\_handle, gss\_buffer\_t input\_message\_buffer, gss\_buffer\_t output\_message\_buffer, int \*conf\_state, int \*qop\_state)\
 Unseal.  OM\_uint32 GSS\_CALLCONV **gss\_verify\_mic** (OM\_uint32 \*minor\_status, const gss\_ctx\_id\_t context\_handle, const gss\_buffer\_t message\_buffer, const gss\_buffer\_t token\_buffer, gss\_qop\_t \*qop\_state)\
 Verify MIC.  OM\_uint32 GSS\_CALLCONV **gss\_verify** (OM\_uint32 \*minor\_status, gss\_ctx\_id\_t context\_handle, gss\_buffer\_t message\_buffer, gss\_buffer\_t token\_buffer, int \*qop\_state)\
 Verify.  OM\_uint32 GSS\_CALLCONV **gss\_wrap\_size\_limit** (OM\_uint32 \*minor\_status, const gss\_ctx\_id\_t context\_handle, int conf\_req\_flag, gss\_qop\_t qop\_req, OM\_uint32 req\_output\_size, OM\_uint32 \*max\_input\_size)\
 Wrap Size Limit.  OM\_uint32 GSS\_CALLCONV **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)\
 Wrap.  OM\_uint32 GSS\_CALLCONV **gss\_seal** (OM\_uint32 \*minor\_status, gss\_ctx\_id\_t context\_handle, int conf\_req\_flag, int qop\_req, gss\_buffer\_t input\_message\_buffer, int \*conf\_state, gss\_buffer\_t output\_message\_buffer)\
 Seal.

## Detailed Description

GSI Implementation Details.

The Globus GSI GSSAPI is an implementation of `GSS API C Bindings` using OpenSSL. This API documentation is intended to explain implementation-specific behavior of this GSSAPI implementation, as well as GSSAPI extensions.

The API documentation is divided into sections covering:

- •

  **Globus GSSAPI**

- •

  **Activation**

- •

  **Constants**

- •

  **Request Flags**

- •

  **Return Flags**

- •

  **GSSAPI Extensions**

- •

  **Delegation**

## Function Documentation

### OM\_uint32 GSS\_CALLCONV gss\_accept\_sec\_context (OM\_uint32 \* minor\_status, gss\_ctx\_id\_t \* context\_handle\_P, const gss\_cred\_id\_t acceptor\_cred\_handle, const gss\_buffer\_t input\_token, const gss\_channel\_bindings\_t input\_chan\_bindings, gss\_name\_t \* src\_name\_P, gss\_OID \* mech\_type, gss\_buffer\_t output\_token, OM\_uint32 \* ret\_flags, OM\_uint32 \* time\_rec, gss\_cred\_id\_t \* delegated\_cred\_handle\_P)

GSS Accept Security Context.

**Parameters**

*minor\_status* \
 *context\_handle\_P* \
 *acceptor\_cred\_handle* \
 *input\_token* \
 *input\_chan\_bindings* \
 *src\_name\_P* \
 *mech\_type* \
 *output\_token* \
 *ret\_flags* Also used as req\_flags for other functions \
 *time\_rec* \
 *delegated\_cred\_handle\_P*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_acquire\_cred (OM\_uint32 \* minor\_status, const gss\_name\_t desired\_name\_P, OM\_uint32 time\_req, const gss\_OID\_set desired\_mechs, gss\_cred\_usage\_t cred\_usage, gss\_cred\_id\_t \* output\_cred\_handle\_P, gss\_OID\_set \* actual\_mechs, OM\_uint32 \* time\_rec)

Acquire Credential. GSSAPI routine to acquire the local credential. \
\
  See the latest IETF draft/RFC on the GSSAPI C bindings.

Gets the local credentials. The proxy\_init\_cred does most of the work of setting up the SSL\_ctx, getting the user's cert, key, etc.

The globusid will be obtained from the certificate. (Minus and /CN=proxy entries.)

**Parameters**

*minor\_status* Mechanism specific status code. In this implementation, the minor\_status is a cast from a globus\_result\_t value, which is either GLOBUS\_SUCCESS or a globus error object ID if an error occurred. \
 *desired\_name\_P* Name of principle whose credentials should be acquired This parameter maps to the desired subject of the cert to be acquired as the credential. Possible values are:

- •

  For a service cert: *service name*@*fqdn*

- •

  For a host cert: *fqdn*

- •

  For a proxy cert: *subject name*

- •

  For a user cert: *subject name* This parameter can be NULL, in which case the cert is chosen using a default search order of: host, proxy, user, service

*time\_req* Number of seconds that credentials should remain valid. This value can be GSS\_C\_INDEFINITE for an unlimited lifetime. NOTE: in the current implementation, this parameter is ignored, since you can't change the expiration of a signed cert.\
 *desired\_mechs* \
 *cred\_usage* \
 *output\_cred\_handle\_P* \
 *actual\_mechs* \
 *time\_rec*

### OM\_uint32 GSS\_CALLCONV gss\_add\_oid\_set\_member (OM\_uint32 \* minor\_status, const gss\_OID member\_oid, gss\_OID\_set \* oid\_set)

Add OID Set Member. Adds an Object Identifier to an Object Identifier set. This routine is intended for use in conjunction with GSS\_Create\_empty\_OID\_set() when constructing a set of mechanism OIDs for input to GSS\_Acquire\_cred().

**Parameters**

*minor\_status* \
 *member\_oid* \
 *oid\_set*

**Return values**

*GSS\_S\_COMPLETE* Success \
 *GSS\_S\_FAILURE* Operation failed

### OM\_uint32 GSS\_CALLCONV gss\_compare\_name (OM\_uint32 \* minor\_status, const gss\_name\_t name1\_P, const gss\_name\_t name2\_P, int \* name\_equal)

Compare Name. Compare two names. GSSAPI names in this implementation are pointers to X.509 names.

**Parameters**

*minor\_status* currently is always set to GLOBUS\_SUCCESS \
 *name1\_P* \
 *name2\_P* \
 *name\_equal*

**Returns**

currently always returns GSS\_S\_COMPLETE

### OM\_uint32 GSS\_CALLCONV gss\_context\_time (OM\_uint32 \* minor\_status, const gss\_ctx\_id\_t context\_handle, OM\_uint32 \* time\_rec)

Context Time.

**Parameters**

*minor\_status* \
 *context\_handle* \
 *time\_rec*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_create\_empty\_oid\_set (OM\_uint32 \* minor\_status, gss\_OID\_set \* oid\_set)

Create Empty OID Set. Creates an object identifier set containing no object identifiers, to which members may be subsequently added using the GSS\_Add\_OID\_set\_member() routine. These routines are intended to be used to construct sets of mechanism object identifiers, for input to GSS\_Acquire\_cred().

**Parameters**

*minor\_status* \
 *oid\_set*

**Return values**

*GSS\_S\_COMPLETE* Success \
 *GSS\_S\_FAILURE* Operation failed

### OM\_uint32 GSS\_CALLCONV gss\_delete\_sec\_context (OM\_uint32 \* minor\_status, gss\_ctx\_id\_t \* context\_handle\_P, gss\_buffer\_t output\_token)

Delete Security Context. Delete the GSS Security Context

**Parameters**

*minor\_status* The minor status result - this is a globus\_result\_t cast to a OM\_uint32. \
 *context\_handle\_P* The context handle to be deleted \
 *output\_token* A token created upon destroying the context. If non-empty, this should be sent to the peer of the context to indicate that the context is closed.

**Returns**

This function always returns GSS\_S\_COMPLETE

### OM\_uint32 GSS\_CALLCONV gss\_display\_name (OM\_uint32 \* minor\_status, const gss\_name\_t input\_name\_P, gss\_buffer\_t output\_name, gss\_OID \* output\_name\_type)

Display Name. Produces a single line version of the internal X.509 name

**Parameters**

*minor\_status* \
 *input\_name\_P* \
 *output\_name* \
 *output\_name\_type*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_display\_status (OM\_uint32 \* minor\_status, OM\_uint32 status\_value, int status\_type, const gss\_OID mech\_type, OM\_uint32 \* message\_context, gss\_buffer\_t status\_string)

Display Status

Calls the OpenSSL error print routines to produce a printable message. This may need some work, as the OpenSSL error messages are more of a trace, and my not be the best for the user. Also don't take advantage of being called in a loop.

**Parameters**

*minor\_status* \
 *status\_value* \
 *status\_type* \
 *mech\_type* \
 *message\_context* \
 *status\_string*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_duplicate\_name (OM\_uint32 \* minor\_status, const gss\_name\_t src\_name, gss\_name\_t \* dest\_name)

Duplicate Name. Copy a GSSAPI name.

**Parameters**

*minor\_status* \
 *src\_name* \
 *dest\_name*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_export\_name (OM\_uint32 \* minor\_status, const gss\_name\_t input\_name\_P, gss\_buffer\_t exported\_name)

Export Name. Produces a mechanism-independent exported name object. See section 3.2 of RFC 2743.

### OM\_uint32 GSS\_CALLCONV gss\_get\_mic (OM\_uint32 \* minor\_status, const gss\_ctx\_id\_t context\_handle, gss\_qop\_t qop\_req, const gss\_buffer\_t message\_buffer, gss\_buffer\_t message\_token)

Get MIC

Calculates a cryptographic MIC (message integrity check) over an application message, and returns that MIC in the token. The token and message can then be passed to the peer application which calls **gss\_verify\_mic** to verify the MIC.

**Parameters**

*minor\_status* \
 *context\_handle* \
 *qop\_req* \
 *message\_buffer* \
 *message\_token*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_import\_name (OM\_uint32 \* minor\_status, const gss\_buffer\_t input\_name\_buffer, const gss\_OID input\_name\_type, gss\_name\_t \* output\_name\_P)

Import a name into a gss\_name\_t

Creates a new gss\_name\_t which contains a mechanism-specific representation of the input name. GSSAPI OpenSSL implements the following name types, based on the input\_name\_type OID:

- •

  GSS\_C\_NT\_ANONYMOUS (input\_name\_buffer is ignored)

- •

  GSS\_C\_NT\_HOSTBASED\_SERVICE (input\_name\_buffer contains a string 'service@FQN' which will match /CN=service/FQDN)

- •

  GSS\_C\_NT\_EXPORT\_NAME (input\_name\_buffer contains a string with the X509\_oneline representation of a name) like '/X=Y/Z=A...')

- •

  GSS\_C\_NO\_OID or GSS\_C\_NT\_USER\_NAME (input\_name\_buffer contains an X.500 name formatted like '/X=Y/Z=A...')

- •

  GLOBUS\_GSS\_C\_NT\_HOST\_IP (input\_name\_buffer contains a string 'FQDN/ip-address' which will match names with the FQDN or the IP address)

- •

  GLOBUS\_SSS\_C\_NT\_X509 (input buffer is an X509 struct from OpenSSL)

**Parameters**

*minor\_status* Minor status \
 *input\_name\_buffer* Input name buffer which is interpreted based on the *input\_name\_type* \
 *input\_name\_type* OID of the name \
 *output\_name\_P* New gss\_name\_t value containing the name

**Return values**

*GSS\_S\_COMPLETE* indicates that a valid name representation is output in output\_name and described by the type value in output\_name\_type. \
 *GSS\_S\_BAD\_NAMETYPE* indicates that the input\_name\_type is unsupported by the applicable underlying GSS-API mechanism(s), so the import operation could not be completed. \
 *GSS\_S\_BAD\_NAME* indicates that the provided input\_name\_string is ill-formed in terms of the input\_name\_type, so the import operation could not be completed. \
 *GSS\_S\_BAD\_MECH* indicates that the input presented for import was an exported name object and that its enclosed mechanism type was not recognized or was unsupported by the GSS-API implementation. \
 *GSS\_S\_FAILURE* indicates that the requested operation could not be performed for reasons unspecified at the GSS-API level.

### OM\_uint32 GSS\_CALLCONV gss\_indicate\_mechs (OM\_uint32 \* minor\_status, gss\_OID\_set \* mech\_set)

Indicate Mechs. Passes back the mech set of available mechs. We only have one for now.

**Parameters**

*minor\_status* \
 *mech\_set*

### OM\_uint32 GSS\_CALLCONV gss\_inquire\_context (OM\_uint32 \* minor\_status, const gss\_ctx\_id\_t context\_handle\_P, gss\_name\_t \* src\_name\_P, gss\_name\_t \* targ\_name\_P, OM\_uint32 \* lifetime\_rec, gss\_OID \* mech\_type, OM\_uint32 \* ctx\_flags, int \* locally\_initiated, int \* open)

Inquire Context.

**Parameters**

*minor\_status* \
 *context\_handle\_P* \
 *src\_name\_P* \
 *targ\_name\_P* \
 *lifetime\_rec* \
 *mech\_type* \
 *ctx\_flags* \
 *locally\_initiated* \
 *open*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_inquire\_cred (OM\_uint32 \* minor\_status, const gss\_cred\_id\_t cred\_handle\_P, gss\_name\_t \* name, OM\_uint32 \* lifetime, gss\_cred\_usage\_t \* cred\_usage, gss\_OID\_set \* mechanisms)

Inquire Cred. We will also allow the return of the proxy file name, if the minor\_status is set to a value of 57056 0xdee0 This is done since there is no way to pass back the delegated credential file name.

When 57056 is seen, this will cause a new copy of this credential to be written, and it is the user's responsibility to free the file when done. The name will be a pointer to a char \* of the file name which must be freeed. The minor\_status will be set to 57057 0xdee1 to indicate this.

DEE - this is a kludge, till the GSSAPI get a better way to return the name.

If the minor status is not changed from 57056 to 57057 assume it is not this gssapi, and a gss name was returned.

**Parameters**

*minor\_status* \
 *cred\_handle\_P* \
 *name* \
 *lifetime* \
 *cred\_usage* \
 *mechanisms*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_release\_buffer (OM\_uint32 \* minor\_status, gss\_buffer\_t buffer)

Release Buffer.

**Parameters**

*minor\_status* \
 *buffer*

**Return values**

*GSS\_S\_COMPLETE* Success

### OM\_uint32 GSS\_CALLCONV gss\_release\_cred (OM\_uint32 \* minor\_status, gss\_cred\_id\_t \* cred\_handle\_P)

Release Credential. Release the GSSAPI credential handle

**Parameters**

*minor\_status* The minor status result - this is a globus\_result\_t cast to a OM\_uint32. To access the globus error object use: globus\_error\_get((globus\_result\_t) \*minor\_status) \

*cred\_handle\_P* The gss cred handle to be released

**Return values**

*GSS\_S\_COMPLETE* Success

### OM\_uint32 GSS\_CALLCONV gss\_release\_name (OM\_uint32 \* minor\_status, gss\_name\_t \* name\_P)

GSS Release Name. Release the GSS Name

**Parameters**

*minor\_status* The minor status result - this is a globus\_result\_t cast to a (OM\_uint32 \*). \
 *name\_P* The GSSAPI name to be released

**Return values**

*GSS\_S\_COMPLETE* Success \
 *GSS\_S\_FAILURE* Failure

### OM\_uint32 GSS\_CALLCONV gss\_release\_oid\_set (OM\_uint32 \* minor\_status, gss\_OID\_set \* mech\_set)

Release OID Set. Release the OID set.

**Parameters**

*minor\_status* \
 *mech\_set*

**Return values**

*GSS\_S\_COMPLETE* Success

### OM\_uint32 GSS\_CALLCONV gss\_seal (OM\_uint32 \* minor\_status, gss\_ctx\_id\_t context\_handle, int conf\_req\_flag, int qop\_req, gss\_buffer\_t input\_message\_buffer, int \* conf\_state, gss\_buffer\_t output\_message\_buffer)

Seal. Obsolete variant of gss\_wrap for V1 compatibility

**Parameters**

*minor\_status* \
 *context\_handle* \
 *conf\_req\_flag* \
 *qop\_req* \
 *input\_message\_buffer* \
 *conf\_state* \
 *output\_message\_buffer*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_sign (OM\_uint32 \* minor\_status, gss\_ctx\_id\_t context\_handle, int qop\_req, gss\_buffer\_t message\_buffer, gss\_buffer\_t message\_token)

Sign. Deprecated. Does the same thing as gss\_get\_mic for V1 compatibility.

**Parameters**

*minor\_status* \
 *context\_handle* \
 *qop\_req* \
 *message\_buffer* \
 *message\_token*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_test\_oid\_set\_member (OM\_uint32 \* minor\_status, const gss\_OID member, const gss\_OID\_set set, int \* present)

Test OID Set Member. Interrogates an Object Identifier set to determine whether a specified Object Identifier is a member. This routine is intended to be used with OID sets returned by GSS\_Indicate\_mechs(), GSS\_Acquire\_cred(), and GSS\_Inquire\_cred().

**Parameters**

*minor\_status* \
 *member* \
 *set* \
 *present*

**Return values**

*GSS\_S\_COMPLETE* Success \
 *GSS\_S\_FAILURE* Operation failed

### OM\_uint32 GSS\_CALLCONV gss\_unseal (OM\_uint32 \* minor\_status, gss\_ctx\_id\_t context\_handle, gss\_buffer\_t input\_message\_buffer, gss\_buffer\_t output\_message\_buffer, int \* conf\_state, int \* qop\_state)

Unseal. Obsolete variant of gss\_wrap for V1 compatibility allow for non 32 bit integer in qop\_state.

Return the data from the wrapped buffer. There may also be errors, such as integrity errors. Since we can not communicate directly with our peer, we can not do everything SSL could, i.e. return a token for example.

**Parameters**

*minor\_status* \
 *context\_handle* \
 *input\_message\_buffer* \
 *output\_message\_buffer* \
 *conf\_state* \
 *qop\_state*

### OM\_uint32 GSS\_CALLCONV gss\_unwrap (OM\_uint32 \* minor\_status, const gss\_ctx\_id\_t context\_handle, const gss\_buffer\_t input\_message\_buffer, gss\_buffer\_t output\_message\_buffer, int \* conf\_state, gss\_qop\_t \* qop\_state)

Unwrap. GSSAPI routine to unwrap a buffer which may have been received and wraped by wrap.c

Return the data from the wrapped buffer. There may also be errors, such as integrity errors. Since we can not communicate directly with our peer, we can not do everything SSL could, i.e. return a token for example.

**Parameters**

*minor\_status* \
 *context\_handle* \
 *input\_message\_buffer* \
 *output\_message\_buffer* \
 *conf\_state* \
 *qop\_state*

### OM\_uint32 GSS\_CALLCONV gss\_verify (OM\_uint32 \* minor\_status, gss\_ctx\_id\_t context\_handle, gss\_buffer\_t message\_buffer, gss\_buffer\_t token\_buffer, int \* qop\_state)

Verify. Obsolete variant of gss\_verify for V1 compatibility Check a MIC of the date

**Parameters**

*minor\_status* \
 *context\_handle* \
 *message\_buffer* \
 *token\_buffer* \
 *qop\_state*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_verify\_mic (OM\_uint32 \* minor\_status, const gss\_ctx\_id\_t context\_handle, const gss\_buffer\_t message\_buffer, const gss\_buffer\_t token\_buffer, gss\_qop\_t \* qop\_state)

Verify MIC. Check a MIC of the data

**Parameters**

*minor\_status* \
 *context\_handle* \
 *message\_buffer* \
 *token\_buffer* \
 *qop\_state*

**Returns**

### OM\_uint32 GSS\_CALLCONV 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)

Wrap. Wrap a message for integrity and protection. We do this using the SSLv3 routines, by writing to the SSL bio, and pulling off the buffer from the back of the write BIO. But we can't do everything SSL might want, such as control messages, or segment the messages here, since we are forced to using the GSSAPI tokens, and can not communicate directly with our peer. So there maybe some failures which would work with true SSL.

**Parameters**

*minor\_status* \
 *context\_handle* \
 *conf\_req\_flag* \
 *qop\_req* \
 *input\_message\_buffer* \
 *conf\_state* \
 *output\_message\_buffer*

**Returns**

### OM\_uint32 GSS\_CALLCONV gss\_wrap\_size\_limit (OM\_uint32 \* minor\_status, const gss\_ctx\_id\_t context\_handle, int conf\_req\_flag, gss\_qop\_t qop\_req, OM\_uint32 req\_output\_size, OM\_uint32 \* max\_input\_size)

Wrap Size Limit. GSSAPI routine to take a buffer, calculate a MIC which is returned as a token. We will use the SSL protocol here.

**Parameters**

*minor\_status* \
 *context\_handle* \
 *conf\_req\_flag* \
 *qop\_req* \
 *req\_output\_size* \
 *max\_input\_size*

## Author

Generated automatically by Doxygen for globus\_gssapi\_gsi from the source code.
