Class SMB2CompoundedPacketHandler
- java.lang.Object
-
- com.hierynomus.smbj.connection.packet.AbstractIncomingPacketHandler
-
- com.hierynomus.smbj.connection.packet.SMB2PacketHandler
-
- com.hierynomus.smbj.connection.packet.SMB2CompoundedPacketHandler
-
- All Implemented Interfaces:
IncomingPacketHandler
public class SMB2CompoundedPacketHandler extends SMB2PacketHandler
[MS-SMB2] 3.2.5.1.9 Handling Compounded ResponsesA client detects that a server sent a compounded response (multiple responses chained together into a single network send) by checking if the NextCommand in the SMB2 header of the response is not equal to 0. The client MUST handle compounded responses by separating them into individual responses, regardless of any compounding used when sending the requests.
For a series of responses compounded together, each response MUST be processed in order as an individual message with a size, in bytes, as determined by the NextCommand field in the SMB2 header.
The final response in the compounded response chain will have NextCommand equal to 0, and it MUST be processed as an individual message of a size equal to the number of bytes remaining in this receive.
-
-
Field Summary
-
Fields inherited from class com.hierynomus.smbj.connection.packet.AbstractIncomingPacketHandler
next
-
-
Constructor Summary
Constructors Constructor Description SMB2CompoundedPacketHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canHandle(SMBPacketData<?> packetData)
protected void
doSMB2Handle(SMB2PacketData packetData)
-
Methods inherited from class com.hierynomus.smbj.connection.packet.SMB2PacketHandler
doHandle
-
Methods inherited from class com.hierynomus.smbj.connection.packet.AbstractIncomingPacketHandler
handle, setNext
-
-
-
-
Method Detail
-
canHandle
public boolean canHandle(SMBPacketData<?> packetData)
- Overrides:
canHandle
in classSMB2PacketHandler
-
doSMB2Handle
protected void doSMB2Handle(SMB2PacketData packetData) throws TransportException
- Specified by:
doSMB2Handle
in classSMB2PacketHandler
- Throws:
TransportException
-
-