Sha256: 791ec132e341b0c3fee31c3d3f317a4f0d792c12197618f1b1c82761482d374c

Contents?: true

Size: 1.51 KB

Versions: 10

Compression:

Stored size: 1.51 KB

Contents

module RubySMB
  module SMB2
    module Packet
      # An SMB2 Query Directory Request Packet as defined in
      # [2.2.33 SMB2 QUERY_DIRECTORY Request](https://msdn.microsoft.com/en-us/library/cc246551.aspx)
      class QueryDirectoryRequest < RubySMB::GenericPacket
        endian       :little
        smb2_header  :smb2_header
        uint16       :structure_size,          label: 'Structure Size', initial_value: 33
        uint8        :file_information_class,  label: 'File Information Class'

        struct :flags do
          bit3  :reserved2,       label: 'Reserved Space'
          bit1  :reopen,          label: 'Reopen Search'
          bit1  :reserved,        label: 'Reserved Space'
          bit1  :index_specified, label: 'Start at Specified Index'
          bit1  :return_single,   label: 'Return Single Entry'
          bit1  :restart_scans,   label: 'Restart Enumeration from Start'
        end

        uint32        :file_index,    label: 'File Index'
        smb2_fileid   :file_id,       label: 'File ID'
        uint16        :name_offset,   label: 'File Name Offset',      initial_value: -> { name.abs_offset }
        uint16        :name_length,   label: 'File Name Length',      initial_value: -> { name.do_num_bytes }
        uint32        :output_length, label: 'Output Buffer Length'
        string16      :name,          label: 'Name/Search Pattern'

        def initialize_instance
          super
          smb2_header.command = RubySMB::SMB2::Commands::QUERY_DIRECTORY
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
ruby_smb-1.0.3 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-1.0.2 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-1.0.1 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-1.0.0 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-0.0.24 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-0.0.23 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-0.0.22 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-0.0.21 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-0.0.20 lib/ruby_smb/smb2/packet/query_directory_request.rb
ruby_smb-0.0.19 lib/ruby_smb/smb2/packet/query_directory_request.rb