class RubySMB::Dcerpc::Ndr::NdrFixedByteArray::NdrFixedByteArrayArgProcessor

Public Instance Methods

sanitize_parameters!(obj_class, obj_params) click to toggle source
# File lib/ruby_smb/dcerpc/ndr.rb, line 164
def sanitize_parameters!(obj_class, obj_params)
  obj_params.must_be_integer(:length, :pad_byte)
  obj_params.sanitize(:pad_byte) { |byte| sanitized_pad_byte(byte) }
end

Private Instance Methods

sanitized_pad_byte(byte) click to toggle source
# File lib/ruby_smb/dcerpc/ndr.rb, line 171
def sanitized_pad_byte(byte)
  if byte.is_a?(String)
    raise ArgumentError, ':pad_byte must not contain more than 1 byte' if byte.bytesize > 1

    byte = byte.ord
  end
  raise ArgumentError, ':pad_byte must be within the range of 0 - 255' unless ((byte >= 0) && (byte <= 255))

  byte
end