def test_private_ip():

    responses.add(responses.GET,
                  "http://api.domain.com/probe/port_v2",
                  status=200,
                  body='{"message": "OK", "device_ip": "0"}',
                  content_type="application/json")

    prober = PortProber('http://api.domain.com', '')
    result, message = prober.probe_port(80, 'http', '0')

    assert len(responses.calls) == 0
    assert result is False
def test_public_ip():

    responses.add(responses.GET,
                  "http://api.domain.com/probe/port_v2",
                  status=200,
                  body='{"message": "OK", "device_ip": "0"}',
                  content_type="application/json")

    prober = PortProber('http://api.domain.com', '')
    result, message = prober.probe_port(80, 'http', '8.8.8.8')

    assert result is True
    assert 'ip=' in responses.calls[0].request.url
Example #3
0
 def _get_port_prober(self):
     if self.user_platform_config.is_redirect_enabled():
         return PortProber(
             self.user_platform_config.get_redirect_api_url(),
             self.user_platform_config.get_domain_update_token())
     else:
         return NoneProber()
Example #4
0
 def get_drill(self, external_access):
     if not external_access or not self.user_platform_config.get_port_drilling_enabled(
     ):
         return NonePortDrill()
     drill = None
     mapper = provide_mapper(self.nat_pmp_port_mapper,
                             self.upnp_port_mapper)
     if mapper:
         prober = PortProber(
             self.user_platform_config.get_redirect_api_url(),
             self.user_platform_config.get_domain_update_token())
         drill = PortDrill(self.port_config, mapper, prober)
     return drill
Example #5
0
    def get_drill(self, upnp_enabled, external_access, manual_public_ip, manual_public_port):
        if not external_access:
            return NonePortDrill()
        drill = None
        if upnp_enabled:
            mapper = self.port_mapper_factory.provide_mapper()
        else:
            mapper = ManualPortMapper(manual_public_ip, manual_public_port)

        if mapper:
            prober = PortProber(
                self.user_platform_config.get_redirect_api_url(),
                self.user_platform_config.get_domain_update_token())
            drill = PortDrill(self.port_config, mapper, prober)
        return drill