示例#1
0
    def __create_one_zone_with_subnets_do_not_fit_into_one_netlink_packet(
            self):
        zone_name = 'zone'
        zone_subnet_count_that_not_fit_in_netlink_packet = self._get_netlink_packet_size(
        )
        zone_subnet_family = socket.AF_INET
        zone_subnet_format = '192.168.%d.%d'

        zone_messages = []

        add_zone_message = messages.KZorpAddZoneMessage(
            zone_name,
            subnet_num=zone_subnet_count_that_not_fit_in_netlink_packet)
        zone_messages.append(add_zone_message)

        for subnet_num in range(
                zone_subnet_count_that_not_fit_in_netlink_packet):
            add_zone_subnet_message = messages.KZorpAddZoneSubnetMessage(
                zone_name,
                family=zone_subnet_family,
                address=socket.inet_pton(
                    zone_subnet_family, zone_subnet_format % (
                        subnet_num % (2**16) / 256,
                        subnet_num % (2**8),
                    )),
                mask=socket.inet_pton(
                    zone_subnet_family,
                    testutil.size_to_mask(zone_subnet_family, 32)))
            zone_messages.append(add_zone_subnet_message)

        return zone_messages
示例#2
0
    def newSetUp(self):
        self.start_transaction()

        for zone in self._zones:
            family = zone['family']
            add_zone_message = kzorp_netlink.KZorpAddZoneMessage(zone['name'],
                                                   family = family,
                                                   uname = zone['uname'],
                                                   pname = zone['pname'],
                                                   address = socket.inet_pton(family, zone['address']),
                                                   mask = socket.inet_pton(family, testutil.size_to_mask(family, zone['mask'])))
            self.send_message(add_zone_message)

        self.end_transaction()
        self._index = -1
        self._add_zone_message = None
        self._add_zone_messages = []
示例#3
0
    def __create_one_zone_with_subnets_do_not_fit_into_one_netlink_packet(self):
        zone_name = 'zone'
        zone_subnet_count_that_not_fit_in_netlink_packet = self._get_netlink_packet_size()
        zone_subnet_family = socket.AF_INET
        zone_subnet_format = '192.168.%d.%d'

        zone_messages = []

        add_zone_message = messages.KZorpAddZoneMessage(zone_name, subnet_num = zone_subnet_count_that_not_fit_in_netlink_packet)
        zone_messages.append(add_zone_message)

        for subnet_num in range(zone_subnet_count_that_not_fit_in_netlink_packet):
            add_zone_subnet_message = messages.KZorpAddZoneSubnetMessage(
                zone_name,
                family = zone_subnet_family,
                address = socket.inet_pton(zone_subnet_family, zone_subnet_format % (subnet_num % (2 ** 16) / 256, subnet_num % (2 ** 8), )),
                mask = socket.inet_pton(zone_subnet_family, testutil.size_to_mask(zone_subnet_family, 32))
            )
            zone_messages.append(add_zone_subnet_message)

        return zone_messages
示例#4
0
    def _check_zone_params(self, add_zone_message, zone_data):
        self.assertEqual(self.get_zone_name(add_zone_message), zone_data['name'])
        self.assertEqual(self.get_zone_uname(add_zone_message), zone_data['uname'])

        family = zone_data['family']
        self.assertEqual(self.get_zone_range(add_zone_message), "%s/%s" % (zone_data['address'], testutil.size_to_mask(family, zone_data['mask'])))