Example #1
0
 def get_deadline_option(self, parameters):
     ip_version = _parameters.get_ping_ip_version(parameters)
     if ip_version == constants.IP_VERSION_6:
         return ['-w', parameters.deadline]
     else:
         return ['-w', parameters.deadline,
                 '-W', parameters.deadline]
Example #2
0
    def get_ping_options(self, parameters):
        options = []

        ip_version = _parameters.get_ping_ip_version(parameters)
        if ip_version == constants.IP_VERSION_4:
            options += self.get_ipv4_option()
        elif ip_version == constants.IP_VERSION_6:
            options += self.get_ipv6_option()
        elif ip_version is not None:
            message = 'Invalid IP version: {!r}'.format(ip_version)
            raise ValueError(message)

        interface = parameters.source
        if interface:
            options += self.get_interface_option(interface)

        deadline = parameters.deadline
        if deadline > 0:
            options += self.get_deadline_option(parameters)

        count = parameters.count
        if count > 0:
            options += self.get_count_option(count)

        size = _parameters.get_ping_payload_size(parameters)
        if size:
            options += self.get_size_option(size)

        interval = parameters.interval
        if interval > 1:
            options += self.get_interval_option(interval)

        fragment = parameters.fragmentation
        if fragment is not None:
            options += self.get_fragment_option(fragment=fragment)

        return options
Example #3
0
 def get_ping_executable(self, parameters):
     ip_version = _parameters.get_ping_ip_version(parameters)
     if ip_version == constants.IP_VERSION_6:
         return 'ping6'
     else:
         return 'ping'