Add -tcp flag to disable UDP and force audio through TCP tunnel

Adds Config.DisableUDP field. When set:
- DialWithDialer skips startUDP() entirely (no UDP socket, no UDP reader)
- WriteAudio skips WriteAudioUDP and goes straight to TCP-tunneled audio

Useful for debugging crypto/transport issues — rules out UDP-specific
problems like NAT, firewall, or OCB2 counter mismatches.
This commit is contained in:
Brandon McGinty (deepseek)
2026-08-09 00:30:27 -04:00
committed by Brandon McGinty
parent 8967fdff1a
commit 819ed6931d
3 changed files with 23 additions and 10 deletions
+2
View File
@@ -119,6 +119,7 @@ func main() {
autoTransmit := flag.Bool("auto-transmit", false, "start transmitting immediately on connect")
toneTest := flag.Bool("tone-test", false, "send a 440 Hz test tone instead of microphone (bypasses soundcard)")
toneTestOutput := flag.String("tone-out", "incoming.pcm", "file to save incoming audio to in tone-test mode")
tcpOnly := flag.Bool("tcp", false, "disable UDP, force audio through TCP tunnel")
logLevel := flag.String("log", "warn", "log level: debug, info, warn, error")
logFile := flag.String("logfile", "", "write logs to this file (in addition to stderr)")
@@ -218,6 +219,7 @@ func main() {
NoiseSuppressor: noise.NewSuppressor(),
}
b.Config.Buffers = *buffers
b.Config.DisableUDP = *tcpOnly
b.Hotkeys = b.UserConfig.GetHotkeys()
b.UserConfig.SaveConfig()