Package org.globus.gsi.gssapi

# Class GlobusGSSManagerImpl

java.lang.Object
org.ietf.jgss.GSSManager
org.gridforum.jgss.ExtendedGSSManager
org.globus.gsi.gssapi.GlobusGSSManagerImpl

public class GlobusGSSManagerImpl extends ExtendedGSSManager
An implementation of `GlobusGSSManager`.

## Constructor Summary

Constructors
Constructor
Description
`GlobusGSSManagerImpl()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addProviderAtEnd(Provider p, Oid mech)`
Currently not implemented.
`void`
`addProviderAtFront(Provider p, Oid mech)`
Currently not implemented.
`static void`
`checkMechanism(Oid mech)`
Checks if the specified mechanism matches the mechanism supported by this implementation.
`GSSContext`
`createContext(byte[] interProcessToken)`
Currently not implemented.
`GSSContext`
`createContext(GSSCredential cred)`
`GSSContext`
`createContext(GSSName peer, Oid mech, GSSCredential cred, int lifetime)`
`GSSCredential`
`createCredential(byte[] buff, int option, int lifetime, Oid mech, int usage)`
Imports a credential.
`GSSCredential`
`createCredential(int usage)`
Acquires GSI GSS credentials.
`GSSCredential`
`createCredential(GSSName name, int lifetime, Oid[] mechs, int usage)`
Acquires GSI GSS credentials.
`GSSCredential`
`createCredential(GSSName name, int lifetime, Oid mech, int usage)`
Acquires GSI GSS credentials.
`GSSName`
`createName(byte[] name, Oid nameType)`
Currently not implemented.
`GSSName`
`createName(byte[] name, Oid nameType, Oid mech)`
Currently not implemented.
`GSSName`
`createName(String nameStr, Oid nameType)`
`GSSName`
`createName(String nameStr, Oid nameType, Oid mech)`
Currently not implemented.
`Oid[]`
`getMechs()`
`Oid[]`
`getMechsForName(Oid nameType)`
Currently not implemented.
`Oid[]`
`getNamesForMech(Oid mech)`
Currently not implemented.

### Methods inherited from class org.gridforum.jgss.ExtendedGSSManager

`getInstance`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### GlobusGSSManagerImpl

public GlobusGSSManagerImpl()

## Method Details

### createCredential

public GSSCredential createCredential(int usage) throws GSSException
Acquires GSI GSS credentials.

Specified by:
  `createCredential` in class `GSSManager`
Throws:
  `GSSException`
See Also:
  - `createCredential(GSSName, int, Oid, int)`

### createCredential

public GSSCredential createCredential(GSSName name, int lifetime, Oid mech, int usage) throws GSSException
Acquires GSI GSS credentials. First, it tries to find the credentials in the private credential set of the current JAAS Subject. If the Subject is not set or credentials are not found in the Subject, it tries to get a default user credential (usually an user proxy file)

Specified by:
  `createCredential` in class `GSSManager`
Parameters:
  `lifetime` - Only lifetime set to `GSSCredential.DEFAULT_LIFETIME` is allowed.
Throws:
  `GSSException`
See Also:
  - `X509Credential.getDefaultCredential()`

### createCredential

public GSSCredential createCredential(GSSName name, int lifetime, Oid[] mechs, int usage) throws GSSException
Acquires GSI GSS credentials.

Specified by:
  `createCredential` in class `GSSManager`
Throws:
  `GSSException`
See Also:
  - `createCredential(GSSName, int, Oid, int)`

### createCredential

public GSSCredential createCredential(byte[] buff, int option, int lifetime, Oid mech, int usage) throws GSSException
Imports a credential.

Specified by:
  `createCredential` in class `ExtendedGSSManager`
Parameters:
  `buff` - The token emitted from the `ExtendedGSSCredential.export` method.
  `option` - The import type. The import type must be the same as the option used to export the buffer.
  `lifetime` - Only lifetime set to `GSSCredential.DEFAULT_LIFETIME` is allowed.
  `mech` - The desired mechanism for the imported credential, may be null to indicate system default.
  `usage` - The intended usage for this credential object. The value of this parameter must be one of: GSSCredential.INITIATE_AND_ACCEPT, GSSCredential.ACCEPT_ONLY, and GSSCredential.INITIATE_ONLY.
Throws:
  `GSSException` - containing the following major error codes: `GSSException.BAD_MECH, GSSException.DEFECTIVE_TOKEN, GSSException.NO_CRED, GSSException.CREDENTIAL_EXPIRED, GSSException.FAILURE`

### createContext

public GSSContext createContext(GSSName peer, Oid mech, GSSCredential cred, int lifetime) throws GSSException

Specified by:
  `createContext` in class `GSSManager`
Throws:
  `GSSException`

### createContext

public GSSContext createContext(GSSCredential cred) throws GSSException

Specified by:
  `createContext` in class `GSSManager`
Throws:
  `GSSException`

### getMechs

public Oid[] getMechs()

Specified by:
  `getMechs` in class `GSSManager`

### createName

public GSSName createName(String nameStr, Oid nameType) throws GSSException

Specified by:
  `createName` in class `GSSManager`
Throws:
  `GSSException`

### checkMechanism

public static void checkMechanism(Oid mech) throws GSSException
Checks if the specified mechanism matches the mechanism supported by this implementation.

Parameters:
  `mech` - mechanism to check
Throws:
  `GSSException` - if mechanism not supported.

### createContext

public GSSContext createContext(byte[] interProcessToken) throws GSSException
Currently not implemented.

Specified by:
  `createContext` in class `GSSManager`
Throws:
  `GSSException`

### getNamesForMech

public Oid[] getNamesForMech(Oid mech) throws GSSException
Currently not implemented.

Specified by:
  `getNamesForMech` in class `GSSManager`
Throws:
  `GSSException`

### getMechsForName

public Oid[] getMechsForName(Oid nameType)
Currently not implemented.

Specified by:
  `getMechsForName` in class `GSSManager`

### createName

public GSSName createName(String nameStr, Oid nameType, Oid mech) throws GSSException
Currently not implemented.

Specified by:
  `createName` in class `GSSManager`
Throws:
  `GSSException`

### createName

public GSSName createName(byte[] name, Oid nameType) throws GSSException
Currently not implemented.

Specified by:
  `createName` in class `GSSManager`
Throws:
  `GSSException`

### createName

public GSSName createName(byte[] name, Oid nameType, Oid mech) throws GSSException
Currently not implemented.

Specified by:
  `createName` in class `GSSManager`
Throws:
  `GSSException`

### addProviderAtFront

public void addProviderAtFront(Provider p, Oid mech) throws GSSException
Currently not implemented.

Specified by:
  `addProviderAtFront` in class `GSSManager`
Throws:
  `GSSException`

### addProviderAtEnd

public void addProviderAtEnd(Provider p, Oid mech) throws GSSException
Currently not implemented.

Specified by:
  `addProviderAtEnd` in class `GSSManager`
Throws:
  `GSSException`