org.apache.directory.shared.kerberos.components
Class Checksum

java.lang.Object
  extended by org.apache.directory.shared.asn1.AbstractAsn1Object
      extended by org.apache.directory.shared.kerberos.components.Checksum
All Implemented Interfaces:
org.apache.directory.shared.asn1.Asn1Object

public class Checksum
extends org.apache.directory.shared.asn1.AbstractAsn1Object

The Checksum structure is used to store a checksum associated to a type. The ASN.1 grammar is :

 Checksum        ::= SEQUENCE {
       cksumtype       [0] Int32,
       checksum        [1] OCTET STRING
 }
 

Author:
Apache Directory Project

Constructor Summary
Checksum()
          Creates a new instance of Checksum.
Checksum(ChecksumType cksumtype, byte[] checksum)
          Creates a new instance of Checksum.
 
Method Summary
 int computeLength()
          Compute the checksum length
 ByteBuffer encode(ByteBuffer buffer)
          Encode the Checksum message to a PDU.
 boolean equals(Object o)
           
 ChecksumType getChecksumType()
          Returns the ChecksumType.
 byte[] getChecksumValue()
          Returns the checksum value.
 int hashCode()
          
 void setChecksumType(ChecksumType cksumType)
          Set the ChecksumType.
 void setChecksumValue(byte[] checksum)
          Set the checksum Value.
 String toString()
           
 String toString(String tabs)
           
 
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
 

Constructor Detail

Checksum

public Checksum()
Creates a new instance of Checksum.


Checksum

public Checksum(ChecksumType cksumtype,
                byte[] checksum)
Creates a new instance of Checksum.

Parameters:
cksumtype - The checksum type used
checksum - The checksum value
Method Detail

hashCode

public int hashCode()

Overrides:
hashCode in class Object

equals

public boolean equals(Object o)
Overrides:
equals in class Object
See Also:
Object.equals(Object)

getChecksumValue

public byte[] getChecksumValue()
Returns the checksum value.

Returns:
The checksum value.

setChecksumValue

public void setChecksumValue(byte[] checksum)
Set the checksum Value.

Parameters:
checksum - The checksum value

getChecksumType

public ChecksumType getChecksumType()
Returns the ChecksumType.

Returns:
The ChecksumType.

setChecksumType

public void setChecksumType(ChecksumType cksumType)
Set the ChecksumType.

Parameters:
cksumType - The checksum algorithm used

computeLength

public int computeLength()
Compute the checksum length
 Checksum :
 
 0x30 L1 checksum sequence
  |
  +--> 0xA0 L2 cksumtype tag
  |     |
  |     +--> 0x02 L2-1 cksumtype (int)
  |
  +--> 0xA1 L3 checksum tag
        |
        +--> 0x04 L3-1 checksum (OCTET STRING)
        
  where L1 = L2 + lenght(0xA0) + length(L2) +
             L3 + lenght(0xA1) + length(L3) 
  and
  L2 = L2-1 + length(0x02) + length( L2-1) 
  L3 = L3-1 + length(0x04) + length( L3-1) 
  


encode

public ByteBuffer encode(ByteBuffer buffer)
                  throws org.apache.directory.shared.asn1.EncoderException
Encode the Checksum message to a PDU.
 Checksum :
 
 0x30 LL
   0xA0 LL 
     0x02 0x01 cksumtype
   0xA1 LL 
     0x04 LL Checksum
 

Specified by:
encode in interface org.apache.directory.shared.asn1.Asn1Object
Overrides:
encode in class org.apache.directory.shared.asn1.AbstractAsn1Object
Parameters:
buffer - The buffer where to put the PDU. It should have been allocated before, with the right size.
Returns:
The constructed PDU.
Throws:
org.apache.directory.shared.asn1.EncoderException

toString

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

toString

public String toString(String tabs)
See Also:
Object.toString()


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