reorganize lua script dir defs

This commit is contained in:
Philippe Teuwen 2019-08-23 22:07:45 +02:00
parent 31e430744b
commit 34a0fdb9d6
4 changed files with 19 additions and 17 deletions

View file

@ -33,7 +33,7 @@ static int CmdHelp(const char *Cmd);
*/
static int CmdScriptList(const char *Cmd) {
(void)Cmd; // Cmd is not used so far
return searchAndList(LUA_SCRIPTS_DIRECTORY, ".lua");
return searchAndList(LUA_SCRIPTS_SUBDIR, ".lua");
}
/**
@ -66,7 +66,7 @@ static int CmdScriptRun(const char *Cmd) {
int arg_len = 0;
sscanf(Cmd, "%127s%n %255[^\n\r]%n", script_name, &name_len, arguments, &arg_len);
char *script_path = searchFile(LUA_SCRIPTS_DIRECTORY, ".lua", script_name);
char *script_path = searchFile(LUA_SCRIPTS_SUBDIR, ".lua", script_name);
if (script_path == NULL) {
PrintAndLogEx(FAILED, "Error - can't find script %s", script_name);
return PM3_EFILE;

View file

@ -1136,48 +1136,48 @@ int set_pm3_libraries(lua_State *L) {
const char *exec_path = get_my_executable_directory();
if (exec_path != NULL) {
// from the ./luascripts/ directory
char scripts_path[strlen(exec_path) + strlen(LUA_SCRIPTS_DIRECTORY) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
char scripts_path[strlen(exec_path) + strlen(LUA_SCRIPTS_SUBDIR) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
strcpy(scripts_path, exec_path);
strcat(scripts_path, LUA_SCRIPTS_DIRECTORY);
strcat(scripts_path, LUA_SCRIPTS_SUBDIR);
strcat(scripts_path, LUA_LIBRARIES_WILDCARD);
setLuaPath(L, scripts_path);
// from the ./lualib/ directory
char libraries_path[strlen(exec_path) + strlen(LUA_LIBRARIES_DIRECTORY) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
char libraries_path[strlen(exec_path) + strlen(LUA_LIBRARIES_SUBDIR) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
strcpy(libraries_path, exec_path);
strcat(libraries_path, LUA_LIBRARIES_DIRECTORY);
strcat(libraries_path, LUA_LIBRARIES_SUBDIR);
strcat(libraries_path, LUA_LIBRARIES_WILDCARD);
setLuaPath(L, libraries_path);
}
char *user_path = getenv("HOME");
if (user_path != NULL) {
// from the ~/.proxmark3/luascripts/ directory
char scripts_path[strlen(user_path) + strlen(PM3_USER_DIRECTORY) + strlen(LUA_SCRIPTS_DIRECTORY) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
char scripts_path[strlen(user_path) + strlen(PM3_USER_DIRECTORY) + strlen(LUA_SCRIPTS_SUBDIR) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
strcpy(scripts_path, user_path);
strcat(scripts_path, PM3_USER_DIRECTORY);
strcat(scripts_path, LUA_SCRIPTS_DIRECTORY);
strcat(scripts_path, LUA_SCRIPTS_SUBDIR);
strcat(scripts_path, LUA_LIBRARIES_WILDCARD);
setLuaPath(L, scripts_path);
// from the ~/.proxmark3/lualib/ directory
char libraries_path[strlen(user_path) + strlen(PM3_USER_DIRECTORY) + strlen(LUA_LIBRARIES_DIRECTORY) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
char libraries_path[strlen(user_path) + strlen(PM3_USER_DIRECTORY) + strlen(LUA_LIBRARIES_SUBDIR) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
strcpy(libraries_path, user_path);
strcat(libraries_path, PM3_USER_DIRECTORY);
strcat(libraries_path, LUA_LIBRARIES_DIRECTORY);
strcat(libraries_path, LUA_LIBRARIES_SUBDIR);
strcat(libraries_path, LUA_LIBRARIES_WILDCARD);
setLuaPath(L, libraries_path);
}
if (strlen(PM3_SHARE_PATH) != 0 || strlen(LUA_SCRIPTS_DIRECTORY) != 0 || strlen(LUA_LIBRARIES_WILDCARD) != 0 ) {
if (strlen(PM3_SHARE_PATH) != 0 || strlen(LUA_SCRIPTS_SUBDIR) != 0 || strlen(LUA_LIBRARIES_WILDCARD) != 0 ) {
// from the /usr/local/share/proxmark3/luascripts/ directory
char scripts_path[strlen(PM3_SHARE_PATH) + strlen(LUA_SCRIPTS_DIRECTORY) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
char scripts_path[strlen(PM3_SHARE_PATH) + strlen(LUA_SCRIPTS_SUBDIR) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
strcpy(scripts_path, PM3_SHARE_PATH);
strcat(scripts_path, LUA_SCRIPTS_DIRECTORY);
strcat(scripts_path, LUA_SCRIPTS_SUBDIR);
strcat(scripts_path, LUA_LIBRARIES_WILDCARD);
setLuaPath(L, scripts_path);
// from the /usr/local/share/proxmark3/lualib/ directory
char libraries_path[strlen(PM3_SHARE_PATH) + strlen(LUA_LIBRARIES_DIRECTORY) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
char libraries_path[strlen(PM3_SHARE_PATH) + strlen(LUA_LIBRARIES_SUBDIR) + strlen(LUA_LIBRARIES_WILDCARD) + 1];
strcpy(libraries_path, PM3_SHARE_PATH);
strcat(libraries_path, LUA_LIBRARIES_DIRECTORY);
strcat(libraries_path, LUA_LIBRARIES_SUBDIR);
strcat(libraries_path, LUA_LIBRARIES_WILDCARD);
setLuaPath(L, libraries_path);
}

View file

@ -14,8 +14,6 @@
//#include <lualib.h>
//#include <lauxlib.h>
#define LUA_LIBRARIES_DIRECTORY "lualibs/"
#define LUA_SCRIPTS_DIRECTORY "luascripts/"
#define LUA_LIBRARIES_WILDCARD "?.lua"
/**

View file

@ -26,6 +26,10 @@
// PM3_USER_DIRECTORY will be expanded as if with a "~" upfront, e.g. ~/.proxmark3/
#define PM3_USER_DIRECTORY "/.proxmark3/"
// PM3 subdirectories:
#define LUA_LIBRARIES_SUBDIR "lualibs/"
#define LUA_SCRIPTS_SUBDIR "luascripts/"
#define PACKED __attribute__((packed))
// debug