Add option --no-ldpaths to avoid default ldpaths
authorJosé Bollo <jose.bollo@iot.bzh>
Fri, 25 Aug 2017 11:19:32 +0000 (13:19 +0200)
committerJosé Bollo <jose.bollo@iot.bzh>
Fri, 25 Aug 2017 11:19:32 +0000 (13:19 +0200)
Instead of writing --ldpaths=/dev/null simply use
the option --no-ldpaths

Change-Id: Ia278989b90a079d998ba0cbb7a6bb78c46d58090
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
src/afb-config.c
src/afb-config.h

index 18f7fa7..6a91da8 100644 (file)
@@ -69,6 +69,7 @@
 #define SET_APITIMEOUT     14
 #define SET_CNTXTIMEOUT    15
 #define SET_WEAK_LDPATH    16
+#define NO_LDPATH          17
 
 #define SET_MODE           18
 
@@ -136,7 +137,8 @@ static AFB_options cliOptions[] = {
 
        {SET_LDPATH,        1, "ldpaths",     "Load bindings from dir1:dir2:... [default = " BINDING_INSTALL_DIR "]"},
        {SO_BINDING,        1, "binding",     "Load the binding of path"},
-       {SET_WEAK_LDPATH,   1, "weak-ldpaths","Same as --ldpaths but ignore erros"},
+       {SET_WEAK_LDPATH,   1, "weak-ldpaths","Same as --ldpaths but ignore errors"},
+       {NO_LDPATH,         0, "no-ldpaths",  "Discard default ldpaths loading"},
 
        {SET_AUTH_TOKEN,    1, "token",       "Initial Secret [default=no-session, --token= for session without authentication]"},
        {SET_RNDTOKEN,      0, "random-token","Creates a random token"},
@@ -463,6 +465,11 @@ static void parse_arguments(int argc, char **argv, struct afb_config *config)
                        list_add(&config->weak_ldpaths, argvalstr(optc));
                        break;
 
+               case NO_LDPATH:
+                       noarg(optc);
+                       config->no_ldpaths = 1;
+                       break;
+
                case ADD_CALL:
                        list_add(&config->calls, argvalstr(optc));
                        break;
@@ -612,7 +619,7 @@ static void config_set_default(struct afb_config *config)
        if (config->rootapi == NULL)
                config->rootapi = "/api";
 
-       if (config->ldpaths == NULL && config->weak_ldpaths == NULL)
+       if (config->ldpaths == NULL && config->weak_ldpaths == NULL && !config->no_ldpaths)
                list_add(&config->ldpaths, BINDING_INSTALL_DIR);
 
        // if no config dir create a default path from uploaddir
index a81d296..5abf805 100644 (file)
@@ -60,6 +60,7 @@ struct afb_config {
        int tracesvc;
        int traceevt;
        int noHttpd;
+       int no_ldpaths;         /* disable default ldpaths */
 };
 
 extern struct afb_config *afb_config_parse_arguments(int argc, char **argv);