want himBHexpansion, but not path-prefixing
authorChristian Grothoff <christian@grothoff.org>
Sun, 25 Sep 2016 18:46:43 +0000 (18:46 +0000)
committerChristian Grothoff <christian@grothoff.org>
Sun, 25 Sep 2016 18:46:43 +0000 (18:46 +0000)
src/arm/arm_api.c
src/arm/gnunet-service-arm.c

index 3fcb75814cf69dc7207048e861dd3237f8f1fad9..2967e62b754fd68192b9c145cf8654e6985e164f 100644 (file)
@@ -597,17 +597,23 @@ start_arm_service (struct GNUNET_ARM_Handle *h,
   char *lopostfix;
 
   if (GNUNET_OK !=
-      GNUNET_CONFIGURATION_get_value_filename (h->cfg,
-                                               "arm",
-                                               "PREFIX",
-                                               &loprefix))
+      GNUNET_CONFIGURATION_get_value_string (h->cfg,
+                                             "arm",
+                                             "PREFIX",
+                                             &loprefix))
     loprefix = GNUNET_strdup ("");
+  else
+    loprefix = GNUNET_CONFIGURATION_expand_dollar (h->cfg,
+                                                   loprefix);
   if (GNUNET_OK !=
-      GNUNET_CONFIGURATION_get_value_filename (h->cfg,
-                                               "arm",
-                                               "OPTIONS",
-                                               &lopostfix))
+      GNUNET_CONFIGURATION_get_value_string (h->cfg,
+                                             "arm",
+                                             "OPTIONS",
+                                             &lopostfix))
     lopostfix = GNUNET_strdup ("");
+  else
+    lopostfix = GNUNET_CONFIGURATION_expand_dollar (h->cfg,
+                                                    lopostfix);
   if (GNUNET_OK !=
       GNUNET_CONFIGURATION_get_value_string (h->cfg,
                                              "arm",
index 8c5113774d6416cd517040c3a94b0a242dce02dd..5bf82365617def5e01cad88069fc56c356c11535 100644 (file)
@@ -380,18 +380,23 @@ start_process (struct ServiceList *sl,
 
   /* obtain configuration */
   if (GNUNET_OK !=
-      GNUNET_CONFIGURATION_get_value_filename (cfg,
-                                               sl->name,
-                                               "PREFIX",
-                                               &loprefix))
+      GNUNET_CONFIGURATION_get_value_string (cfg,
+                                             sl->name,
+                                             "PREFIX",
+                                             &loprefix))
     loprefix = GNUNET_strdup (prefix_command);
+  else
+    loprefix = GNUNET_CONFIGURATION_expand_dollar (cfg,
+                                                   loprefix);
   if (GNUNET_OK !=
-      GNUNET_CONFIGURATION_get_value_filename (cfg,
-                                               sl->name,
-                                               "OPTIONS",
-                                               &options))
+      GNUNET_CONFIGURATION_get_value_string (cfg,
+                                             sl->name,
+                                             "OPTIONS",
+                                             &options))
     options = NULL;
-
+  else
+    options = GNUNET_CONFIGURATION_expand_dollar (cfg,
+                                                  options);
   {
     char *new_options;
     char *optpos;
@@ -1555,7 +1560,8 @@ setup_service (void *cls,
   }
   config = NULL;
   if (( (GNUNET_OK !=
-        GNUNET_CONFIGURATION_get_value_filename (cfg, section,
+        GNUNET_CONFIGURATION_get_value_filename (cfg,
+                                                  section,
                                                   "CONFIG",
                                                   &config)) &&
        (GNUNET_OK !=
@@ -1744,12 +1750,18 @@ run (void *cls,
                                              "GLOBAL_PREFIX",
                                              &prefix_command))
     prefix_command = GNUNET_strdup ("");
+  else
+    prefix_command = GNUNET_CONFIGURATION_expand_dollar (cfg,
+                                                         prefix_command);
   if (GNUNET_OK !=
       GNUNET_CONFIGURATION_get_value_string (cfg,
                                              "ARM",
                                              "GLOBAL_POSTFIX",
                                              &final_option))
     final_option = GNUNET_strdup ("");
+  else
+    final_option = GNUNET_CONFIGURATION_expand_dollar (cfg,
+                                                       final_option);
   if (GNUNET_YES ==
       GNUNET_CONFIGURATION_get_value_yesno (cfg,
                                             "ARM",