Skip to content

Commit

Permalink
fix addr value when assign port automatically
Browse files Browse the repository at this point in the history
  • Loading branch information
lesismal committed Nov 7, 2022
1 parent 1bfe47b commit 55d544e
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 7 deletions.
2 changes: 2 additions & 0 deletions engine_std.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ func (g *Engine) Start() error {
}
return err
}
g.addrs[i] = ln.listener.Addr().String()
g.listeners = append(g.listeners, ln)
}
case "udp", "udp4", "udp6":
Expand All @@ -47,6 +48,7 @@ func (g *Engine) Start() error {
}
return err
}
g.addrs[i] = ln.LocalAddr().String()
udpListeners = append(udpListeners, ln)
}
}
Expand Down
2 changes: 2 additions & 0 deletions engine_unix.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ func (g *Engine) Start() error {
}
return err
}
g.addrs[i] = ln.listener.Addr().String()
g.listeners = append(g.listeners, ln)
}
case "udp", "udp4", "udp6":
Expand All @@ -47,6 +48,7 @@ func (g *Engine) Start() error {
}
return err
}
g.addrs[i] = ln.LocalAddr().String()
udpListeners = append(udpListeners, ln)
}
}
Expand Down
24 changes: 17 additions & 7 deletions nbhttp/engine.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ type ConfAddr struct {
Network string
Addr string
TLSConfig *tls.Config
pAddr *string
}

// Config .
Expand Down Expand Up @@ -278,7 +279,8 @@ func (e *Engine) startListeners() error {
e.listenerMux = lmux.New(e.MaxBlockingOnline)
}

for _, conf := range e.AddrConfigsTLS {
for i, _ := range e.AddrConfigsTLS {
conf := &e.AddrConfigsTLS[i]
if conf.Addr != "" {
network := conf.Network
if network == "" {
Expand All @@ -294,6 +296,10 @@ func (e *Engine) startListeners() error {
}
return err
}
conf.Addr = ln.Addr().String()
if conf.pAddr != nil {
*conf.pAddr = conf.Addr
}
logging.Info("Serve TLS On: [%v]", conf.Addr)

tlsConfig := conf.TLSConfig
Expand All @@ -319,7 +325,8 @@ func (e *Engine) startListeners() error {
}
}

for _, conf := range e.AddrConfigs {
for i, _ := range e.AddrConfigs {
conf := &e.AddrConfigs[i]
if conf.Addr != "" {
network := conf.Network
if network == "" {
Expand All @@ -335,7 +342,10 @@ func (e *Engine) startListeners() error {
}
return err
}
e.listeners = append(e.listeners, ln)
conf.Addr = ln.Addr().String()
if conf.pAddr != nil {
*conf.pAddr = conf.Addr
}

logging.Info("Serve NonTLS On: [%v]", conf.Addr)

Expand Down Expand Up @@ -871,11 +881,11 @@ func NewEngine(conf Config) *Engine {
g := nbio.NewEngine(gopherConf)
g.Execute = serverExecutor

for _, addr := range conf.Addrs {
conf.AddrConfigs = append(conf.AddrConfigs, ConfAddr{Addr: addr})
for i, addr := range conf.Addrs {
conf.AddrConfigs = append(conf.AddrConfigs, ConfAddr{Addr: addr, pAddr: &conf.Addrs[i]})
}
for _, addr := range conf.AddrsTLS {
conf.AddrConfigsTLS = append(conf.AddrConfigsTLS, ConfAddr{Addr: addr})
for i, addr := range conf.AddrsTLS {
conf.AddrConfigsTLS = append(conf.AddrConfigsTLS, ConfAddr{Addr: addr, pAddr: &conf.AddrsTLS[i]})
}

engine := &Engine{
Expand Down

0 comments on commit 55d544e

Please sign in to comment.