Commit graph

2533 commits

Author SHA1 Message Date
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
Neil Alexander
81543e9cc0
Remove Go 1.22 from CI 2025-06-21 20:09:12 +01:00
Neil Alexander
9e5c25d4af
Update to Go 1.23, update dependencies 2025-06-21 20:08:08 +01:00
Neil
390dba0471
Update readme 2025-06-02 22:02:02 +01:00
Sergey Alirzaev
47818a1a7c
apparmor: add yggdrasilctl policy (#1235)
Some checks failed
Yggdrasil / Lint (push) Has been cancelled
Yggdrasil / Analyse (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.24) (push) Has been cancelled
Yggdrasil / All tests passed (push) Has been cancelled
2025-04-15 17:17:52 +01:00
Sergey Alirzaev
6377d7f071
contrib/openrc: remove SIGHUP logic (#1236)
as it is long gone from the daemon code
and unexpectedly kills the daemon
2025-04-15 17:15:09 +01:00
Neil Alexander
5b8dbc8b1e
Add summary helpers to mobile wrapper
Some checks failed
Yggdrasil / Lint (push) Has been cancelled
Yggdrasil / Analyse (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.24) (push) Has been cancelled
Yggdrasil / All tests passed (push) Has been cancelled
2025-03-31 10:18:57 +01:00
patrini32
73705ff09d
Typo fix (#1232)
Some checks failed
Yggdrasil / Analyse (push) Has been cancelled
Yggdrasil / Lint (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.24) (push) Has been cancelled
Yggdrasil / All tests passed (push) Has been cancelled
2025-02-20 09:45:49 +00:00
Neil Alexander
3b18909f70
Update dependencies
Some checks failed
Yggdrasil / Lint (push) Has been cancelled
Yggdrasil / Analyse (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Linux, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (Windows, Go 1.24) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.22) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.23) (push) Has been cancelled
Yggdrasil / Build & Test (macOS, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross freebsd, Go 1.24) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.22) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.23) (push) Has been cancelled
Yggdrasil / Build (Cross openbsd, Go 1.24) (push) Has been cancelled
Yggdrasil / All tests passed (push) Has been cancelled
2025-02-18 12:57:58 +00:00
Neil Alexander
58b727d1f0
Add Go 1.24 to CI 2025-02-18 12:52:21 +00:00
Klemens Nanni
782c0250d7
Use pledge(2) on OpenBSD (#1215)
Straight forward thanks to all privileged operations being done early
enough during startup.
2024-12-22 11:04:26 +00:00
Neil Alexander
213f72b840
Yggdrasil 0.5.12 2024-12-18 22:34:30 +00:00
Neil Alexander
1fbcf3b3c2
Rename latency_ms to latency in getPeers response since it isn't even milliseconds anymore 2024-12-18 22:21:23 +00:00
Peter Gervai
22bc9c44e2
genkeys print the number of generated keys (#1217)
It is good to know how many resources have we carelessly wasted. :-)
2024-12-18 19:56:46 +00:00