org.apache.directory.shared.kerberos.messages
Class Ticket

java.lang.Object
  extended by org.apache.directory.shared.asn1.AbstractAsn1Object
      extended by org.apache.directory.shared.kerberos.messages.KerberosMessage
          extended by org.apache.directory.shared.kerberos.messages.Ticket
All Implemented Interfaces:
org.apache.directory.shared.asn1.Asn1Object

public class Ticket
extends KerberosMessage

Ticket message component as handed out by the ticket granting service. It will store the object described by the ASN.1 grammar :

 Ticket          ::= [APPLICATION 1] SEQUENCE {
         tkt-vno         [0] INTEGER (5),
         realm           [1] Realm,
         sname           [2] ,
         enc-part        [3]  -- EncTicketPart
 }
 

Author:
Apache Directory Project

Field Summary
static int TICKET_VNO
          Constant for the Ticket version number (5)
 
Constructor Summary
Ticket()
          Creates a new instance of Ticket.
Ticket(int tktvno, PrincipalName sName, EncryptedData encPart)
          Creates a new instance of Ticket.
Ticket(PrincipalName sName, EncryptedData encPart)
          Creates a new instance of Ticket.
 
Method Summary
 int computeLength()
          Compute the Ticket length
 ByteBuffer encode(ByteBuffer buffer)
          Encode the Ticket message to a PDU.
 boolean equals(Object obj)
          
 EncryptedData getEncPart()
          Returns the EncryptedData.
 EncTicketPart getEncTicketPart()
           
 String getRealm()
          Returns the server realm.
 PrincipalName getSName()
          Returns the server PrincipalName.
 int getTktVno()
          Gets the Ticket Version number
 int hashCode()
          
 void setEncPart(EncryptedData encPart)
          Set the encrypted ticket part
 void setEncTicketPart(EncTicketPart encTicketPart)
           
 void setRealm(String realm)
          Set the server realm
 void setSName(PrincipalName sName)
          Set the server principalName
 void setTktVno(int tktVno)
          Sets the Ticket Version number
 String toString()
           
 
Methods inherited from class org.apache.directory.shared.kerberos.messages.KerberosMessage
getMessageType, getProtocolVersionNumber, setMessageType, setProtocolVersionNumber
 
Methods inherited from class org.apache.directory.shared.asn1.AbstractAsn1Object
addLength, getCurrentLength, getExpectedLength, getParent, getTlvId, setCurrentLength, setExpectedLength, setParent
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TICKET_VNO

public static final int TICKET_VNO
Constant for the Ticket version number (5)

See Also:
Constant Field Values
Constructor Detail

Ticket

public Ticket(PrincipalName sName,
              EncryptedData encPart)
       throws InvalidTicketException
Creates a new instance of Ticket.

Parameters:
serverPrincipal - The server principal
encPart - The encoded part
Throws:
InvalidTicketException

Ticket

public Ticket()
Creates a new instance of Ticket.


Ticket

public Ticket(int tktvno,
              PrincipalName sName,
              EncryptedData encPart)
       throws InvalidTicketException
Creates a new instance of Ticket.

Parameters:
tktvno - The Kerberos version number
serverPrincipal - The server principal
encPart - The encoded part
Throws:
InvalidTicketException
Method Detail

getEncPart

public EncryptedData getEncPart()
Returns the EncryptedData.

Returns:
The EncryptedData.

setEncPart

public void setEncPart(EncryptedData encPart)
Set the encrypted ticket part

Parameters:
encPart - the encrypted ticket part

getRealm

public String getRealm()
Returns the server realm.

Returns:
The server realm.

setRealm

public void setRealm(String realm)
Set the server realm

Parameters:
realm - the server realm

getSName

public PrincipalName getSName()
Returns the server PrincipalName.

Returns:
The server PrincipalName.

setSName

public void setSName(PrincipalName sName)
Set the server principalName

Parameters:
sName - the server principalName

getTktVno

public int getTktVno()
Gets the Ticket Version number

Returns:
The ticket version number

setTktVno

public void setTktVno(int tktVno)
Sets the Ticket Version number

Parameters:
tktVno - The new version number

getEncTicketPart

public EncTicketPart getEncTicketPart()
Returns:
the encTicketPart

setEncTicketPart

public void setEncTicketPart(EncTicketPart encTicketPart)
Parameters:
encTicketPart - the encTicketPart to set

computeLength

public int computeLength()
Compute the Ticket length
 Ticket :
 
 0x61 L1 Ticket [APPLICATION 1]
  |
  +--> 0x30 L2 Ticket SEQUENCE
        |
        +--> 0xA0 L3 tkt-vno tag
        |     |
        |     +--> 0x02 L3-1 tkt-vno (int, 5)
        |
        +--> 0xA1 L4 realm tag
        |     |
        |     +--> 0x1B L4-1 realm (KerberosString)
        |
        +--> 0xA2 L5 sname (PrincipalName)
        |
        +--> 0xA3 L6 enc-part (EncryptedData)
 


encode

public ByteBuffer encode(ByteBuffer buffer)
                  throws org.apache.directory.shared.asn1.EncoderException
Encode the Ticket message to a PDU.
 Ticket :
 
 0x61 LL
   0x30 LL
     0xA0 LL tktvno 
     0xA1 LL realm
     0xA2 LL
       sname (PrincipalName)
     0xA3 LL
       enc-part (EncryptedData)
 

Specified by:
encode in interface org.apache.directory.shared.asn1.Asn1Object
Overrides:
encode in class org.apache.directory.shared.asn1.AbstractAsn1Object
Returns:
The constructed PDU.
Throws:
org.apache.directory.shared.asn1.EncoderException

hashCode

public int hashCode()

Overrides:
hashCode in class Object

equals

public boolean equals(Object obj)

Overrides:
equals in class Object

toString

public String toString()
Overrides:
toString in class Object
See Also:
Object.toString()


Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.