replacing wireguard go and creating amnezia start function per OS - #42
Conversation
The wireguard-go windows implementation doesn't implement with the same function signature as other OS implementations for the IPC package, this commit is creating a endpoint start function for windows and another for unix implementations with the hope that the IPC stuff is fixed. The windows IPC implementation create and manage pipe, the linux receives one as parameter
|
I'm getting this error trying to build macOS: Do we need to update github.com/sagernet/sing? |
I didn't saw this comment, thanks for bringing this @atavism I'll investigate but probably yes, it must be some version that wasn't updated |
…tion to files with specific buid tags per OS
|
@WendelHime I don't think |
|
@atavism yes we need to replace that module, but that must happen in lantern-outline |
@garmr-ulfr This PR is not to make amnezia works, but to unblock building lantern-outline versions for windows |
|
@atavism |
There was a problem hiding this comment.
Pull Request Overview
This PR replaces the wireguard-go implementation and introduces OS-specific UAPI (User-space API) socket handling for Amnezia transport functionality. The changes create platform-specific implementations for Windows and non-Windows systems to properly handle socket operations.
- Introduces OS-specific UAPI socket handling with dedicated implementations for Windows and other platforms
- Replaces direct wireguard-go IPC calls with abstracted uapiListen function
- Updates dependencies to use a forked version of wireguard-go
Reviewed Changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| transport/amnezia/uapi_windows.go | Windows-specific UAPI socket listener implementation |
| transport/amnezia/uapi_other.go | Non-Windows UAPI socket listener with file-based socket opening |
| transport/amnezia/endpoint_options.go | Adds package documentation comment |
| transport/amnezia/endpoint.go | Refactors UAPI socket handling to use new abstracted function |
| go.mod | Updates wireguard-go dependency to forked version and reorganizes imports |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
No description provided.