diff options
| author | Jo-Philipp Wich | 2022-09-12 11:44:59 +0000 |
|---|---|---|
| committer | Jo-Philipp Wich | 2022-09-12 11:46:18 +0000 |
| commit | 0d022430861abfa84913936929f606671efddc8b (patch) | |
| tree | 9da408ba5aa1518129f32db560ea4b757611ded4 | |
| parent | 82904bd4f92e5928d047db6396cc14ca2b07d89f (diff) | |
| download | rpcd-0d022430861abfa84913936929f606671efddc8b.tar.gz | |
ucode: initialize module search path early
Ensure that the default module search path is initialized before compiling
ucode handler scripts in order to support compile time import statements.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
| -rw-r--r-- | ucode.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -929,7 +929,6 @@ rpc_ucode_script_execute(struct ubus_context *ctx, const char *path, uc_program_ script->path = strncpy(pptr, path, pathlen); - uc_search_path_init(&config.module_search_path); uc_vm_init(&script->vm, &config); rpc_ucode_init_globals(script); @@ -1019,6 +1018,10 @@ rpc_ucode_api_init(const struct rpc_daemon_ops *ops, struct ubus_context *ctx) fprintf(stderr, "Failed to dlopen() ucode.so: %s, dynamic ucode plugins may fail\n", dlerror()); } + + /* initialize default module search path */ + uc_search_path_init(&config.module_search_path); + if ((d = opendir(RPC_UCSCRIPT_DIRECTORY)) != NULL) { while ((e = readdir(d)) != NULL) { snprintf(path, sizeof(path), RPC_UCSCRIPT_DIRECTORY "/%s", e->d_name); |