mirror of
https://github.com/minio/minio.git
synced 2025-01-23 12:43:16 -05:00
Fix an issue with reusing closed network connetion, changing the way rateLimitedListener is initialized
This commit is contained in:
parent
dc11a411c7
commit
1f2e6a40a0
@ -27,7 +27,10 @@ import (
|
||||
// rateLimitedListener returns a Listener that accepts at most n simultaneous
|
||||
// connections from the provided Listener.
|
||||
func rateLimitedListener(l net.Listener, nconn int) net.Listener {
|
||||
return &rateLimitListener{l, make(chan struct{}, nconn)}
|
||||
if nconn > 0 {
|
||||
return &rateLimitListener{l, make(chan struct{}, nconn)}
|
||||
}
|
||||
return l
|
||||
}
|
||||
|
||||
type rateLimitListener struct {
|
||||
|
@ -92,11 +92,11 @@ func (n *minNet) getInheritedListeners() error {
|
||||
l, err := net.FileListener(file)
|
||||
if err != nil {
|
||||
file.Close()
|
||||
retErr = fmt.Errorf("error inheriting socket fd %d: %s", i, err)
|
||||
retErr = iodine.New(fmt.Errorf("error inheriting socket fd %d: %s", i, err), nil)
|
||||
return
|
||||
}
|
||||
if err := file.Close(); err != nil {
|
||||
retErr = fmt.Errorf("error closing inherited socket fd %d: %s", i, err)
|
||||
retErr = iodine.New(fmt.Errorf("error closing inherited socket fd %d: %s", i, err), nil)
|
||||
return
|
||||
}
|
||||
n.inheritedListeners = append(n.inheritedListeners, l)
|
||||
@ -159,10 +159,7 @@ func (n *minNet) ListenTCP(nett string, laddr *net.TCPAddr) (net.Listener, error
|
||||
if err != nil {
|
||||
return nil, iodine.New(err, nil)
|
||||
}
|
||||
if n.connLimit > 0 {
|
||||
l = rateLimitedListener(l, n.connLimit)
|
||||
}
|
||||
n.activeListeners = append(n.activeListeners, l)
|
||||
n.activeListeners = append(n.activeListeners, rateLimitedListener(l, n.connLimit))
|
||||
return l, nil
|
||||
}
|
||||
|
||||
@ -197,10 +194,7 @@ func (n *minNet) ListenUnix(nett string, laddr *net.UnixAddr) (net.Listener, err
|
||||
if err != nil {
|
||||
return nil, iodine.New(err, nil)
|
||||
}
|
||||
if n.connLimit > 0 {
|
||||
l = rateLimitedListener(l, n.connLimit)
|
||||
}
|
||||
n.activeListeners = append(n.activeListeners, l)
|
||||
n.activeListeners = append(n.activeListeners, rateLimitedListener(l, n.connLimit))
|
||||
return l, nil
|
||||
}
|
||||
|
||||
|
@ -87,7 +87,7 @@ func getAPIServer(conf api.Config, apiHandler http.Handler) (*http.Server, error
|
||||
func getRPCServer(rpcHandler http.Handler) *http.Server {
|
||||
// Minio server config
|
||||
httpServer := &http.Server{
|
||||
Addr: "127.0.0.1:9001", // TODO make this configurable
|
||||
Addr: ":9001", // TODO make this configurable
|
||||
Handler: rpcHandler,
|
||||
MaxHeaderBytes: 1 << 20,
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user