* Allow 9 digits long passcode for passcode bypass * Change name of 'Mobile Passcode' to 'Passcode' * Do not display any prompt when user is waiting * Add autopushPrompt option * Change name OTP method * Change enrolement message handling * Addded postrm script * [bugfix] Restart sshd service after rublon package instalation * Rename 01_rublon_ssh.conf to 01-rublon-ssh.conf * Prepared scripts for generating rpm for alma nad rocky * Adding public key authentication option * Add postinst script and ssh configuration for using pubkey * Add GCC 7 compatybility * Cleanup includes, cleanup std::array usage * Add Static String implementation * Remove memory_resources * Add monotonic_buffer_resource in experimental c++ imlpementation * Use case insensitive map * Remove not needed code * Stop using deprecated SHA256 functions * Changed app verstion to v2.0.4 * Fixed postinst script for ubuntu * CHanged vangrantfile not to show gui * Refactor cpack + add component builds for rpm based distros
68 lines
1.8 KiB
CMake
Executable File
68 lines
1.8 KiB
CMake
Executable File
cmake_minimum_required(VERSION 3.5)
|
|
|
|
project(rublon-ssh LANGUAGES CXX)
|
|
|
|
include(CTest)
|
|
include(GNUInstallDirs)
|
|
|
|
set(PROJECT_VERSION_MAJOR 2)
|
|
set(PROJECT_VERSION_MINOR 0)
|
|
set(PROJECT_VERSION_PATCH 4)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED YES)
|
|
set(CMAKE_CXX_EXTENSIONS NO)
|
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")
|
|
add_compile_options(-Wall -Wextra -Wpedantic -Wno-format-security)
|
|
|
|
option(ENABLE_TESTS "Enable tests" OFF)
|
|
add_custom_target(CONFIG_IDE SOURCES ${CMAKE_CURRENT_LIST_DIR}/rsc/rublon.config.defaults)
|
|
add_custom_target(INSTSCRIPTS_IDE SUORCES ${CMAKE_CURRENT_LIST_DIR}/service/helpers/postinst)
|
|
|
|
# TODO configure to fill sysconfdir in postinst
|
|
# TODO add postrm that will disable PAM
|
|
execute_process (
|
|
COMMAND bash -c "awk -F= '/^ID=/{print $2}' /etc/os-release |tr -d '\n' | tr -d '\"'"
|
|
OUTPUT_VARIABLE outOS
|
|
)
|
|
install(
|
|
FILES
|
|
${CMAKE_CURRENT_LIST_DIR}/rsc/rublon.config.defaults
|
|
${CMAKE_CURRENT_LIST_DIR}/service/01-rublon-ssh_pubkey.conf.default
|
|
${CMAKE_CURRENT_LIST_DIR}/service/01-rublon-ssh.conf.default
|
|
DESTINATION
|
|
share/rublon
|
|
COMPONENT
|
|
PAM
|
|
PERMISSIONS
|
|
OWNER_READ
|
|
OWNER_WRITE
|
|
GROUP_READ
|
|
)
|
|
|
|
if (NOT ${outOS} MATCHES "ubuntu" OR NOT ${outOS} MATCHES "debian" OR NOT ${outOS} MATCHES "FREEBSD")
|
|
install(
|
|
FILES
|
|
${CMAKE_CURRENT_LIST_DIR}/service/login_rublon.mod
|
|
${CMAKE_CURRENT_LIST_DIR}/service/login_rublon.pp
|
|
${CMAKE_CURRENT_LIST_DIR}/service/login_rublon.te
|
|
${CMAKE_CURRENT_LIST_DIR}/service/pam_service.txt
|
|
${CMAKE_CURRENT_LIST_DIR}/service/rublon_veritas
|
|
DESTINATION
|
|
share/rublon
|
|
COMPONENT
|
|
PAM
|
|
PERMISSIONS
|
|
OWNER_READ
|
|
OWNER_WRITE
|
|
GROUP_READ
|
|
|
|
)
|
|
endif()
|
|
if (${ENABLE_TESTS})
|
|
enable_testing()
|
|
endif()
|
|
|
|
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/PAM/ssh)
|
|
include(${CMAKE_CURRENT_LIST_DIR}/pack.cmake)
|