blob: 423808693b05aa5785dc7e7326e435baabdd2000 [file] [log] [blame]
Nagaraju Goruganti997f5e02018-08-30 03:05:11 -05001#include "config.h"
Ratan Guptae1f4db62019-04-11 18:57:42 +05302#include "ldap_config_mgr.hpp"
Gunnar Mills703131f2020-10-28 14:26:33 -05003#include <filesystem>
Nagaraju Goruganti997f5e02018-08-30 03:05:11 -05004#include <phosphor-logging/log.hpp>
5#include <phosphor-logging/elog-errors.hpp>
6#include <sdbusplus/bus.hpp>
7#include <xyz/openbmc_project/Common/error.hpp>
8
9int main(int argc, char* argv[])
10{
11 using namespace phosphor::logging;
12 using namespace sdbusplus::xyz::openbmc_project::Common::Error;
Nagaraju Goruganti997f5e02018-08-30 03:05:11 -050013
Gunnar Mills703131f2020-10-28 14:26:33 -050014 std::filesystem::path configDir =
15 std::filesystem::path(LDAP_CONFIG_FILE).parent_path();
16
17 if (!std::filesystem::exists(configDir /
18 phosphor::ldap::defaultNslcdFile) ||
19 !std::filesystem::exists(configDir / phosphor::ldap::nsSwitchFile))
Nagaraju Goruganti997f5e02018-08-30 03:05:11 -050020 {
21 log<level::ERR>("Error starting LDAP Config App, configfile(s) are "
22 "missing, exiting!!!");
23 elog<InternalFailure>();
24 }
25 auto bus = sdbusplus::bus::new_default();
26
27 // Add sdbusplus ObjectManager for the 'root' path of the LDAP config.
28 sdbusplus::server::manager::manager objManager(bus, LDAP_CONFIG_ROOT);
29
Nagaraju Goruganti3b4d06a2018-11-08 03:13:38 -060030 phosphor::ldap::ConfigMgr mgr(bus, LDAP_CONFIG_ROOT, LDAP_CONFIG_FILE,
Zbigniew Kurzynski5d00cf22019-10-03 12:10:20 +020031 LDAP_CONF_PERSIST_PATH, TLS_CACERT_PATH,
Ratan Gupta22f13f12019-04-29 15:36:40 +053032 TLS_CERT_FILE);
Ratan Gupta21e88cb2019-04-12 17:15:52 +053033 mgr.restore();
Nagaraju Goruganti997f5e02018-08-30 03:05:11 -050034
35 bus.request_name(LDAP_CONFIG_BUSNAME);
36
37 while (true)
38 {
39 bus.process_discard();
40 bus.wait();
41 }
42
43 return 0;
44}