Beispiel #1
0
    def test_network_value(self):
        """ unit test for get_ip_network """

        ip_network = get_ip_network('93.184.216.34/29')
        assert len(list(ip_network)) == 8
        ip_tuple = ip_network.network.words
        assert (93, 184, 216, 32) == ip_tuple

        ip_network = get_ip_network('gsi.de')
        ip_tuple = ip_network.network.words
        ip_range = (ip_tuple[0], ip_tuple[1], ip_tuple[2])
        assert (140, 181, 3) == ip_range

        ip_network = get_ip_network('keyidentity.com/29')
        assert len(list(ip_network)) == 8
        ip_tuple = ip_network.network.words
        ip_range = (ip_tuple[0], ip_tuple[1], ip_tuple[2])
        assert (136, 243, 104) == ip_range

        ip_network = get_ip_network('example.xxx')
        assert ip_network is None

        ip_network = get_ip_network('  ')
        assert ip_network is None

        ip_network = get_ip_network(None)
        assert ip_network is None

        return
Beispiel #2
0
    def test_network_value(self):
        """ unit test for get_ip_network """

        ip_network = get_ip_network('93.184.216.34/29')
        assert len(list(ip_network)) == 8
        ip_tuple = ip_network.network.words
        assert (93, 184, 216, 32) == ip_tuple

        ip_network = get_ip_network('gsi.de')
        ip_tuple = ip_network.network.words
        ip_range = (ip_tuple[0], ip_tuple[1], ip_tuple[2])
        assert (140, 181, 3) == ip_range

        ip_network = get_ip_network('keyidentity.com/29')
        assert len(list(ip_network)) == 8
        ip_tuple = ip_network.network.words
        ip_range = (ip_tuple[0], ip_tuple[1], ip_tuple[2])
        assert (136, 243, 104) == ip_range

        ip_network = get_ip_network('example.xxx')
        assert ip_network is None

        ip_network = get_ip_network('  ')
        assert ip_network is None

        ip_network = get_ip_network(None)
        assert ip_network is None

        return
Beispiel #3
0
def _is_addr_in_network(addr, network):
    """
    helper method to check if a client is in the proxy network range

    :param addr: the client address
    :param network: the network range description
    :return: boolean - True if match is given
    """

    ip_network = get_ip_network(network)
    if ip_network is None:
        log.error('no valid ip_network: %r', network)
        return False

    ip_addr = get_ip_address(addr)
    if ip_addr is None:
        log.error('no valid ip_address: %r', addr)
        return False

    return ip_addr in ip_network
Beispiel #4
0
def _is_addr_in_network(addr, network):
    """
    helper method to check if a client is in the proxy network range

    :param addr: the client address
    :param network: the network range description
    :return: boolean - True if match is given
    """

    ip_network = get_ip_network(network)
    if ip_network is None:
        log.error('no valid ip_network: %r', network)
        return False

    ip_addr = get_ip_address(addr)
    if ip_addr is None:
        log.error('no valid ip_address: %r', addr)
        return False

    return ip_addr in ip_network
Beispiel #5
0
    def test_network_value(self):
        """unit test for get_ip_network"""

        ip_network = get_ip_network("93.184.216.34/29")
        assert len(list(ip_network)) == 8
        ip_tuple = ip_network.network.words
        assert (93, 184, 216, 32) == ip_tuple

        with patch("linotp.lib.type_utils.socket.gethostbyname") as mHostName:
            mHostName.return_value = "140.181.3.144"

            ip_network = get_ip_network("my.local.test.domain")
            ip_tuple = ip_network.network.words
            ip_range = (ip_tuple[0], ip_tuple[1], ip_tuple[2])
            assert (140, 181, 3) == ip_range

        with patch("linotp.lib.type_utils.socket.gethostbyname") as mHostName:
            mHostName.return_value = "136.243.104.66"

            ip_network = get_ip_network("my.other.test.domain/29")
            assert len(list(ip_network)) == 8
            ip_tuple = ip_network.network.words
            ip_range = (ip_tuple[0], ip_tuple[1], ip_tuple[2])
            assert (136, 243, 104) == ip_range

        with patch("linotp.lib.type_utils.socket.gethostbyname") as mHostName:
            mHostName.side_effect = socket.gaierror(
                "[Errno 8] nodename nor servname provided, or not known")

            ip_network = get_ip_network("does_not_exist.domain")
            assert ip_network is None

        ip_network = get_ip_network("  ")
        assert ip_network is None

        ip_network = get_ip_network(None)
        assert ip_network is None