Class NTLMEngineImpl.NTLMMessage

    • Constructor Summary

      Constructors 
      Constructor Description
      NTLMMessage()
      Constructor to use when message contents are not yet known
      NTLMMessage​(byte[] message, int expectedType)
      Constructor to use when message bytes are known
      NTLMMessage​(java.lang.String messageBody, int expectedType)
      Constructor taking a string
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      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 void buildMessage()  
      byte[] getBytes()  
      protected int getMessageLength()
      Get the message length
      protected int getPreambleLength()
      Get the length of the signature and flags, so calculations can adjust offsets accordingly.
      java.lang.String getResponse()
      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 Detail

      • messageContents

        protected byte[] messageContents
        The current response
      • currentOutputPosition

        protected int currentOutputPosition
        The current output position
    • Constructor Detail

      • NTLMMessage

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

      • 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
      • 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, 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

        public java.lang.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.
      • getBytes

        public byte[] getBytes()
      • buildMessage

        protected void buildMessage()