def linked(base_dir: str, rr_id: str) -> str:
        """
        Get, from the specified directory, the path to the tails file associated with
        the input revocation registry identifier, or None for no such file.

        :param base_dir: base directory for tails files, thereafter split by cred def id
        :param rr_id: rev reg id
        :return: (stringified) path to tails file of interest, or None for no such file.
        """

        LOGGER.debug('Tails.linked >>> base_dir: %s, rr_id: %s', base_dir, rr_id)

        if not ok_rev_reg_id(rr_id):
            LOGGER.debug('Tails.linked <!< Bad rev reg id %s', rr_id)
            raise BadIdentifier('Bad rev reg id {}'.format(rr_id))

        cd_id = rev_reg_id2cred_def_id(rr_id)
        link = join(base_dir, cd_id, rr_id)

        rv = join(base_dir, cd_id, readlink(link)) if islink(link) else None
        LOGGER.debug('Tails.linked <<< %s', rv)
        return rv
def linked ( base_dir : str , rr_id : str ) -> str : LOGGER . debug ( 'Tails.linked >>> base_dir: %s, rr_id: %s' , base_dir , rr_id ) if not ok_rev_reg_id ( rr_id ) : LOGGER . debug ( 'Tails.linked <!< Bad rev reg id %s' , rr_id ) raise BadIdentifier ( 'Bad rev reg id {}' . format ( rr_id ) ) cd_id = rev_reg_id2cred_def_id ( rr_id ) link = join ( base_dir , cd_id , rr_id ) rv = join ( base_dir , cd_id , readlink ( link ) ) if islink ( link ) else None LOGGER . debug ( 'Tails.linked <<< %s' , rv ) return rv
Get, from the specified directory, the path to the tails file associated with
        the input revocation registry identifier, or None for no such file.

        :param base_dir: base directory for tails files, thereafter split by cred def id
        :param rr_id: rev reg id
        :return: (stringified) path to tails file of interest, or None for no such file.