summaryrefslogtreecommitdiff
path: root/src/settings.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/settings.c')
-rw-r--r--src/settings.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/settings.c b/src/settings.c
index 9867b47..04bfff0 100644
--- a/src/settings.c
+++ b/src/settings.c
@@ -93,6 +93,9 @@ void BarSettingsDestroy (BarSettings_t *settings) {
free (settings->npStationFormat);
free (settings->listSongFormat);
free (settings->fifo);
+#ifdef ENABLE_TLS
+ free (settings->tlsCaPath);
+#endif
for (size_t i = 0; i < MSG_COUNT; i++) {
free (settings->msgFormat[i].prefix);
free (settings->msgFormat[i].postfix);
@@ -131,6 +134,10 @@ void BarSettingsRead (BarSettings_t *settings) {
settings->listSongFormat = strdup ("%i) %a - %t%r");
settings->fifo = malloc (PATH_MAX * sizeof (*settings->fifo));
BarGetXdgConfigDir (PACKAGE "/ctl", settings->fifo, PATH_MAX);
+#ifdef ENABLE_TLS
+ settings->tls = true;
+ settings->tlsCaPath = strdup ("/etc/ssl/certs/ca-certificates.crt");
+#endif
settings->msgFormat[MSG_NONE].prefix = NULL;
settings->msgFormat[MSG_NONE].postfix = NULL;
@@ -239,6 +246,17 @@ void BarSettingsRead (BarSettings_t *settings) {
} else if (streq ("fifo", key)) {
free (settings->fifo);
settings->fifo = strdup (val);
+#ifdef ENABLE_TLS
+ } else if (streq ("tls", key)) {
+ if (streq ("1", val)) {
+ settings->tls = true;
+ } else {
+ settings->tls = false;
+ }
+ } else if (streq ("tls_ca_path", key)) {
+ free (settings->tlsCaPath);
+ settings->tlsCaPath = strdup (val);
+#endif
} else if (strncmp (formatMsgPrefix, key,
strlen (formatMsgPrefix)) == 0) {
static const char *mapping[] = {"none", "info", "nowplaying",