ENDIF()
PKG_CHECK_MODULES(SYSTEMD libsystemd)
-
-#### Cynara ####
-
-PKG_CHECK_MODULES(CYNARA cynara-client cynara-creds-socket cynara-session)
add_definitions(-DUSE_SYSTEMD_API=1)
ENDIF(ENABLE_SYSTEMD_SUPPORT)
-IF(CYNARA_FOUND)
- include_directories(${CYNARA_INCLUDE_DIRS})
- link_directories(${CYNARA_LIBRARY_DIRS})
- add_definitions(${CYNARA_CFLAGS_OTHER})
- add_definitions(-DUSE_CYNARA=1)
-ENDIF(CYNARA_FOUND)
+PKG_CHECK_MODULES(CYNARA
+ REQUIRED
+ cynara-client
+ cynara-creds-socket
+ cynara-session)
+
+INCLUDE_DIRECTORIES(${CYNARA_INCLUDE_DIRS})
+LINK_DIRECTORIES(${CYNARA_LIBRARY_DIRS})
+ADD_DEFINITIONS(${CYNARA_CFLAGS_OTHER})
include_directories(${Boost_INCLUDE_DIRS})
link_directories(${Boost_LIBRARY_DIRS})
${Boost_SYSTEM_LIBRARY}
${CMAKE_THREAD_LIBS_INIT}
${DLOG_LIBRARIES}
+ ${CYNARA_LIBRARIES}
device-certificate-manager
dl)
target_link_libraries(device-certificate-managerd ${SYSTEMD_LIBRARIES})
ENDIF(ENABLE_SYSTEMD_SUPPORT)
-IF(CYNARA_FOUND)
- target_link_libraries(device-certificate-managerd ${CYNARA_LIBRARIES})
-ENDIF(CYNARA_FOUND)
-
###### Installation #######
INSTALL(TARGETS device-certificate-managerd
#include <map>
#include <mutex>
-#ifdef USE_CYNARA
#include <cynara-client.h>
#include <cynara-creds-socket.h>
#include <cynara-session.h>
-#endif
-#ifdef USE_CYNARA
extern cynara * gGlobalCynaraInstance;
static inline std::string cynara_error_to_string(int error) {
return std::string(buffer);
return std::string("Can't translate error");
}
-#endif
unsigned int globalSessionCounter = 0;
bool dcm_session::verify_privileges(int handle)
{
-#ifdef USE_CYNARA
BOOST_LOG_FUNCTION();
int ret = 0;
}
BOOST_LOG_SEV(dcm_logger::get(), log_severity::debug) << "Access granted for " << pid;
-#else
- (void)handle;
-#endif
return true;
}
#include <boost_log_dlog_sink.h>
-#ifdef USE_CYNARA
#include <cynara-client.h>
-#endif
BOOST_LOG_ATTRIBUTE_KEYWORD(_scope, "Scope", boost::log::attributes::named_scope::value_type)
BOOST_LOG_ATTRIBUTE_KEYWORD(_timestamp, "TimeStamp", boost::posix_time::ptime)
boost::log::core::get()->add_thread_attribute("Scope", boost::log::attributes::named_scope());
}
-#ifdef USE_CYNARA
cynara * gGlobalCynaraInstance;
-#endif
int main()
{
service_adapter serviceAdapter(DCM_UNIX_SOCKET_PATH);
-#ifdef USE_CYNARA
cynara_configuration * cynara_conf = nullptr;
error = cynara_configuration_create(&cynara_conf);
if(error != CYNARA_API_SUCCESS) {
serviceAdapter.notify_start_failure(error);
return EXIT_FAILURE;
}
-#endif
try {
boost::asio::io_service io_service;
return EXIT_FAILURE;
}
-#ifdef USE_CYNARA
cynara_finish(gGlobalCynaraInstance);
gGlobalCynaraInstance = nullptr;
-#endif
BOOST_LOG_SEV(dcm_logger::get(), log_severity::normal) << "Server terminated";