def main(params=None):
    """
    Main function to launch OSRFramework CLI

    The function is created in this way so as to let other applications make
    use of the full configuration capabilities of the application. The
    parameters received are used as parsed by this modules `getParser()`.

    Args:
    -----
        params: A list with the parameters as grabbed by the terminal. It is
            None when this is called by an entry_point.

    Returns:
    --------
        Returns 0 if execution was successful and 1 for failed executions.
    """
    parser = getParser()

    try:
        if params != None:
            args = parser.parse_args(params)
        else:
            args = parser.parse_args()
    except:
        sys.exit(0)

    if args.license:
        general.showLicense()

    # Launch the appropiate util
    module = importlib.import_module("osrframework.{}".format(args.command_name))
    module.main(args)
    sys.exit(0)