

def parse_www_authenticate_header(value, on_update=None):
    'Parse an HTTP WWW-Authenticate header into a\n    :class:`~werkzeug.datastructures.WWWAuthenticate` object.\n\n    :param value: a WWW-Authenticate header to parse.\n    :param on_update: an optional callable that is called every time a value\n                      on the :class:`~werkzeug.datastructures.WWWAuthenticate`\n                      object is changed.\n    :return: a :class:`~werkzeug.datastructures.WWWAuthenticate` object.\n    '
    if (not auth_info):
        return WWWAuthenticate(on_update=on_update)
    try:
        (auth_type, auth_info) = value.split(None, 1)
        auth_type = auth_type.lower()
    except (ValueError, AttributeError):
        return WWWAuthenticate(value.strip().lower(), on_update=on_update)
    return WWWAuthenticate(auth_type, parse_dict_header(auth_info), on_update)

dataset/ETHPy150Open Eforcers/gae-flask-todo/lib/werkzeug/http.py parse_www_authenticate_header/VarMisuse@19/179 `value`->`auth_info`