Module: RubySMB::Dcerpc::Ndr::ArrayClassPlugin
- Included in:
- Drsr::DrsConfStringz, Drsr::DrsConfStringz16, NdrConfArray, NdrConfVarArray, NdrVarArray, RpcUnicodeStringConfVarArray
- Defined in:
- lib/ruby_smb/dcerpc/ndr.rb
Overview
Arrays
Defined Under Namespace
Modules: ExtendArrayPlugin, ExtendConfPlugin, ExtendVarPlugin
Class Method Summary collapse
Class Method Details
.extended(target) ⇒ Object
179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 |
# File 'lib/ruby_smb/dcerpc/ndr.rb', line 179 def self.extended(target) target.default_parameters( :read_until => lambda { index == (@obj.read_until_index - 1) }, # Set :byte_align to 4 bytes by default, which is the size of the `size # information` field (:max_count or :offset/:actual_count). If the # elements set with :type are greater, this parameter will be # updated later in NdrArrayArgProcessor::sanitize_parameters! :byte_align => 4 ) target.arg_processor :ndr_array class_name = target.to_s.split('::').last if class_name.include?('NdrVar') || class_name.include?('NdrConfVar') target.include ExtendVarPlugin end if class_name.include?('NdrConf') target.include ExtendConfPlugin target.extend ConfClassPlugin end target.include ExtendArrayPlugin end |