Commit graph

2546 commits

Author SHA1 Message Date
Andy Oknen
a094c423de Refactor configuration handling by removing writable flag from ConfigInfo and related UI components. Simplify config response structure in WebUIServer and update frontend to reflect these changes. Clean up unused CSS styles for improved layout. 2025-08-16 05:34:20 +08:00
Andy Oknen
8e44b57879 Remove backup creation logic from SaveConfig function and update related documentation. Adjust WebUIServer response structure and translations to reflect the absence of backup path information. 2025-08-15 20:25:29 +00:00
Andy Oknen
09f600c6cf Remove checks for absolute paths in validateConfigPath function to simplify path validation logic. This change streamlines the configuration handling process by eliminating unnecessary restrictions on system directory access. 2025-08-15 20:21:54 +00:00
Andy Oknen
2180e12b73 Remove safe file operation wrappers from configuration handling to streamline code. Update SECURITY.md to reflect the removal of these functions and adjust the section numbering accordingly. 2025-08-15 20:15:57 +00:00
Andy Oknen
443f9d0afd Add safe file operation wrappers and enhance path validation in configuration handling. Implemented safeReadFile, safeWriteFile, and safeStat functions to ensure file paths are validated before operations. Added checks for system directory access and path depth limits to improve security. Updated documentation to reflect these changes and included validation comments in the source code. 2025-08-15 20:08:43 +00:00
Andy Oknen
102e8e265e Add path validation for configuration files to prevent path traversal attacks. Implemented validateConfigPath function to sanitize and check file paths before use in configuration settings. Updated relevant functions to utilize this validation, ensuring security and integrity of file operations. 2025-08-15 19:56:30 +00:00
Andy Oknen
eeae6ee5cd Refactor node version display logic to ensure proper formatting only when both build name and version are available. Update CSS styles for login container and footer margins for improved layout consistency. 2025-08-15 19:52:07 +00:00
Andy Oknen
82b681367e Remove sendRestartSignal function from WebUIServer as it is no longer needed for cross-platform restart handling. Clean up code by eliminating unused imports and comments related to platform-specific signal handling. 2025-08-15 19:45:14 +00:00
Andy Oknen
8d0cbfd0ad Implement cross-platform restart handling in WebUIServer. Add sendRestartSignal function to manage process signals based on the operating system, improving server restart functionality. 2025-08-15 19:38:49 +00:00
Andy Oknen
03c0887646 Update CHANGELOG to include development environment improvements, highlighting Docker and VS Code Dev Container support for enhanced setup and workflow consistency. 2025-08-16 03:32:18 +08:00
Andy Oknen
9931a87240 Added information about PR to CHANGELOG 2025-08-16 03:30:28 +08:00
Andy Oknen
1c61269877 Refactor configuration editor to always display line numbers and update UI elements for better user experience. Replace toggle functionality with a fixed display of line numbers. Enhance notification messages and confirmation dialogs with translation support for improved localization. 2025-08-15 19:22:07 +00:00
Andy Oknen
9e11f76fc3 Update fallback return value in YggdrasilUtils to return 'N/A' when peer address is not available. 2025-08-15 16:07:26 +00:00
Andy Oknen
87251c5695 Update fallback return value in YggdrasilUtils to use 'Anonymous' instead of 'Unknown' for peer address. 2025-08-15 16:05:35 +00:00
Andy Oknen
0d0f524071 Implement JSON configuration editor in WebUI with save and restart functionality. Enhance configuration handling by converting data to JSON format and adding validation features. Update styles for improved user experience. 2025-08-15 15:59:00 +00:00
Andy Oknen
4935fcf226 Remove debug logging related to NodeInfo processing in various components to clean up the codebase. 2025-08-15 15:46:45 +00:00
Andy Oknen
e473c62936 Add methods to extract NodeInfo names and improve peer display in WebUI. Enhance debug logging for NodeInfo processing. 2025-08-15 15:42:09 +00:00
Andy Oknen
795cc506fd Update peer handling to extract and display NodeInfo names in CLI and admin responses. Enhance debug logging for NodeInfo processing in various components. 2025-08-15 15:38:27 +00:00
Andy Oknen
1f8f36860f Add NodeInfo field to PeerEntry and PeerInfo structures, and update related handlers to include NodeInfo in peer data retrieval and handshake processes. 2025-08-15 15:17:49 +00:00
Andy Oknen
c0a9bc802a Refactor peer display in CLI by removing name formatting and directly showing IP addresses. Clean up unused code related to peer name retrieval in admin handler. 2025-08-15 14:49:01 +00:00
Andy Oknen
8ee5c9fbe1 Enhance peer display by including peer names alongside IP addresses in the WebUI and CLI. Update peer data retrieval to fetch names from node information. 2025-08-15 14:25:58 +00:00
Andy Oknen
1ca92725af
Merge branch 'yggdrasil-network:develop' into develop 2025-08-15 21:12:45 +08:00
Klemens Nanni
6d195c6de3
OpenBSD: Pledge full filesystem read for Go's resolv.conf polling (#1275)
sys/kern/kern_pledge.c r1.329[0] removed the unveil bypass for "dns",
so "rpath" is needed for Go's DNS to stat(2) it.

Since current "/ rwc" and "cpath" with the new "rpath" amount to full
read access, there is no point in unveiling anymore.

0:
8d49ad01ac
2025-08-11 23:39:52 +01:00
Andy Oknen
ee470d32a7 Implement configuration management in WebUI with API integration for loading and saving configurations 2025-08-04 08:30:55 +00:00
Andy Oknen
19710fbc19 Implement modal system for adding peers and logout confirmation in WebUI 2025-07-31 14:25:38 +00:00
Andy Oknen
fcb5efd753 Add timeout handling and loading state management in API calls 2025-07-31 04:51:55 +00:00
Andy Oknen
1f75299312 Improve error handling and fallback mechanisms in WebUI server 2025-07-31 04:31:33 +00:00
Andy Oknen
791214c18b Enhance WebUI with new peer display features and multilingual support 2025-07-31 04:29:28 +00:00
Andy Oknen
83bd279ffa Enhance WebUI footer and mobile controls 2025-07-30 17:03:16 +00:00
Andy Oknen
428d29b176 Update authMiddleware to redirect to main page if no password is set and user accesses login page 2025-07-30 16:15:34 +00:00
Andy Oknen
2b3b4c39d2 Expose global state and update peer display logic in WebUI 2025-07-30 16:09:40 +00:00
Andy Oknen
675e2e71a5 Implement Admin API integration in WebUI for enhanced node management 2025-07-30 15:53:09 +00:00
Andy Oknen
3187114780 Refactor static file serving in WebUI to allow CSS and JS access without authentication, and implement theme toggle functionality in login and main pages 2025-07-30 13:21:30 +00:00
Andy Oknen
fc354865ea Implement theme toggle functionality and enhance UI styles 2025-07-30 13:21:23 +00:00
Andy Oknen
008ac3d864 Enhance WebUI with multilingual support 2025-07-30 09:19:25 +00:00
Andy Oknen
a984fba30d Add brute force protection to authentication system
- Implemented IP-based blocking after 3 failed login attempts, with a 1-minute lockout period.
- Enhanced login handler to check for blocked IPs and record failed attempts.
- Added tests for brute force protection and successful login clearing failed attempts.
- Updated README and example configuration to document new security features.
2025-07-30 09:19:05 +00:00
Andy Oknen
113dcbb72a Add password authentication to WebUI and implement session management
- Updated WebUI configuration to include a password field for authentication.
- Enhanced the WebUI server to handle login and logout functionality with session management.
- Added tests for authentication and session handling.
- Updated README and example configuration to reflect new authentication features.
2025-07-30 08:34:29 +00:00
Andy Oknen
51e1ef3ed0 Refactor error handling tests to use structured test cases and add address validation in server start method 2025-07-30 07:44:44 +00:00
Andy Oknen
170e369a53 Refactor Dockerfile to enhance Oh My Zsh installation and configuration for improved terminal experience 2025-07-30 07:40:05 +00:00
Andy Oknen
4acc41cc03 Update devcontainer configuration and Dockerfile to improve environment setup 2025-07-29 21:21:47 +00:00
Andy Oknen
a7185743cc Update .gitignore to include additional yggdrasil related files and runtime directories 2025-07-29 21:09:09 +00:00
Andy Oknen
13a6398001 Update CodeQL actions to version 3 in CI workflow 2025-07-29 21:05:44 +00:00
Andy Oknen
51a1a0a3d7 Refactor web UI server setup in main.go and update default host in config 2025-07-29 21:03:03 +00:00
Andy Oknen
345d5b9cbd Add minimal Web UI server 2025-07-29 20:14:41 +00:00
Andy Oknen
707e90b1b3 Add VS Code extension for managing TODOs in development container 2025-07-29 20:02:21 +00:00
Andy Oknen
d741657948 Refactor configuration struct comments and update default multicast interface settings 2025-07-29 18:50:47 +00:00
Andy Oknen
de40a2c1ad Add development environment setup with Docker and VS Code Dev Containers 2025-07-29 15:16:45 +00:00
Andy Oknen
133f87d3c7 Add .gitignore file to exclude yggdrasil related files 2025-07-29 15:16:36 +00:00
Neil Alexander
429403aea5
Update CI workers for packaging pipeline 2025-06-22 23:00:44 +01:00
Neil Alexander
ffc0dc92e0
Reduce minimum maxbackoff to 5 seconds 2025-06-22 16:37:34 +01:00