Преглед на файлове

etcdmain: warn when listening on HTTP if TLS is set

If the user sets TLS info, this implies that he wants to listen on TLS.
If etcd finds that urls to listen is still HTTP schema, it prints out
warning to notify user about possible wrong setting.
Yicheng Qin преди 10 години
родител
ревизия
24db661401
променени са 1 файла, в които са добавени 6 реда и са изтрити 0 реда
  1. 6 0
      etcdmain/etcd.go

+ 6 - 0
etcdmain/etcd.go

@@ -146,6 +146,9 @@ func startEtcd(cfg *config) (<-chan struct{}, error) {
 	}
 	}
 	plns := make([]net.Listener, 0)
 	plns := make([]net.Listener, 0)
 	for _, u := range cfg.lpurls {
 	for _, u := range cfg.lpurls {
+		if u.Scheme == "http" && !cfg.peerTLSInfo.Empty() {
+			plog.Warningf("The scheme of peer url %s is http while peer key/cert files are presented. Ignored peer key/cert files.", u.String())
+		}
 		var l net.Listener
 		var l net.Listener
 		l, err = transport.NewTimeoutListener(u.Host, u.Scheme, cfg.peerTLSInfo, rafthttp.ConnReadTimeout, rafthttp.ConnWriteTimeout)
 		l, err = transport.NewTimeoutListener(u.Host, u.Scheme, cfg.peerTLSInfo, rafthttp.ConnReadTimeout, rafthttp.ConnWriteTimeout)
 		if err != nil {
 		if err != nil {
@@ -168,6 +171,9 @@ func startEtcd(cfg *config) (<-chan struct{}, error) {
 	}
 	}
 	clns := make([]net.Listener, 0)
 	clns := make([]net.Listener, 0)
 	for _, u := range cfg.lcurls {
 	for _, u := range cfg.lcurls {
+		if u.Scheme == "http" && !cfg.clientTLSInfo.Empty() {
+			plog.Warningf("The scheme of client url %s is http while client key/cert files are presented. Ignored client key/cert files.", u.String())
+		}
 		var l net.Listener
 		var l net.Listener
 		l, err = transport.NewKeepAliveListener(u.Host, u.Scheme, cfg.clientTLSInfo)
 		l, err = transport.NewKeepAliveListener(u.Host, u.Scheme, cfg.clientTLSInfo)
 		if err != nil {
 		if err != nil {