|
| 1 | +# Changelog |
| 2 | + |
| 3 | +## [0.0.2] - 2026-02-17 |
| 4 | + |
| 5 | +### <!-- 0 -->⛰️ Features |
| 6 | + |
| 7 | +- Add -i identity auth support across shell exec and sftp |
| 8 | +- Bind authenticated username into session and auth flow |
| 9 | +- Implement public-key auth pk-ok and multi-step retries |
| 10 | +- Enforce trusted host fingerprint checks in client kex |
| 11 | +- Improve exec channel stderr and exit-status handling |
| 12 | +- Harden daemon startup and graceful shutdown handling |
| 13 | +- Support SFTP statvfs and fsync extensions |
| 14 | +- Add SFTP posix-rename extended request support |
| 15 | +- Add daemon start stop and status lifecycle |
| 16 | +- Implement exec sessions and wire negotiated connection IDs |
| 17 | +- Integrate runquic library for QUIC transport |
| 18 | +- Remove password authentication |
| 19 | +- Implement system-level authentication with PAM |
| 20 | +- Improve PTY session handling and interactive shell |
| 21 | +- Implement interactive shell and TTY modes |
| 22 | +- Implement PTY request handling in session |
| 23 | +- Implement PTY I/O bridging for shell sessions |
| 24 | +- Implement basic session management and PTY spawning |
| 25 | +- Implement custom minimal QUIC transport |
| 26 | +- Add server and SSHFS client commands |
| 27 | +- Implement SFTP server and enhance core features |
| 28 | +- Implement interactive shell and SFTP command loops |
| 29 | +- Implement proper Ed25519 signature verification using std.crypto |
| 30 | +- Add SSH public key authentication support |
| 31 | +- Implement secure password input and fix SSHFS installation |
| 32 | +- Complete SSHFS implementation with full Zig 0.15.2 compatibility |
| 33 | +- Implement basic SSH/QUIC client and server |
| 34 | +- Implement SSH user authentication protocol |
| 35 | +- Complete SSH/QUIC network stack with UDP transport |
| 36 | +- Wire up UDP networking for SSH/QUIC key exchange |
| 37 | +- Integrate zquic with SSH/QUIC and add UDP transport |
| 38 | +- Implement connection orchestrator and complete SSH/QUIC integration |
| 39 | +- Implement high-level SSH key exchange orchestrator |
| 40 | +- Implement QUIC secret derivation from SSH |
| 41 | +- Implement QUIC transport with SSH secret injection |
| 42 | +- Use forked zquic with SSH secret injection support |
| 43 | +- Implement CLI entry point with command structure |
| 44 | +- Implement SFTP client with file operations |
| 45 | +- Implement SFTP file attributes |
| 46 | +- Implement SFTP protocol messages |
| 47 | +- Implement public key authentication method |
| 48 | +- Implement password authentication method |
| 49 | +- Implement SSH authentication protocol messages |
| 50 | +- Implement SSH_MSG_EXT_INFO extension info |
| 51 | +- Implement SSH channel structure |
| 52 | +- Add QUIC stream mapping and validation |
| 53 | +- Implement SSH/QUIC packet format |
| 54 | +- Implement SSH/QUIC key derivation |
| 55 | +- Implement curve25519-sha256 key exchange method |
| 56 | +- Implement SSH_QUIC_CANCEL message structure |
| 57 | +- Implement SSH_QUIC_REPLY message structure |
| 58 | +- Implement SSH_QUIC_INIT message structure |
| 59 | +- Implement obfuscated envelope encryption and decryption |
| 60 | +- Implement obfuscation keyword processing |
| 61 | +- Add KDF wrappers for HMAC-SHA256 and HKDF-SHA256 |
| 62 | +- Add SHA-256 hash wrapper |
| 63 | +- Add Ed25519 signature wrapper placeholder |
| 64 | +- Add X25519 ECDH wrapper for key exchange |
| 65 | +- Implement AES-256-GCM AEAD wrapper |
| 66 | +- Add zcrypto integration facade and module structure |
| 67 | +- Implement Random Name in Private and Anonymous forms |
| 68 | +- Add Random Name generation in Assigned form |
| 69 | +- Implement Random Bytes generation with proper distribution |
| 70 | +- Add string and short-str encoding |
| 71 | +- Implement mpint encoding with sign handling |
| 72 | +- Implement byte and boolean encoding |
| 73 | +- Add SSH message type constants and disconnect reason codes |
| 74 | +- Define core error types for protocol, crypto, and connection |
| 75 | + |
| 76 | +### <!-- 1 -->🐛 Bug Fixes |
| 77 | + |
| 78 | +- Harden daemon pid file path and ownership checks |
| 79 | +- Tighten SFTP error mapping and implement fsync sync |
| 80 | +- Harden auth client handling for fragmented and banner responses |
| 81 | +- Improve QUIC stream closing and error handling |
| 82 | +- Refactor shell command and interactive mode |
| 83 | +- Update const variable names from voidbox to syslink |
| 84 | +- Replace broken SFTP client test with request ID test |
| 85 | +- Update CLI and library for Zig 0.15.2 compatibility |
| 86 | +- Update zquic to version with zcrypto Zig 0.15.2 fixes |
| 87 | +- Use bresilla/zcrypto fork for Zig 0.15.2 compat |
| 88 | + |
| 89 | +### <!-- 2 -->🚜 Refactor |
| 90 | + |
| 91 | +- Wrap runquic transport behind stable local adapter |
| 92 | +- Remove deprecated ServerConnection.accept API |
| 93 | +- Introduce local quic transport adapter boundary |
| 94 | +- Remove SSHFS to streamline the codebase |
| 95 | +- Rename library from voidbox to syslink |
| 96 | +- Improve CLI command structure and help system |
| 97 | +- Rename CLI tool from vb to sl |
| 98 | +- Rename src/ to lib/ and cli/ to bin/ for better clarity |
| 99 | + |
| 100 | +### <!-- 3 -->📚 Documentation |
| 101 | + |
| 102 | +- Add comprehensive implementation plan |
| 103 | + |
| 104 | +### <!-- 6 -->🧪 Testing |
| 105 | + |
| 106 | +- Replace placeholder integration checks with behavior tests |
| 107 | +- Add opt-in network sftp subsystem e2e flow |
| 108 | +- Add opt-in network auth e2e and robust auth request reads |
| 109 | +- Add SSH/QUIC packet and streaming integration tests |
| 110 | +- Add comprehensive obfuscation test vectors |
| 111 | +- Add tests for random element generation |
| 112 | +- Add edge case tests for wire encoding (empty, max values) |
| 113 | +- Add comprehensive round-trip tests for mpint and strings |
| 114 | +- Add comprehensive round-trip tests for all wire types |
| 115 | + |
| 116 | +### <!-- 7 -->⚙️ Miscellaneous Tasks |
| 117 | + |
| 118 | +- Update runquic dependency version |
| 119 | +- Remove old test binaries |
| 120 | +- Complete Phase 1 - foundation with wire encoding and random generation |
| 121 | +- Add zquic and zcrypto dependencies |
| 122 | +- Initial project setup with build configuration and specification |
| 123 | + |
| 124 | +### Add |
| 125 | + |
| 126 | +- SSH/QUIC connection test example |
| 127 | + |
| 128 | +### Build |
| 129 | + |
| 130 | +- Add release automation and project metadata |
| 131 | +- Create directory structure for all modules |
| 132 | + |
0 commit comments