modification to a Golang+Kotlin android app, maybe also a companion android app (optional)

Task details
POSTED
Posted on May 24th, 2024
STATUS
Filled
DURATION
Negotiable
VALUE
$200.00 per project (Negotiable)
LOCATION
Remote
TYPE
One Time
APPLICATIONS
1
Skills Required
  • IT & Networking - Other

some relatively minor modifications to be made to an open source app that uses Kotlin and Golang

 (https://github.com/WireGuard/wireguard-android yes, the android wireguard client) . 

The nature of the modification is to force wireguard to use UDP SOCKS5 to send VPN traffic through a shadowsocks client launched on same phone 

(already doable by building shadowsocks-rust on the phone and some root trickery (policy routing), but the potential target audience for this solution can't be bothered with modifying android policy routing) 

 wireguard-android has a userspace golang wireguard implementation, which is where I suspect most of modification work will have to take place. Fortunately there are plenty golang implementations of socks5 functions (like https://github.com/txthinking/socks5 ) so the modification more or less amounts to "duct taping" the SOCKS5 functions to golang userspace-wireguard library they app uses, and modifying the app itself (Kotlin) to effectively use and configure the modified WG.

 

Optional additional task: companion app with functionality related to the modification (start and agressively keep command-line programs in android, as itself or as root, and restart them if they die, display a notification to make double-plus sure the entire shebang persists) 

These are related but separate tasks (separate estimates for the modified wireguard and the companion "background command runner" app)  

 

Ideally open-sourced and published to github (I can do that myself, but if you want it for your portfolio and have established github presence that's better )


Are you an employer? Post a similar job