cmake,options: Allow to set global client config file
This allows the global client (ssh_session) configuration file path to be set in configuration time by defining GLOBAL_CLIENT_CONFIG when calling cmake. If it is not defined, the default path is set as "/etc/ssh/ssh_config". usage example: $ cmake -DGLOBAL_CLIENT_CONFIG=/etc/my/custom/path .. Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Этот коммит содержится в:
родитель
248e5acd5c
Коммит
7cc159d720
@ -243,6 +243,7 @@ message(STATUS "Benchmarks: ${WITH_BENCHMARKS}")
|
|||||||
message(STATUS "Symbol versioning: ${WITH_SYMBOL_VERSIONING}")
|
message(STATUS "Symbol versioning: ${WITH_SYMBOL_VERSIONING}")
|
||||||
message(STATUS "Allow ABI break: ${WITH_ABI_BREAK}")
|
message(STATUS "Allow ABI break: ${WITH_ABI_BREAK}")
|
||||||
message(STATUS "Release is final: ${WITH_FINAL}")
|
message(STATUS "Release is final: ${WITH_FINAL}")
|
||||||
|
message(STATUS "Global client config: ${GLOBAL_CLIENT_CONFIG}")
|
||||||
if (WITH_SERVER)
|
if (WITH_SERVER)
|
||||||
message(STATUS "Global bind config: ${GLOBAL_BIND_CONFIG}")
|
message(STATUS "Global bind config: ${GLOBAL_BIND_CONFIG}")
|
||||||
endif()
|
endif()
|
||||||
|
@ -53,3 +53,7 @@ endif (WITH_ABI_BREAK)
|
|||||||
if (NOT GLOBAL_BIND_CONFIG)
|
if (NOT GLOBAL_BIND_CONFIG)
|
||||||
set(GLOBAL_BIND_CONFIG "/etc/ssh/libssh_server_config")
|
set(GLOBAL_BIND_CONFIG "/etc/ssh/libssh_server_config")
|
||||||
endif (NOT GLOBAL_BIND_CONFIG)
|
endif (NOT GLOBAL_BIND_CONFIG)
|
||||||
|
|
||||||
|
if (NOT GLOBAL_CLIENT_CONFIG)
|
||||||
|
set(GLOBAL_CLIENT_CONFIG "/etc/ssh/ssh_config")
|
||||||
|
endif (NOT GLOBAL_CLIENT_CONFIG)
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
/* Global bind configuration file path */
|
/* Global bind configuration file path */
|
||||||
#cmakedefine GLOBAL_BIND_CONFIG "${GLOBAL_BIND_CONFIG}"
|
#cmakedefine GLOBAL_BIND_CONFIG "${GLOBAL_BIND_CONFIG}"
|
||||||
|
|
||||||
|
/* Global client configuration file path */
|
||||||
|
#cmakedefine GLOBAL_CLIENT_CONFIG "${GLOBAL_CLIENT_CONFIG}"
|
||||||
|
|
||||||
/************************** HEADER FILES *************************/
|
/************************** HEADER FILES *************************/
|
||||||
|
|
||||||
/* Define to 1 if you have the <argp.h> header file. */
|
/* Define to 1 if you have the <argp.h> header file. */
|
||||||
|
@ -1399,7 +1399,7 @@ int ssh_options_parse_config(ssh_session session, const char *filename) {
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
if (filename == NULL) {
|
if (filename == NULL) {
|
||||||
r = ssh_config_parse_file(session, "/etc/ssh/ssh_config");
|
r = ssh_config_parse_file(session, GLOBAL_CLIENT_CONFIG);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Do not process the default configuration as part of connection again */
|
/* Do not process the default configuration as part of connection again */
|
||||||
|
@ -394,6 +394,8 @@ static void torture_config_unknown(void **state) {
|
|||||||
assert_true(ret == 0);
|
assert_true(ret == 0);
|
||||||
ret = ssh_config_parse_file(session, "/etc/ssh/ssh_config");
|
ret = ssh_config_parse_file(session, "/etc/ssh/ssh_config");
|
||||||
assert_true(ret == 0);
|
assert_true(ret == 0);
|
||||||
|
ret = ssh_config_parse_file(session, GLOBAL_CLIENT_CONFIG);
|
||||||
|
assert_true(ret == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Загрузка…
Ссылка в новой задаче
Block a user