class Rex::Proto::Rmi::Model::DgcAck

This class provides a representation of an RMI DbgACK stream. It is an acknowledgement directed to a server's distributed garbage collector that indicates that remote objects in a return value from a server have been received by the client.

Attributes

stream_id[RW]

@!attribute stream_id

@return [Fixnum] the input stream id
unique_identifier[RW]

@!attribute unique_identifier

@return [String] the unique identifier

Private Instance Methods

decode_stream_id(io) click to toggle source

Reads the stream id from the IO

@param io [IO] the IO to read from @return [String] @raise [Rex::Proto::Rmi::DecodeError] if fails to decode stream id

# File lib/rex/proto/rmi/model/dgc_ack.rb, line 25
def decode_stream_id(io)
  stream_id = read_byte(io)
  unless stream_id == DGC_ACK_MESSAGE
    raise Rex::Proto::Rmi::DecodeError, 'Failed to decode DgcAck stream id'
  end

  stream_id
end
decode_unique_identifier(io) click to toggle source

Reads the unique identifier from the IO

@param io [IO] the IO to read from @return [String]

# File lib/rex/proto/rmi/model/dgc_ack.rb, line 38
def decode_unique_identifier(io)
  unique_identifier = read_string(io, 14)

  unique_identifier
end
encode_stream_id() click to toggle source

Encodes the stream_id field

@return [String]

# File lib/rex/proto/rmi/model/dgc_ack.rb, line 47
def encode_stream_id
  [stream_id].pack('C')
end
encode_unique_identifier() click to toggle source

Encodes the unique_identifier field

@return [String]

# File lib/rex/proto/rmi/model/dgc_ack.rb, line 54
def encode_unique_identifier
  unique_identifier
end