Files
utun2/BUILD_OPENWRT.md
T
evgeny 38c9f229bc stcp: ed25519 pubkey exchange in handshake, fix instance destroy segfault, fix chat_tcp_test
- u_async.c: process immediate_queue BEFORE epoll_wait in uasync_poll
- stcp_link.c: defensive NULL etcp_conn/etcp_link in stcp_link_close
- utun_instance.c: move stcp_server_list_destroy_all to Phase J (before ETCP),
  add deferred drain in both Phase J and L
- stcp.h/c: STCP_HS_ENC_CLIENT 6→38, STCP_HS_ENC_SERVER 7→39,
  exchange ed25519_pubkey in both handshake directions
- etcp_connections.c: copy peer_ed25519 from STCP to ETCP_CONN in
  etcp_link_enter_ready_tcp; guard link->etcp in tcp_link_close_cb
- chat_sync.c: fix lk->conn NULL dereference for TCP links
- test_stcp.c: update stcp_server_create/stcp_client_connect callsites
- tools/chat_tcp_test: change transport udp→tcp
2026-08-07 00:48:27 +03:00

1.9 KiB

Сборка uTun под OpenWRT

Быстрый старт

cd ~/utun2
./build_openwrt.sh                     # ASUS RT-AX53U (по умолчанию)

Первый запуск соберёт toolchain (30-120 минут), последующие — только пакет.

Другие платформы

./build_openwrt.sh ramips/mt7621 asus_rt-ax54       # ASUS RT-AX54
./build_openwrt.sh ramips/mt7621 xiaomi_mi-router-4a-gigabit
./build_openwrt.sh ath79/generic tplink_archer-c7-v2
./build_openwrt.sh x86/64                            # x86_64 PC
./build_openwrt.sh --list                            # список целей

Ручная сборка (menuconfig)

cd /home/user/openwrt
make menuconfig          # Target System → MediaTek Ralink MIPS
                         # Subtarget → MT7621 based boards
                         # Target Profile → ASUS RT-AX53U
                         # Network → utun (M)
make -j$(nproc)          # полная сборка прошивки
# или только пакет:
make package/utun2/compile -j$(nproc) V=s

Пакет: bin/packages/*/base/utun_*.ipk

Структура

  • ~/openwrt/package/utun2/Makefile — OpenWRT-пакет
  • ~/openwrt/ — клон buildroot (main, https://github.com/openwrt/openwrt)
  • ~/utun2/build_openwrt.sh — скрипт сборки

Зависимости (host)

apt-get install -y build-essential git subversion libncurses-dev \
    libssl-dev ccache xsltproc gawk gettext unzip python3 libtool

Примечания

  • configure генерируется через autoreconf -fi (уже сделан)
  • Пакет использует USE_SOURCE_DIR — билд из /home/user/utun2 напрямую
  • Для чистой пересборки: make package/utun2/clean && make package/utun2/compile -j$(nproc)