def _transform_url_decode()

in src/jndi_deobfuscate/jndi_deobfuscate.py [0:0]


def _transform_url_decode(input_string: str) -> str:
    """Turns URL encoded data (te%20st), into non-URL encoded data (te st), for further processing"""
    decode_attempts = 0
    output_string = input_string
    if output_string:
        while decode_attempts <= MAX_URL_DECODE_ATTEMPTS:
            decode_attempts = decode_attempts + 1
            url_decoded_data = unquote(output_string)
            if output_string != url_decoded_data:
                output_string = url_decoded_data
            else:
                # no changes were made, we are done processing
                break
    return output_string