Module: Arachni::Element::LinkTemplate::Capabilities::Inputtable

Includes:
Capabilities::Inputtable
Defined in:
lib/arachni/element/link_template/capabilities/inputtable.rb

Overview

Extends Capabilities::Inputtable with Arachni::Element::LinkTemplate-specific functionality.

Author:

  • Tasos “Zapotek” Laskos <tasos.laskos@arachni-scanner.com>

Constant Summary collapse

INVALID_INPUT_DATA =
[
    # Protocol URLs require a // which we can't preserve.
    '://'
]

Constants included from Capabilities::Inputtable

Capabilities::Inputtable::INPUTTABLE_CACHE

Instance Attribute Summary

Attributes included from Capabilities::Inputtable

#default_inputs, #inputs, #raw_inputs

Instance Method Summary collapse

Methods included from Capabilities::Inputtable

#[], #[]=, #changes, #dup, #has_inputs?, #initialize, #inputtable_id, inputtable_id, #raw_input?, #reset, #to_h, #try_input, #update, #updated?, #valid_input_name_data?, #valid_input_value?, #valid_input_value_data?

Instance Method Details

#valid_input_data?(data) ⇒ Bool

Returns `true` if the `data` don't contain strings specified in #INVALID_INPUT_DATA, `false` otherwise.

Parameters:

  • data (String)

    Input data.

Returns:

  • (Bool)

    `true` if the `data` don't contain strings specified in #INVALID_INPUT_DATA, `false` otherwise.

See Also:



44
45
46
# File 'lib/arachni/element/link_template/capabilities/inputtable.rb', line 44

def valid_input_data?( data )
    !INVALID_INPUT_DATA.find { |c| data.include? c }
end

#valid_input_name?(name) ⇒ Bool

Returns `true` if the `name` can be found as a named capture in #template, `false` otherwise.

Parameters:

  • name (String)

    Input name.

Returns:

  • (Bool)

    `true` if the `name` can be found as a named capture in #template, `false` otherwise.



31
32
33
34
# File 'lib/arachni/element/link_template/capabilities/inputtable.rb', line 31

def valid_input_name?( name )
    return if !@template
    @template.names.include? name
end