server: Extract resolveUrl helper function

Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
This commit is contained in:
Marek Siarkowicz 2023-03-28 11:47:57 +02:00
parent 85c48c4a60
commit d1f674d624

View File

@ -633,22 +633,14 @@ func configureClientListeners(cfg *Config) (sctxs map[string]*serveCtx, err erro
} }
for _, u := range cfg.ListenClientUrls { for _, u := range cfg.ListenClientUrls {
addr := u.Host addr, secure, network := resolveUrl(u)
network := "tcp"
if u.Scheme == "unix" || u.Scheme == "unixs" {
addr = u.Host + u.Path
network = "unix"
}
secure := u.Scheme == "https" || u.Scheme == "unixs"
insecure := !secure
sctx := sctxs[addr] sctx := sctxs[addr]
if sctx == nil { if sctx == nil {
sctx = newServeCtx(cfg.logger) sctx = newServeCtx(cfg.logger)
sctxs[addr] = sctx sctxs[addr] = sctx
} }
sctx.secure = sctx.secure || secure sctx.secure = sctx.secure || secure
sctx.insecure = sctx.insecure || insecure sctx.insecure = sctx.insecure || !secure
sctx.scheme = u.Scheme sctx.scheme = u.Scheme
sctx.addr = addr sctx.addr = addr
sctx.network = network sctx.network = network
@ -699,6 +691,17 @@ func configureClientListeners(cfg *Config) (sctxs map[string]*serveCtx, err erro
return sctxs, nil return sctxs, nil
} }
func resolveUrl(u url.URL) (addr string, secure bool, network string) {
addr = u.Host
network = "tcp"
if u.Scheme == "unix" || u.Scheme == "unixs" {
addr = u.Host + u.Path
network = "unix"
}
secure = u.Scheme == "https" || u.Scheme == "unixs"
return addr, secure, network
}
func (e *Etcd) serveClients() (err error) { func (e *Etcd) serveClients() (err error) {
if !e.cfg.ClientTLSInfo.Empty() { if !e.cfg.ClientTLSInfo.Empty() {
e.cfg.logger.Info( e.cfg.logger.Info(