67#define PQS_CONFIG_LINE_MAX 1024U
72#define PQS_CONFIG_KEY_MAX 64U
77#define PQS_CONFIG_VALUE_MAX QSC_SYSTEM_MAX_PATH
82#define PQS_SERVER_CONFIG_NAME "pqsd.conf"
87#define PQS_CLIENT_CONFIG_NAME "pqs.conf"
136 char host[QSC_IPINFO_IPV4_STRNLEN];
PQS_EXPORT_API bool pqs_config_server_load(pqs_server_config *cfg, const char *fpath)
Load a PQS server configuration file.
Definition pqsconfig.c:578
PQS_EXPORT_API const char * pqs_config_log_level_to_string(pqs_log_level level)
Convert a log level to a string.
Definition pqsconfig.c:476
PQS_EXPORT_API void pqs_config_client_defaults(pqs_client_config *cfg)
Initialize a client configuration with safe defaults.
Definition pqsconfig.c:555
PQS_EXPORT_API void pqs_config_server_defaults(pqs_server_config *cfg)
Initialize a server configuration with safe defaults.
Definition pqsconfig.c:518
PQS_EXPORT_API bool pqs_config_client_load(pqs_client_config *cfg, const char *fpath)
Load a PQS client configuration file.
Definition pqsconfig.c:604
The PQS structured logging functions.
pqs_log_level
The PQS log severity levels.
Definition pqslogger.h:81
The PQS client configuration state.
Definition pqsconfig.h:131
char application_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:132
char known_hosts_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:134
pqs_log_level log_level
Definition pqsconfig.h:140
char username[PQS_USERNAME_MAX]
Definition pqsconfig.h:137
char host[QSC_IPINFO_IPV4_STRNLEN]
Definition pqsconfig.h:136
uint16_t port
Definition pqsconfig.h:138
char server_public_key_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:133
bool strict_host_checking
Definition pqsconfig.h:139
char log_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:135
The PQS server configuration state.
Definition pqsconfig.h:97
char sandbox_run_as_group[PQS_USERNAME_MAX]
Definition pqsconfig.h:111
char application_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:98
uint16_t listen_port
Definition pqsconfig.h:106
pqs_log_level log_level
Definition pqsconfig.h:116
char user_database_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:101
uint32_t login_timeout_seconds
Definition pqsconfig.h:112
uint32_t idle_timeout_seconds
Definition pqsconfig.h:113
uint32_t command_timeout_seconds
Definition pqsconfig.h:114
char public_key_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:100
char policy_database_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:103
bool sandbox_enabled
Definition pqsconfig.h:117
char sandbox_run_as_user[PQS_USERNAME_MAX]
Definition pqsconfig.h:110
bool sandbox_allow_same_user
Definition pqsconfig.h:120
uint32_t max_sessions
Definition pqsconfig.h:107
uint32_t max_login_attempts
Definition pqsconfig.h:108
uint32_t command_output_max_bytes
Definition pqsconfig.h:115
char private_key_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:99
char log_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:104
bool sandbox_chroot_enabled
Definition pqsconfig.h:119
char listen_address[QSC_IPINFO_IPV4_STRNLEN]
Definition pqsconfig.h:105
bool sandbox_clear_environment
Definition pqsconfig.h:118
char sandbox_working_directory[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:109
char shell_database_path[QSC_SYSTEM_MAX_PATH]
Definition pqsconfig.h:102