X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/Ventoy.git/blobdiff_plain/17f9e2fd09d973d39885348fee4906da3aa190ac..ea0afe7c8bfd5fc02ddc2a75d55e75f4a322e456:/Plugson/src/Web/ventoy_http.h diff --git a/Plugson/src/Web/ventoy_http.h b/Plugson/src/Web/ventoy_http.h index 18447c1..0ec1e22 100644 --- a/Plugson/src/Web/ventoy_http.h +++ b/Plugson/src/Web/ventoy_http.h @@ -41,6 +41,24 @@ typedef enum bios_mode bios_max }bios_mode; +typedef enum plugin_type +{ + plugin_type_control = 0, + plugin_type_theme, + plugin_type_menu_alias, + plugin_type_menu_tip, + plugin_type_menu_class, + plugin_type_auto_install, + plugin_type_persistence, + plugin_type_injection, + plugin_type_conf_replace, + plugin_type_password, + plugin_type_image_list, + plugin_type_auto_memdisk, + plugin_type_dud, + + plugin_type_max +}plugin_type; typedef struct data_control { @@ -61,6 +79,7 @@ typedef struct data_control int secondary_menu_timeout; int linux_remount; int secondary_menu; + int password_asterisk; char default_search_root[MAX_PATH]; char default_image[MAX_PATH]; char default_kbd_layout[32]; @@ -260,8 +279,10 @@ typedef struct data_persistence for (i = 0; i < bios_max; i++) \ {\ scnprintf(title, sizeof(title), "%s%s", #plug, g_json_title_postfix[i]);\ + g_json_exist[plugin_type_##plug][i] = 0;\ if (ventoy_data_cmp_##plug(g_data_##plug + i, g_data_##plug + bios_max))\ {\ + g_json_exist[plugin_type_##plug][i] = 1;\ pos += ventoy_data_save_##plug(g_data_##plug + i, title, JSON_SAVE_BUFFER + pos, JSON_BUF_MAX - pos);\ }\ }\ @@ -302,6 +323,7 @@ typedef struct data_persistence free(__node);\ __node = __next;\ }\ + (list) = NULL;\ } #define vtoy_list_del(last, node, LIST, field) \ @@ -381,9 +403,11 @@ else\ } \ } -#define CONTROL_PARSE_INT(node, val) \ +#define CONTROL_PARSE_INT_DEF_0(node, val) \ if (node->unData.pcStrVal[0] == '1') val = 1 +#define CONTROL_PARSE_INT_DEF_1(node, val) \ + if (node->unData.pcStrVal[0] == '0') val = 0 #define VTOY_JSON_INT(key, val) vtoy_json_get_int(json, key, &val) #define VTOY_JSON_STR(key, buf) vtoy_json_get_string(json, key, sizeof(buf), buf) @@ -401,6 +425,7 @@ void ventoy_http_exit(void); int ventoy_http_start(const char *ip, const char *port); int ventoy_http_stop(void); int ventoy_data_save_all(void); +int ventoy_data_real_save_all(int apilock); #endif /* __VENTOY_HTTP_H__ */