'Starts the slapd server process running, and waits for it to come up.'

def start(self):

    if (self._proc is None):
        ok = False
        config_path = None
        try:
            self.configure(self._config)
            self._test_configuration()
            self._start_slapd()
            self._wait_for_slapd()
            ok = True
            self._log.debug('slapd    ready    at    %s', self.get_url())
            self.started()
        finally:
            if (not ok):
                if config_path:
                    try:
                        os.remove(config_path)
                    except os.error:
                        pass
                if self._proc:
                    self.stop()
