Sha256: 523d8525cd5764db5844c802f2fc052c05875efd85881331aa883916e5bc2538

Contents?: true

Size: 1.03 KB

Versions: 28

Compression:

Stored size: 1.03 KB

Contents

module RubySMB
  module SMB2
    # An SMB2_CREATE_CONTEXT struct as defined in
    # [2.2.13.2 SMB2_CREATE_CONTEXT Request Values](https://msdn.microsoft.com/en-us/library/cc246504.aspx)
    class CreateContext < BinData::Record
      endian  :little

      uint32  :next_offset, label: 'Offset to next Context'
      uint16  :name_offset, label: 'Offset to Name/Tag',      initial_value:  -> { name.rel_offset }
      uint16  :name_length, label: 'Length of Name/Tag',      initial_value:  -> { name.length }
      uint16  :reserved,    label: 'Reserved Space'
      uint16  :data_offset, label: 'Offset to data',          initial_value:  -> { calc_data_offset }
      uint32  :data_length, label: 'Length of data',          initial_value:  -> { data.length }
      string  :name,        label: 'Name'
      uint32  :reserved2,   label: 'Reserved Space'
      string  :data,        label: 'Data'

      private

      def calc_data_offset
        if data.empty?
          0
        else
          data.rel_offset
        end
      end
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
ruby_smb-3.0.0 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.13 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.12 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.11 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.10 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.9 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.8 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.7 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.6 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.5 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.4 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.3 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.2 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.1 lib/ruby_smb/smb2/create_context.rb
ruby_smb-2.0.0 lib/ruby_smb/smb2/create_context.rb
ruby_smb-1.1.0 lib/ruby_smb/smb2/create_context.rb
ruby_smb-1.0.5 lib/ruby_smb/smb2/create_context.rb
ruby_smb-1.0.4 lib/ruby_smb/smb2/create_context.rb
ruby_smb-1.0.3 lib/ruby_smb/smb2/create_context.rb
ruby_smb-1.0.2 lib/ruby_smb/smb2/create_context.rb