Commit Graph

103 Commits

Author SHA1 Message Date
7573e942f1 refactor: streamline Read and Close methods in buffer.go for improved clarity and efficiency 2025-11-20 21:45:06 -06:00
d3cf775394 refactor: simplify RequestPath method by removing unnecessary error handling 2025-11-20 21:45:01 -06:00
72d70b2141 feat: add receipt management for packet handling, including registration, unregistration, and proof validation 2025-11-20 21:31:36 -06:00
06da42a148 feat: implement PacketReceipt struct with methods for receipt creation, validation, and timeout handling 2025-11-20 21:31:31 -06:00
ec8b843cd4 feat: enhance Packet struct with new fields and hash methods for improved functionality 2025-11-20 21:31:24 -06:00
9e7e9a71ca feat: add link establishment tests and implement key generation, handshake, and proof validation in the Link module 2025-11-20 21:31:18 -06:00
b0669954a4 code cleanup 2025-11-20 21:25:50 -06:00
ded5853026 move platformGetRTT implementation to tcp_common.go for non-Linux platforms 2025-11-20 21:24:58 -06:00
b0fad14504 fix: add security comment for TCP_INFO syscall in platformGetRTT function
Some checks failed
Go Build Multi-Platform / build (amd64, darwin) (push) Failing after 23s
Go Build Multi-Platform / build (amd64, freebsd) (push) Failing after 24s
Go Build Multi-Platform / build (amd64, windows) (push) Failing after 39s
Go Build Multi-Platform / build (amd64, linux) (push) Failing after 41s
Go Build Multi-Platform / build (arm64, freebsd) (push) Has been cancelled
Go Build Multi-Platform / build (arm64, linux) (push) Has been cancelled
Go Build Multi-Platform / build (arm64, windows) (push) Has been cancelled
Go Build Multi-Platform / Create Release (push) Has been cancelled
Go Build Multi-Platform / build (arm, linux) (push) Has been cancelled
Go Build Multi-Platform / build (arm, windows) (push) Has been cancelled
Go Revive Lint / lint (push) Has been cancelled
Go Build Multi-Platform / build (arm, freebsd) (push) Has been cancelled
Go Test Multi-Platform / Test (macos-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (ubuntu-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (windows-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (macos-latest, arm64) (push) Has been cancelled
Go Test Multi-Platform / Test (ubuntu-latest, arm64) (push) Has been cancelled
Go Build Multi-Platform / build (arm64, darwin) (push) Has been cancelled
Run Gosec / tests (push) Has been cancelled
2025-11-20 18:21:14 -06:00
24aa4fa88b remove default RTT implementation for non-Linux platforms and enhance keepalive period configuration for FreeBSD and Windows
Some checks failed
Go Build Multi-Platform / build (arm, linux) (push) Failing after 38s
Go Build Multi-Platform / build (arm, windows) (push) Failing after 33s
Go Build Multi-Platform / build (arm, freebsd) (push) Failing after 41s
Go Build Multi-Platform / build (arm64, darwin) (push) Failing after 31s
Go Build Multi-Platform / build (arm64, freebsd) (push) Failing after 22s
Go Build Multi-Platform / build (arm64, linux) (push) Failing after 29s
Go Build Multi-Platform / build (arm64, windows) (push) Failing after 37s
Go Build Multi-Platform / build (amd64, darwin) (push) Failing after 31s
Go Build Multi-Platform / build (amd64, freebsd) (push) Failing after 30s
Go Build Multi-Platform / build (amd64, linux) (push) Failing after 34s
Go Build Multi-Platform / build (amd64, windows) (push) Failing after 33s
Go Test Multi-Platform / Test (ubuntu-latest, arm64) (push) Successful in 1m0s
Go Build Multi-Platform / Create Release (push) Has been skipped
Go Revive Lint / lint (push) Successful in 48s
Go Test Multi-Platform / Test (ubuntu-latest, amd64) (push) Successful in 1m25s
Run Gosec / tests (push) Failing after 58s
Go Test Multi-Platform / Test (macos-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (windows-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (macos-latest, arm64) (push) Has been cancelled
2025-11-20 18:14:57 -06:00
189645940c fix: add security comments to clarify handling of non-critical errors in ratchet file operations
Some checks failed
Go Build Multi-Platform / build (arm, freebsd) (push) Failing after 35s
Go Build Multi-Platform / build (arm, linux) (push) Failing after 39s
Go Build Multi-Platform / build (arm, windows) (push) Failing after 38s
Go Build Multi-Platform / build (arm64, freebsd) (push) Failing after 30s
Go Build Multi-Platform / build (amd64, darwin) (push) Failing after 29s
Go Build Multi-Platform / build (amd64, freebsd) (push) Failing after 33s
Go Build Multi-Platform / build (amd64, windows) (push) Failing after 32s
Go Build Multi-Platform / build (amd64, linux) (push) Failing after 35s
Go Build Multi-Platform / build (arm64, darwin) (push) Failing after 36s
Go Build Multi-Platform / build (arm64, linux) (push) Failing after 36s
Go Build Multi-Platform / build (arm64, windows) (push) Failing after 34s
Run Gosec / tests (push) Failing after 58s
Go Test Multi-Platform / Test (macos-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (windows-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (ubuntu-latest, arm64) (push) Successful in 46s
Go Build Multi-Platform / Create Release (push) Has been skipped
Go Test Multi-Platform / Test (ubuntu-latest, amd64) (push) Successful in 1m28s
Go Revive Lint / lint (push) Successful in 55s
Go Test Multi-Platform / Test (macos-latest, arm64) (push) Has been cancelled
2025-11-20 18:04:30 -06:00
4f37df2fc0 fix: add security comments to handle non-critical errors in ratchet persistence 2025-11-20 18:04:26 -06:00
4859f5513a fix: add security comment for Unix timestamp handling in CreatePacket function 2025-11-20 18:04:22 -06:00
2a2d6d6515 feat: add platform-specific TCP timeout configurations for Darwin, FreeBSD, Windows, and Linux 2025-11-20 18:04:11 -06:00
3d943aaaef refactor: improve announce packet handling by clarifying address extraction and validation logic
Some checks failed
Go Build Multi-Platform / build (arm, freebsd) (push) Has been cancelled
Go Build Multi-Platform / build (arm, linux) (push) Has been cancelled
Go Build Multi-Platform / build (arm, windows) (push) Has been cancelled
Go Build Multi-Platform / build (arm64, darwin) (push) Has been cancelled
Go Build Multi-Platform / build (amd64, windows) (push) Has been cancelled
Go Test Multi-Platform / Test (ubuntu-latest, amd64) (push) Has been cancelled
Run Gosec / tests (push) Has been cancelled
Go Revive Lint / lint (push) Has been cancelled
Go Test Multi-Platform / Test (macos-latest, amd64) (push) Has been cancelled
Go Build Multi-Platform / build (amd64, linux) (push) Has been cancelled
Go Test Multi-Platform / Test (windows-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (macos-latest, arm64) (push) Has been cancelled
Go Test Multi-Platform / Test (ubuntu-latest, arm64) (push) Has been cancelled
Go Build Multi-Platform / build (amd64, freebsd) (push) Has been cancelled
Go Build Multi-Platform / build (arm64, freebsd) (push) Has been cancelled
Go Build Multi-Platform / build (arm64, linux) (push) Has been cancelled
Go Build Multi-Platform / build (arm64, windows) (push) Has been cancelled
Go Build Multi-Platform / Create Release (push) Has been cancelled
Go Build Multi-Platform / build (amd64, darwin) (push) Has started running
2025-11-20 17:57:13 -06:00
d5d7fbdb79 refactor: simplify comments in getHashablePart function for clarity 2025-11-20 17:57:07 -06:00
fdfe895d2d feat: enhance TCP and UDP interfaces with improved timeout settings and MTU configuration 2025-11-20 17:57:00 -06:00
01e639133b feat: enhance AutoInterface with improved configuration and multicast handling 2025-11-20 17:56:54 -06:00
6c6953e664 refactor: update identity management to use raw byte storage and msgpack for ratchet persistence 2025-11-20 17:56:48 -06:00
b4039dc148 feat: implement ratchet management with persistence and rotation 2025-11-20 17:56:40 -06:00
ba18fba43e Fix announce packet and debug logging 2025-11-20 17:56:29 -06:00
f097bb3241 security: use net.JoinHostPort instead of fmt.Sprintf
Some checks failed
Benchmark GC Performance / benchmark (push) Successful in 1m19s
Run Gosec / tests (push) Successful in 48s
Go Revive Lint / lint (push) Successful in 34s
Go Build Multi-Platform / build (amd64, darwin) (push) Failing after 31s
Go Build Multi-Platform / build (amd64, windows) (push) Failing after 34s
Go Build Multi-Platform / build (arm, freebsd) (push) Failing after 29s
Go Build Multi-Platform / build (arm, linux) (push) Failing after 27s
Go Build Multi-Platform / Create Release (push) Has been skipped
Go Test Multi-Platform / Test (ubuntu-latest, arm64) (push) Successful in 48s
Go Test Multi-Platform / Test (ubuntu-latest, amd64) (push) Successful in 1m28s
Go Build Multi-Platform / build (amd64, freebsd) (push) Failing after 27s
Go Build Multi-Platform / build (amd64, linux) (push) Failing after 27s
Go Build Multi-Platform / build (arm, windows) (push) Failing after 27s
Go Build Multi-Platform / build (arm64, darwin) (push) Failing after 27s
Go Build Multi-Platform / build (arm64, freebsd) (push) Failing after 27s
Performance Monitor / performance-monitor (push) Successful in 2m40s
Go Build Multi-Platform / build (arm64, windows) (push) Failing after 25s
Go Build Multi-Platform / build (arm64, linux) (push) Failing after 27s
Go Test Multi-Platform / Test (macos-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (windows-latest, amd64) (push) Has been cancelled
Go Test Multi-Platform / Test (macos-latest, arm64) (push) Has been cancelled
2025-11-09 00:05:36 -06:00
22fc5093db perf: combine multiple append calls in transport 2025-11-09 00:05:31 -06:00
636d400f1e refactor: migrate to structured debug logging 2025-11-09 00:00:55 -06:00
fd5eb65bc0 fix: use context.TODO() in logger.Enabled check for improved clarity 2025-11-07 12:51:14 -06:00
4e13fe523b fix: resolve deepsource linter issues
- Fixed the append usage warning (CRT-D0001)
- Fixed the nil context warning (SCC-SA1012)
2025-11-07 12:47:47 -06:00
dd2cc3e3d9 update logging function to improve argument handling 2025-11-07 12:44:40 -06:00
088ba3337d Add debug package for logging with adjustable levels
- Introduced a new debug package that allows for logging at various levels (1-7).
- Implemented initialization, logger retrieval, and logging functions.
- Added functionality to set and get the current debug level.
2025-11-07 12:41:14 -06:00
8da4a759f5 Add FromHash method to create destinations from known hashes and enhance link handling capabilities 2025-10-07 22:44:08 -05:00
dff1489ee5 Add link ID generation in Establish method for connection requests 2025-10-07 22:44:02 -05:00
30c97bc9dd Implement identity recall functionality to retrieve existing identities by hash 2025-10-07 22:43:55 -05:00
005e2566aa Add destination registration and link handling in Transport 2025-10-07 22:43:45 -05:00
cc10830df3 Fix CreatePacket method in Announce struct to dynamically set context flag based on the existence of ratchet data. 2025-10-07 21:53:39 -05:00
b548e5711e Add destination type constants for packet handling in types.go 2025-10-07 21:31:45 -05:00
cc89bfef6e Update destination hash calculation in handleAnnouncePacket to use SHA256. 2025-10-07 21:31:40 -05:00
45a3ac1e87 Fix destination hash calculation by incorporating SHA256 for name hashing. 2025-10-07 21:31:16 -05:00
e39936ac30 Fix Announce struct to include destination name and hash validation.
Also update New and NewAnnounce functions to require destinationHash and destinationName parameters.
2025-10-07 21:30:57 -05:00
b601ae1c51 Add read loop for UDP interface to handle incoming packets asynchronously. 2025-10-07 21:30:27 -05:00
f53194be25 Fix announce packet handling to align with RNS specification. Enhance payload parsing, signature verification, and destination hash validation. Improve logging for better debugging of announce packet processing. 2025-09-27 05:48:33 -05:00
ad732d1465 mark interface as online 2025-09-27 05:47:28 -05:00
911fe3ea8e Add support for 32-byte Ed25519 2025-09-27 05:46:51 -05:00
be34168a1b Refine comment in TCPClientInterface to clarify HDLC framing usage for TCP connections 2025-09-27 04:41:36 -05:00
cebab6b2f3 Add debug logging and missing packet data 2025-09-27 04:41:25 -05:00
fdcb371582 Fix announce packet creation and sending logic to use the announce package. Enhance error handling and logging for interface checks during packet transmission. 2025-09-27 04:40:47 -05:00
f01b1f8bac Update Decrypt method in Identity to validate token structure and HMAC. Update extraction logic for ephemeral public key, ciphertext, and MAC, ensuring proper error handling for token size and HMAC validation. 2025-09-27 04:40:35 -05:00
a0eca36884 Update logging in HandlePacket and handleAnnouncePacket. 2025-09-27 04:30:59 -05:00
972d00df92 Fix TCPClientInterface readLoop and handlePacket methods to streamline HDLC framing logic and improve packet handling. Remove KISS framing support and update logging for received packets. Ensure outgoing data uses HDLC framing consistently. 2025-09-27 04:30:28 -05:00
483b6e562b Update announce packet creation and sending logic to utilize transport methods 2025-09-27 04:30:13 -05:00
b7cc0c39b4 Fix announce data parsing to include ratchet field and update length checks 2025-09-27 04:26:22 -05:00
456a95d569 Add benchmarking tests for packet and transport operations 2025-09-25 12:42:44 -05:00