mirror of
https://github.com/bol-van/zapret2.git
synced 2026-03-21 08:45:48 +00:00
nfqws2: LUA_COMPAT_VER tracking
This commit is contained in:
@@ -43,7 +43,8 @@ v0.3
|
||||
|
||||
v0.4
|
||||
|
||||
* nfqws2: profile names
|
||||
* nfqws2: profile names and cookies
|
||||
* nfqws2: profile templates
|
||||
* nfqws2: remove stun_binding_req, replace to stun. no more message type details
|
||||
* blockcheck2: fix broken dns cache
|
||||
* nfqws2: LUA_COMPAT_VER tracking
|
||||
|
||||
7
docs/changes_compat.txt
Executable file
7
docs/changes_compat.txt
Executable file
@@ -0,0 +1,7 @@
|
||||
Here listed all api breaking changes.
|
||||
When something changes capable of breaking things NFQWS2_COMPAT_VER increases.
|
||||
|
||||
v2
|
||||
* removed "stun_binding_req" specialized payload. replaced with common "stun" - any stun packets, not only binding request.
|
||||
every LUA relying on desync.l7payload should be revised.
|
||||
nfqws2 --payload option and init.d custom scripts must be updated.
|
||||
18
nfq2/lua.c
18
nfq2/lua.c
@@ -2792,6 +2792,21 @@ static void lua_init_const(void)
|
||||
{
|
||||
LUA_STACK_GUARD_ENTER(params.L)
|
||||
|
||||
const struct
|
||||
{
|
||||
const char *name, *v;
|
||||
} cstr[] = {
|
||||
{"NFQWS2_VER",params.verstr}
|
||||
};
|
||||
|
||||
DLOG("LUA STR:");
|
||||
for (int i=0;i<sizeof(cstr)/sizeof(*cstr);i++)
|
||||
{
|
||||
lua_pushstring(params.L, cstr[i].v);
|
||||
lua_setglobal(params.L, cstr[i].name);
|
||||
DLOG(" %s", cstr[i].name);
|
||||
}
|
||||
|
||||
const struct
|
||||
{
|
||||
const char *name;
|
||||
@@ -2803,6 +2818,7 @@ static void lua_init_const(void)
|
||||
{"divert_port",params.port},
|
||||
#endif
|
||||
{"desync_fwmark",params.desync_fwmark},
|
||||
{"NFQWS2_COMPAT_VER",LUA_COMPAT_VER},
|
||||
|
||||
{"VERDICT_PASS",VERDICT_PASS},
|
||||
{"VERDICT_MODIFY",VERDICT_MODIFY},
|
||||
@@ -2864,7 +2880,7 @@ static void lua_init_const(void)
|
||||
{"IPPROTO_SHIM6",IPPROTO_SHIM6},
|
||||
{"IPPROTO_NONE",IPPROTO_NONE}
|
||||
};
|
||||
DLOG("LUA NUMERIC:");
|
||||
DLOG("\nLUA NUMERIC:");
|
||||
for (int i=0;i<sizeof(cuint)/sizeof(*cuint);i++)
|
||||
{
|
||||
lua_pushinteger(params.L, (lua_Integer)cuint[i].v);
|
||||
|
||||
39
nfq2/nfqws.c
39
nfq2/nfqws.c
@@ -1499,22 +1499,6 @@ static void ApplyDefaultBlobs(struct blob_collection_head *blobs)
|
||||
load_const_blob_to_collection("fake_default_quic",buf,620,blobs,0);
|
||||
}
|
||||
|
||||
#define STRINGIFY(x) #x
|
||||
#define TOSTRING(x) STRINGIFY(x)
|
||||
#if defined(ZAPRET_GH_VER) || defined (ZAPRET_GH_HASH)
|
||||
#ifdef __ANDROID__
|
||||
#define PRINT_VER printf("github android version %s (%s)\n\n", TOSTRING(ZAPRET_GH_VER), TOSTRING(ZAPRET_GH_HASH))
|
||||
#else
|
||||
#define PRINT_VER printf("github version %s (%s)\n\n", TOSTRING(ZAPRET_GH_VER), TOSTRING(ZAPRET_GH_HASH))
|
||||
#endif
|
||||
#else
|
||||
#ifdef __ANDROID__
|
||||
#define PRINT_VER printf("self-built android version %s %s\n\n", __DATE__, __TIME__)
|
||||
#else
|
||||
#define PRINT_VER printf("self-built version %s %s\n\n", __DATE__, __TIME__)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
enum opt_indices {
|
||||
IDX_DEBUG,
|
||||
IDX_DRY_RUN,
|
||||
@@ -1686,6 +1670,23 @@ static const struct option long_options[] = {
|
||||
[IDX_LAST] = {NULL, 0, NULL, 0},
|
||||
};
|
||||
|
||||
|
||||
#define STRINGIFY(x) #x
|
||||
#define TOSTRING(x) STRINGIFY(x)
|
||||
#if defined(ZAPRET_GH_VER) || defined (ZAPRET_GH_HASH)
|
||||
#ifdef __ANDROID__
|
||||
#define MAKE_VER(s,size) snprintf(s,size,"github android version %s (%s) lua_compat_ver %u", TOSTRING(ZAPRET_GH_VER), TOSTRING(ZAPRET_GH_HASH), LUA_COMPAT_VER)
|
||||
#else
|
||||
#define MAKE_VER(s,size) snprintf(s,size,"github version %s (%s) lua_compat_ver %u", TOSTRING(ZAPRET_GH_VER), TOSTRING(ZAPRET_GH_HASH), LUA_COMPAT_VER)
|
||||
#endif
|
||||
#else
|
||||
#ifdef __ANDROID__
|
||||
#define MAKE_VER(s,size) snprintf(s,size,"self-built android version %s %s lua_compat_ver %u", __DATE__, __TIME__, LUA_COMPAT_VER)
|
||||
#else
|
||||
#define MAKE_VER(s,size) snprintf(s,size,"self-built version %s %s lua_compat_ver %u", __DATE__, __TIME__, LUA_COMPAT_VER)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
#ifdef __CYGWIN__
|
||||
@@ -1720,9 +1721,11 @@ int main(int argc, char **argv)
|
||||
prepare_low_appdata();
|
||||
#endif
|
||||
|
||||
PRINT_VER;
|
||||
|
||||
init_params(¶ms);
|
||||
|
||||
MAKE_VER(params.verstr, sizeof(params.verstr));
|
||||
printf("%s\n\n",params.verstr);
|
||||
|
||||
ApplyDefaultBlobs(¶ms.blobs);
|
||||
|
||||
struct desync_profile_list *dpl;
|
||||
|
||||
@@ -10,3 +10,6 @@
|
||||
extern bool bQuit;
|
||||
#endif
|
||||
int main(int argc, char *argv[]);
|
||||
|
||||
// when something changes that can break LUA compatibility this version should be increased
|
||||
#define LUA_COMPAT_VER 2
|
||||
|
||||
@@ -113,6 +113,7 @@ struct params_s
|
||||
#if !defined( __OpenBSD__) && !defined(__ANDROID__)
|
||||
wordexp_t wexp; // for file based config
|
||||
#endif
|
||||
char verstr[128];
|
||||
|
||||
enum log_target debug_target;
|
||||
char debug_logfile[PATH_MAX];
|
||||
|
||||
Reference in New Issue
Block a user