From d6edd6ca017f2d297242b4954fab9a9f147c4a98 Mon Sep 17 00:00:00 2001 From: Owen Date: Wed, 26 Nov 2025 17:39:10 -0500 Subject: [PATCH] Make hp regular --- holepunch/holepunch.go | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/holepunch/holepunch.go b/holepunch/holepunch.go index df88530..4c09906 100644 --- a/holepunch/holepunch.go +++ b/holepunch/holepunch.go @@ -42,6 +42,8 @@ func NewManager(sharedBind *bind.SharedBind, ID string, clientType string) *Mana } } +const sendHolepunchInterval = 15 * time.Second + // SetToken updates the authentication token used for hole punching func (m *Manager) SetToken(token string) { m.mu.Lock() @@ -173,20 +175,14 @@ func (m *Manager) runMultipleExitNodes(exitNodes []ExitNode) { } } - ticker := time.NewTicker(1 * time.Second) + ticker := time.NewTicker(sendHolepunchInterval) defer ticker.Stop() - timeout := time.NewTimer(5 * time.Second) - defer timeout.Stop() - for { select { case <-m.stopChan: logger.Debug("Hole punch stopped by signal") return - case <-timeout.C: - logger.Debug("Hole punch timeout reached") - return case <-ticker.C: // Send hole punch to all exit nodes for _, node := range resolvedNodes { @@ -226,20 +222,14 @@ func (m *Manager) runSingleEndpoint(endpoint, serverPubKey string) { logger.Warn("Failed to send initial hole punch: %v", err) } - ticker := time.NewTicker(1 * time.Second) + ticker := time.NewTicker(sendHolepunchInterval) defer ticker.Stop() - timeout := time.NewTimer(5 * time.Second) - defer timeout.Stop() - for { select { case <-m.stopChan: logger.Debug("Hole punch stopped by signal") return - case <-timeout.C: - logger.Debug("Hole punch timeout reached") - return case <-ticker.C: if err := m.sendHolePunch(remoteAddr, serverPubKey); err != nil { logger.Debug("Failed to send hole punch: %v", err)