Template
1
0
mirror of https://github.com/bol-van/zapret2.git synced 2026-03-14 06:13:09 +00:00

nfqws2: add l3_len, l4_len to dissect

This commit is contained in:
bol-van
2025-12-15 18:29:49 +03:00
parent 912eb1217a
commit c16508e2e4
3 changed files with 7 additions and 2 deletions

View File

@@ -111,3 +111,4 @@ v0.7.3
* nfqws2, zapret-lib : check tcp sequence range overflow
* zapret-lib : seq compare functions
* nfqws2: add l3_len, l4_len to dissect

View File

@@ -1323,6 +1323,7 @@ mss дублируется в поле `desync.tcp_mss` независимо о
| IP6F_MORE_FRAG | number | бит "More fragment" поля ip6f_offlg из ipv6 fragment header | 0x0001 |
| IPPROTO_IP<br>IPPROTO_IPV6<br>IPPROTO_ICMP<br>IPPROTO_TCP<br>IPPROTO_UDP<br>IPPROTO_ICMPV6<br>IPPROTO_HOPOPTS<br>IPPROTO_ROUTING<br>IPPROTO_FRAGMENT<br>IPPROTO_AH<br>IPPROTO_ESP<br>IPPROTO_DSTOPTS<br>IPPROTO_MH<br>IPPROTO_HIP<br>IPPROTO_SHIM6<br>IPPROTO_NONE | number | [номера IP протоколов](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) | используются в ipv4 и ipv6 |
## C функции
### Логгинг
@@ -1472,7 +1473,7 @@ function parse_hex(hex_string)
Но завязываться на внешние модули нельзя - LUA обычно линкуется статически без возможности загрузки внешних модулей.
Не должно быть лишних зависимостей и дополнительных файлов. openssl имеет размер несколько Mb, что критично для embedded систем.
nfqws2 уже имеет минимальный набор криптографических операций для работы с некоторыми протоколами (QUIC).
nfqws2 не использует никакие криптобиблиотеки, но имеет минимальный набор криптографических операций для работы с некоторыми протоколами (QUIC).
Эти функции выставляются в LUA и могут использоваться для любых целей.
```
@@ -1535,3 +1536,4 @@ HKDF - HMAC-based Key Derivation Function. Генератор ключей на
* info - raw строка произвольного размера, может быть nil. аналогично salt, но salt подмешивается на extraction phase, а info - на expansion. если nil, то используется info нулевого размера.
* okm_len - требуемая длина okm - output keying material
* возвращается raw строка - okm

View File

@@ -1251,13 +1251,15 @@ void lua_push_dissect(const struct dissect *dis)
if (dis)
{
lua_createtable(params.L, 0, 7);
lua_createtable(params.L, 0, 9);
lua_pushf_iphdr(dis->ip, dis->len_l3);
lua_pushf_ip6hdr(dis->ip6, dis->len_l3);
lua_pushf_tcphdr(dis->tcp, dis->len_l4);
lua_pushf_udphdr(dis->udp, dis->len_l4);
lua_pushf_int("l4proto",dis->proto);
lua_pushf_int("transport_len",dis->transport_len);
lua_pushf_int("l3_len",dis->len_l3);
lua_pushf_int("l4_len",dis->len_l4);
lua_pushf_raw("payload",dis->data_payload,dis->len_payload);
}
else