def METHOD_NAME(chain_name):
    """List rules in a chain.
    Returns a list of iptables rules, or raises ChainDoesNotExist.
    """
    table = iptc.Table(iptc.Table.FILTER)
    chain = iptc.Chain(table, chain_name)
    # TODO: is there any way to do this without listing all chains? (probably slow)
    # If the chain doesn't exist, chain.rules will be an empty list, so we need
    # to make sure the chain actually _does_ exist.
    if chain in table.chains:
        return tuple(Rule.from_iptc(rule) for rule in chain.rules)
    else:
        raise ChainDoesNotExist(chain_name)