'Boolean filter values in Volume GET.
Before V3.2, all values other than \'False\', \'false\', \'FALSE\' were
trated as True for specific boolean filter parameters in Volume
GET request.
But V3.2 onwards, only true/True/0/1/False/false parameters are
supported.
All other input values to specific boolean filter parameter will
lead to raising exception.
This changes API behavior. So, micro version introduced for V3.2
onwards.'

def _check_boolean_filter_value(self, key, val, strict=False):

    if strict:
        try:
            return strutils.bool_from_string(val, strict=True)
        except ValueError:
            msg = (_("'%(key)s    =    %(value)s'") % {'key': key, 'value': val})
            raise exception.InvalidInput(reason=msg)
    else:
        accepted_true = ['True', 'true', 'TRUE']
        accepted_false = ['False', 'false', 'FALSE']
        if (val in accepted_false):
            return False
        elif (val in accepted_true):
            return True
        else:
            return bool(val)
