- 23 Sep, 2025 15 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Wrap client cards in Bootstrap row container - Each client uses col-md-4 for 3 columns per row on medium+ screens - Maintains responsive design for smaller screens
-
Stefy Lanza (nextime / spora ) authored
- Allow container to expand with height: auto and max-height: none in full-size mode - Set min-width and min-height to fit-content for #noVNC_screen to allow proper canvas sizing - Add debugging logs to check canvas and container dimensions after zoom toggle - Ensure scrollbars appear when remote desktop is larger than viewport
-
Stefy Lanza (nextime / spora ) authored
- Add CSS class .vnc-container.full-size with overflow: auto to show scrollbars - Modify toggleZoom() function to toggle the full-size CSS class on the container - When zoom button is active (full-size mode), scrollbars appear for navigation - Maintains scaled view (no scrollbars) when zoom button is inactive
-
Stefy Lanza (nextime / spora ) authored
- Add zoom/scale toggle button in the window titlebar - Implement toggle functionality between scaled view (fit to window) and full-size view with scrollbars - Add CSS styling for the zoom button with active state - Button toggles between search-plus and search-minus icons - When active, shows remote desktop at actual size with clipping and scrollbars enabled
-
Stefy Lanza (nextime / spora ) authored
- Add comprehensive logging to Display.flip() method for viewport and scaling debugging - Fix missing KeyboardUtil object in input/util.js - Add backbuffer content verification before and after rectangle processing - Enhance WebSocket message logging for frame data debugging - Improve error handling for corrupted FramebufferUpdate messages - Add data skipping for unsupported encodings to prevent connection stalls - Clean up excessive console.log statements for production readiness - Verify loading system with cancel button functionality
-
Stefy Lanza (nextime / spora ) authored
- Disable viewport clipping to prevent large screens from being hidden - Add proper handling of corrupted FramebufferUpdate messages - Skip data for unsupported encodings to prevent data accumulation - Add comprehensive debugging for message processing flow - Fix infinite loop in rectangle processing for corrupted data
-
Stefy Lanza (nextime / spora ) authored
- Added retry logic with partial write handling to ws_send_binary_frame() - Prevents WebSocket frame corruption during large VNC data transmission - Fixes 'server must not mask frames' error in noVNC browser connections - ws_send_binary_frame now handles SSL write interruptions properly
-
Stefy Lanza (nextime / spora ) authored
- Implements VNC protocol handshake (version exchange, security negotiation, client init) - Uses wsssht --pipe mode for bidirectional communication - Includes timeout handling and proper error management - Tested successfully with VNC server negotiation
-
Stefy Lanza (nextime / spora ) authored
- Replace ws_send_frame with ws_send_binary_frame for VNC WebSocket data - This ensures proper binary frame handling for VNC protocol data - Fixes immediate disconnection after 'VNC connected' message
-
Stefy Lanza (nextime / spora ) authored
- Fix Base64 object definition in wssshd2/templates/novnc/base64.js - Change 'window.{' to 'window.Base64 = {' to properly define global Base64 object - This resolves ReferenceError when decoding JPEG rectangles in Tight encoding - VNC connections now establish successfully instead of disconnecting immediately
-
Stefy Lanza (nextime / spora ) authored
- Implement bidirectional pipe communication for VNC sessions - Replace single pipe with separate stdin/stdout pipes - Fix child process redirection to properly handle both input and output - Add enhanced debug logging for VNC data flow - Update resource cleanup in vnc_free_session() This resolves the issue where VNC connections would hang after exchanging the first 12 bytes (RFB protocol version strings) because input from noVNC WebSocket wasn't reaching the wsssht process.
-
Stefy Lanza (nextime / spora ) authored
- Fix pipe handling in vnc.c: was writing to read end instead of write end - Add separate read_fd/write_fd fields to vnc_session_t struct - Add debug logging for VNC data exchange in websocket handler - Add hex dump logging for VNC pipe communication This resolves the 'Wrote -1 bytes to pipe' error that was preventing VNC connections from working properly.
-
Stefy Lanza (nextime / spora ) authored
- Add output buffering to vnc_session_t structure - Modify read_pipe_output to buffer wsssht stdout - Update vnc_get_output to return buffered data - Modify websocket_vnc_handler to send output to WebSocket client - Enable bidirectional communication for VNC WebSocket connections
-
Stefy Lanza (nextime / spora ) authored
- Remove secure context check in noVNC RFB.js to allow HTTP usage - Add --websocket-tls-only configuration option (defaults to true for security) - Implement mixed TLS/non-TLS WebSocket server support - Add plain WebSocket connection support in protocol layer - Fix critical bugs: buffer overflows, race conditions, HTML template issues - All changes maintain backward compatibility while enabling HTTP WebSocket usage
-
Stefy Lanza (nextime / spora ) authored
- Fix embed_assets.sh sed regex for CommonJS to ES6 conversion - Convert require() calls to import statements in deflate.js - Add missing messages.js file for error messages - Remove module.exports statements from deflate.js - Update all pako zlib files to use ES6 modules This resolves the 'require is not defined' and 'module is not defined' errors in the browser.
-
- 22 Sep, 2025 14 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Modified embed_assets.sh to recursively embed all JS files in templates/novnc/ - Added automatic CommonJS to ES6 module conversion for pako library - Updated assets.c and assets.h to serve /novnc/* paths - Server now serves noVNC assets with correct path structure for tight encoding support
-
Stefy Lanza (nextime / spora ) authored
- Add 'active' field to service_config_t structure (defaults to true) - Parse 'active' field from service config files (accepts true/1/yes) - Skip inactive services during service loading - Maintain backward compatibility with existing configs
-
Stefy Lanza (nextime / spora ) authored
- Add send_registration_message_with_services() to send detailed service info during client registration - Update wssshc to send service configurations during registration - Enhance server to parse service arrays and legacy string format - Fix wsssht to use service from URL in tunnel request messages - Maintain backward compatibility with existing clients
-
Stefy Lanza (nextime / spora ) authored
- Add comprehensive service configuration documentation to README.md - Add detailed service configuration section to DOCUMENTATION.md - Document service config file format and examples for SSH, RDP, VNC - Explain service directory setup and multiple services configuration - Include service discovery and loading information
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Fix WebSocket upgrade handshake in web interface - Fix terminal session linking with WebSocket connections - Add binary type setting for WebSocket messages - Add terminal resize after session establishment - Change 'WebSocket SSH Daemon' to 'WSSSHD control panel' in all headers - Add GNOME-like window decorations to terminal interface - Implement window controls: close (disconnect), maximize (fullscreen), minimize (exit fullscreen) - Maintain window decorations in fullscreen mode
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Add polling delay to ensure terminal output appears immediately - Update dashboard to refresh client list dynamically without page reload - Fix dashboard layout with proper container - Update debug logging to exclude frequent polling requests - Embed updated HTML templates
-
- 21 Sep, 2025 11 commits
-
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Remove template copying from wsssh-server package since templates are now embedded in wssshd2 binary - Fix erroneous wssshd.py installation in wssshtools package - Update both package changelogs to version 1.7.0-1
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- wssshd2/assets.c: Modified to handle users page dynamically instead of static HTML - wssshd2/configure.sh: Added SQLite3 library dependency checking and linking These changes ensure proper SQLite integration in the build system and dynamic user management interface.
-
Stefy Lanza (nextime / spora ) authored
- README.md: Updated installation, architecture, and build instructions for C implementation - CHANGELOG.md: Added v1.7.0 entry documenting major transition from Python to C - DOCUMENTATION.md: Updated project structure, dependencies, and build instructions - TODO.md: Added v1.7.0 completion status and updated roadmap All documentation now reflects the new C-based architecture with SQLite database and embedded web interface.
-
Stefy Lanza (nextime / spora ) authored
- Removed templates/ directory (no longer needed with embedded HTML) - Removed wssshd.py (Python server entry point) - Removed wsssd/ directory (entire Python server implementation) - Project now uses only wssshd2/ C implementation - Cleaner codebase with single server implementation - Reduced maintenance overhead and confusion
-
Stefy Lanza (nextime / spora ) authored
- Updated package version from 1.6.1-1 to 1.6.5-1 for consistency - Added changelog entry documenting the transition to C binary - Maintained version alignment with wssshtools package - Preserved all existing package functionality and dependencies
-
Stefy Lanza (nextime / spora ) authored
- Change build dependencies from Python to C build tools (gcc, make, libssl-dev, libsqlite3-dev, uuid-dev) - Update runtime dependencies to include libsqlite3-0 and libssl3 - Modify debian/rules to build wssshd2 C binary instead of PyInstaller - Update man page with C version command line options - Update package description to reflect C binary with embedded web interface - Keep all existing init scripts, logrotate, and service files unchanged - Maintain same user creation and path configurations
-
Stefy Lanza (nextime / spora ) authored
- Add SQLite support with proper database initialization - Create users table with id, username, password_hash, is_admin columns - Implement user management functions (add, update, delete, find) - Add security warning for default admin credentials - Add ASCII art banner on startup - Fix login/logout redirects to home page - Add --debug-database option for database operations logging - Support root user directory selection (/etc/wssshd vs ~/.config/wssshd) - Generate dynamic user management interface - Maintain compatibility with existing web interface features
-
Stefy Lanza (nextime / spora ) authored
-