def _check_pool_attr(self, attr, req_attr=None):
        """ Check pool attributes.
        """

        if req_attr is None:
            req_attr = []

        # check attribute names
        self._check_attr(attr, req_attr, _pool_attrs)

        # validate IPv4 prefix length
        if attr.get('ipv4_default_prefix_length') is not None:
            try:
                attr['ipv4_default_prefix_length'] = \
                    int(attr['ipv4_default_prefix_length'])

                if (attr['ipv4_default_prefix_length'] > 32 or
                    attr['ipv4_default_prefix_length'] < 1):
                    raise ValueError()
            except ValueError:
                raise NipapValueError('Default IPv4 prefix length must be an integer between 1 and 32.')

        # validate IPv6 prefix length
        if attr.get('ipv6_default_prefix_length'):
            try:
                attr['ipv6_default_prefix_length'] = \
                    int(attr['ipv6_default_prefix_length'])

                if (attr['ipv6_default_prefix_length'] > 128 or
                    attr['ipv6_default_prefix_length'] < 1):
                    raise ValueError()
            except __HOLE__:
                raise NipapValueError('Default IPv6 prefix length must be an integer between 1 and 128.')
dataset/ETHPy150Open SpriteLink/NIPAP/nipap/nipap/backend.py/Nipap._check_pool_attr