Initial import: ESP32 ZiFi32 firmware with SMB2/3 VFS bridge

Based on https://github.com/tslabs/zx-evo/tree/master/pentevo/esp32,
extended with an SMB2/3 server that exposes the ZX Evolution's real SD
card as a network share (browse/download/upload/delete), plus assorted
stability and protocol-correctness fixes in vfs_bridge.cpp and the
vendored libsmb2 - see firmware/README.md for the detailed changelog
and current status.

Also adds:
- firmware/: ready-to-flash compiled binaries + flashing instructions
- hardware/: adapter board connection diagram, PCB photo, and Gerber
  files
- src/third_party/libsmb2: vendored from sahlberg/libsmb2 (LGPL-2.1,
  see its own COPYING/LICENCE files), de-submoduled to a plain
  snapshot with local patches applied directly

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-14 16:00:05 +03:00
co-authored by Claude Sonnet 5
commit 6d835bc44c
377 changed files with 189430 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
Libsmb2 components fall under separate licences
The lib and include directories (except DCE/RPC)
===============================================
The smb2 client library itself, i.e. the lib directory and non-DCE/RPC
headers under include/, is licenced under GNU Lesser General Public
License as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.
A copy of LGPL 2.1 is included in the file LICENCE-LGPL-2.1.txt but can
also be downloaded from
http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
This is the licence that applies to the libsmb2 library and its use.
The libdcerpc directory and DCE/RPC headers
===========================================
The DCE/RPC library (libdcerpc/) and the DCE/RPC public headers
(include/smb2/libsmb2-dcerpc*.h) are licenced under the 2-Clause BSD
License.
To avoid any confusion, every source file also contain a licence boilerplate.
The examples directory
======================
The example applications using this library, i.e. the examples directory,
is licenced under 2-Clause BSD License.
These are executable applications that link with the libsmb2 library
and/or libdcerpc.
To avoid any confusion, every source file also contain a licence boilerplate.