@@ -172,16 +172,17 @@ func (c *TunnelConfig) RegistrationOptions(connectionID uint8, OriginLocalIP str
172172 }
173173}
174174
175- func (c * TunnelConfig ) ConnectionOptions (originLocalAddr string ) * tunnelpogs.ConnectionOptions {
175+ func (c * TunnelConfig ) ConnectionOptions (originLocalAddr string , numPreviousAttempts uint8 ) * tunnelpogs.ConnectionOptions {
176176 // attempt to parse out origin IP, but don't fail since it's informational field
177177 host , _ , _ := net .SplitHostPort (originLocalAddr )
178178 originIP := net .ParseIP (host )
179179
180180 return & tunnelpogs.ConnectionOptions {
181- Client : c .NamedTunnel .Client ,
182- OriginLocalIP : originIP ,
183- ReplaceExisting : c .ReplaceExisting ,
184- CompressionQuality : uint8 (c .CompressionQuality ),
181+ Client : c .NamedTunnel .Client ,
182+ OriginLocalIP : originIP ,
183+ ReplaceExisting : c .ReplaceExisting ,
184+ CompressionQuality : uint8 (c .CompressionQuality ),
185+ NumPreviousAttempts : numPreviousAttempts ,
185186 }
186187}
187188
@@ -305,7 +306,7 @@ func ServeTunnel(
305306 }()
306307
307308 if config .NamedTunnel != nil {
308- return RegisterConnection (ctx , handler .muxer , config , connectionIndex , originLocalAddr )
309+ return RegisterConnection (ctx , handler .muxer , config , connectionIndex , originLocalAddr , uint8 ( backoff . retries ) )
309310 }
310311
311312 if config .UseReconnectToken && connectedFuse .Value () {
@@ -416,6 +417,7 @@ func RegisterConnection(
416417 config * TunnelConfig ,
417418 connectionIndex uint8 ,
418419 originLocalAddr string ,
420+ numPreviousAttempts uint8 ,
419421) error {
420422 const registerConnection = "registerConnection"
421423
@@ -432,7 +434,7 @@ func RegisterConnection(
432434 config .NamedTunnel .Auth ,
433435 config .NamedTunnel .ID ,
434436 connectionIndex ,
435- config .ConnectionOptions (originLocalAddr ),
437+ config .ConnectionOptions (originLocalAddr , numPreviousAttempts ),
436438 )
437439 if err != nil {
438440 if err .Error () == DuplicateConnectionError {
0 commit comments