Class: RubySMB::SMB1::Packet::WriteAndxRequest

Inherits:
GenericPacket
  • Object
show all
Defined in:
lib/ruby_smb/smb1/packet/write_andx_request.rb

Overview

A SMB1 SMB_COM_WRITE_ANDX Request Packet as defined in 2.2.4.43.1 Request 2.2.4.3.1 Client Request Extensions

Defined Under Namespace

Classes: DataBlock, ParameterBlock

Instance Method Summary collapse

Methods inherited from GenericPacket

describe, #display, fields_hashed, format_field, #packet_smb_version, read, #status_code, walk_fields

Instance Method Details

#initialize_instanceObject



52
53
54
55
# File 'lib/ruby_smb/smb1/packet/write_andx_request.rb', line 52

def initialize_instance
  super
  smb_header.command = RubySMB::SMB1::Commands::SMB_COM_WRITE_ANDX
end

#set_64_bit_offset(is_64_bit) ⇒ Object

Specifies whether the offset is a 32-bit (default) or 64-bit value. When is_64_bit is true, a 64-bit offset will be used and the OffsetHigh field will be added to the structure.

Parameters:

  • is_64_bit (TrueClass, FalseClass)

    use a 64-bit offset if set to true, 32-bit otherwise

Raises:

  • (ArgumentError.new)


61
62
63
64
# File 'lib/ruby_smb/smb1/packet/write_andx_request.rb', line 61

def set_64_bit_offset(is_64_bit)
  raise ArgumentError.new, 'The value can only be true or false' unless [true, false].include?(is_64_bit)
  parameter_block.word_count = is_64_bit ? 0x0E : 0x0C
end