def daemon_connection_init(self, s_link, set_wait_new_conf=False):
        logger.debug("Daemon connection initialization: %s %s", s_link.type, s_link.name)
        if not s_link.active:
            logger.warning("%s '%s' is not active, do not initialize its connection!",
                           s_link.type, s_link.name)
            return False
        s_link.create_connection()
        logger.debug("[%s] Getting running identifier for '%s'", self.name, s_link.name)
        s_link.alive = True
        s_link.reachable = True
        got_a_running_id = None
        for _ in range(0, s_link.max_check_attempts):
            got_a_running_id = s_link.get_running_id()
            if got_a_running_id:
                s_link.last_connection = time.time()
                if set_wait_new_conf:
                    s_link.wait_new_conf()
                break
            time.sleep(0.3)
        return got_a_running_id