Class SMB2PacketHeader

java.lang.Object
com.hierynomus.mssmb2.SMB2PacketHeader
All Implemented Interfaces:
SMBHeader

public class SMB2PacketHeader extends Object implements SMBHeader
[MS-SMB2] 2.2.1 SMB2 Packet Header
  • Field Details

    • EMPTY_SIGNATURE

      public static final byte[] EMPTY_SIGNATURE
    • STRUCTURE_SIZE

      public static final int STRUCTURE_SIZE
      See Also:
    • SIGNATURE_OFFSET

      public static final int SIGNATURE_OFFSET
      See Also:
    • SIGNATURE_SIZE

      public static final int SIGNATURE_SIZE
      See Also:
    • PROTOCOL_ID

      private static final byte[] PROTOCOL_ID
    • dialect

      private SMB2Dialect dialect
    • creditCharge

      private int creditCharge
    • creditRequest

      private int creditRequest
    • creditResponse

      private int creditResponse
    • message

      private SMB2MessageCommandCode message
    • messageId

      private long messageId
    • asyncId

      private long asyncId
    • sessionId

      private long sessionId
    • treeId

      private long treeId
    • statusCode

      private long statusCode
    • flags

      private long flags
    • nextCommandOffset

      private int nextCommandOffset
    • signature

      private byte[] signature
    • headerStartPosition

      private int headerStartPosition
    • messageEndPosition

      private int messageEndPosition
  • Constructor Details

    • SMB2PacketHeader

      public SMB2PacketHeader()
  • Method Details

    • writeTo

      public void writeTo(SMBBuffer buffer)
      Specified by:
      writeTo in interface SMBHeader
    • writeChannelSequenceReserved

      private void writeChannelSequenceReserved(SMBBuffer buffer)
    • writeCreditRequest

      private void writeCreditRequest(SMBBuffer buffer)
      [MS-SMB2] 3.2.4.1.2 Requesting Credits from the Server

      We should at least request the number of credits this request consumes, but we can request more (by calling setCreditRequest(int)).

    • writeCreditCharge

      private void writeCreditCharge(SMBBuffer buffer)
    • setMessageId

      public void setMessageId(long messageId)
    • setMessageType

      public void setMessageType(SMB2MessageCommandCode messageType)
    • getMessage

      public SMB2MessageCommandCode getMessage()
    • getTreeId

      public long getTreeId()
    • setTreeId

      public void setTreeId(long treeId)
    • getSessionId

      public long getSessionId()
    • setSessionId

      public void setSessionId(long sessionId)
    • setDialect

      public void setDialect(SMB2Dialect dialect)
    • isFlagSet

      public boolean isFlagSet(SMB2MessageFlag flag)
    • setFlag

      public void setFlag(SMB2MessageFlag flag)
    • getMessageId

      public long getMessageId()
    • setCreditRequest

      public void setCreditRequest(int creditRequest)
    • getCreditRequest

      public int getCreditRequest()
    • getCreditResponse

      public int getCreditResponse()
    • setCreditResponse

      public void setCreditResponse(int creditResponse)
    • setAsyncId

      public void setAsyncId(long asyncId)
    • getAsyncId

      public long getAsyncId()
    • readFrom

      public void readFrom(Buffer<?> buffer) throws Buffer.BufferException
      Specified by:
      readFrom in interface SMBHeader
      Throws:
      Buffer.BufferException
    • setStatusCode

      public void setStatusCode(long statusCode)
    • getStatusCode

      public long getStatusCode()
    • getFlags

      public long getFlags()
    • setFlags

      public void setFlags(long flags)
    • getNextCommandOffset

      public int getNextCommandOffset()
    • setNextCommandOffset

      public void setNextCommandOffset(int nextCommandOffset)
    • setCreditCharge

      public void setCreditCharge(int creditCharge)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getCreditCharge

      public int getCreditCharge()
    • getSignature

      public byte[] getSignature()
    • getHeaderStartPosition

      public int getHeaderStartPosition()
      Specified by:
      getHeaderStartPosition in interface SMBHeader
    • getMessageEndPosition

      public int getMessageEndPosition()
      Specified by:
      getMessageEndPosition in interface SMBHeader
    • setMessageEndPosition

      public void setMessageEndPosition(int messageEndPosition)
    • isPacketHeader

      public static boolean isPacketHeader(byte[] header)