Class NTLMEngine.NTLMMessage

java.lang.Object
org.tmatesoft.svn.core.internal.io.dav.http.NTLMEngine.NTLMMessage
Direct Known Subclasses:
NTLMEngine.Type1Message, NTLMEngine.Type2Message, NTLMEngine.Type3Message
Enclosing class:
NTLMEngine

static class NTLMEngine.NTLMMessage extends Object
NTLM message generation, base class
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private int
    The current output position
    private byte[]
    The current response
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructor to use when message contents are not yet known
    NTLMMessage(String messageBody, int expectedType)
    Constructor to use when message contents are known
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    addByte(byte b)
    Adds the given byte to the response.
    protected void
    addBytes(byte[] bytes)
    Adds the given bytes to the response.
    protected void
    addULong(int value)
    Adds a ULong to the response
    protected void
    addUShort(int value)
    Adds a USHORT to the response
    protected int
    Get the message length
    protected int
    Get the length of the signature and flags, so calculations can adjust offsets accordingly.
    (package private) String
    Returns the response that has been generated after shrinking the array if required and base64 encodes the response.
    protected void
    prepareResponse(int maxlength, int messageType)
    Prepares the object to create a response of the given length.
    protected byte
    readByte(int position)
    Read a byte from a position within the message buffer
    protected void
    readBytes(byte[] buffer, int position)
    Read a bunch of bytes from a position in the message buffer
    protected byte[]
    readSecurityBuffer(int position)
    Read a security buffer from a position within the message buffer
    protected int
    readULong(int position)
    Read a ulong from a position within the message buffer
    protected int
    readUShort(int position)
    Read a ushort from a position within the message buffer

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • messageContents

      private byte[] messageContents
      The current response
    • currentOutputPosition

      private int currentOutputPosition
      The current output position
  • Constructor Details

    • NTLMMessage

      NTLMMessage()
      Constructor to use when message contents are not yet known
    • NTLMMessage

      NTLMMessage(String messageBody, int expectedType) throws NTLMEngineException
      Constructor to use when message contents are known
      Throws:
      NTLMEngineException
  • Method Details

    • getPreambleLength

      protected int getPreambleLength()
      Get the length of the signature and flags, so calculations can adjust offsets accordingly.
    • getMessageLength

      protected int getMessageLength()
      Get the message length
    • readByte

      protected byte readByte(int position) throws NTLMEngineException
      Read a byte from a position within the message buffer
      Throws:
      NTLMEngineException
    • readBytes

      protected void readBytes(byte[] buffer, int position) throws NTLMEngineException
      Read a bunch of bytes from a position in the message buffer
      Throws:
      NTLMEngineException
    • readUShort

      protected int readUShort(int position) throws NTLMEngineException
      Read a ushort from a position within the message buffer
      Throws:
      NTLMEngineException
    • readULong

      protected int readULong(int position) throws NTLMEngineException
      Read a ulong from a position within the message buffer
      Throws:
      NTLMEngineException
    • readSecurityBuffer

      protected byte[] readSecurityBuffer(int position) throws NTLMEngineException
      Read a security buffer from a position within the message buffer
      Throws:
      NTLMEngineException
    • prepareResponse

      protected void prepareResponse(int maxlength, int messageType)
      Prepares the object to create a response of the given length.
      Parameters:
      maxlength - the maximum length of the response to prepare, not including the type and the signature (which this method adds).
    • addByte

      protected void addByte(byte b)
      Adds the given byte to the response.
      Parameters:
      b - the byte to add.
    • addBytes

      protected void addBytes(byte[] bytes)
      Adds the given bytes to the response.
      Parameters:
      bytes - the bytes to add.
    • addUShort

      protected void addUShort(int value)
      Adds a USHORT to the response
    • addULong

      protected void addULong(int value)
      Adds a ULong to the response
    • getResponse

      String getResponse()
      Returns the response that has been generated after shrinking the array if required and base64 encodes the response.
      Returns:
      The response as above.