type serveCtx …
type servers …
func newServeCtx(lg *zap.Logger) *serveCtx { … }
func (sctx *serveCtx) serve(
s *etcdserver.EtcdServer,
tlsinfo *transport.TLSInfo,
handler http.Handler,
errHandler func(error),
grpcDialForRestGatewayBackends func(ctx context.Context) (*grpc.ClientConn, error),
splitHttp bool,
gopts ...grpc.ServerOption) (err error) { … }
func configureHttpServer(srv *http.Server, cfg config.ServerConfig) error { … }
func grpcHandlerFunc(grpcServer *grpc.Server, otherHandler http.Handler) http.Handler { … }
type registerHandlerFunc …
func (sctx *serveCtx) registerGateway(dial func(ctx context.Context) (*grpc.ClientConn, error)) (*gw.ServeMux, error) { … }
type wsProxyZapLogger …
func (w wsProxyZapLogger) Warnln(i ...interface{ … }
func (w wsProxyZapLogger) Debugln(i ...interface{ … }
func (sctx *serveCtx) createMux(gwmux *gw.ServeMux, handler http.Handler) *http.ServeMux { … }
func createAccessController(lg *zap.Logger, s *etcdserver.EtcdServer, mux *http.ServeMux) http.Handler { … }
type accessController …
func (ac *accessController) ServeHTTP(rw http.ResponseWriter, req *http.Request) { … }
func addCORSHeader(w http.ResponseWriter, origin string) { … }
func errCVE20185702(host string) string { … }
func WrapCORS(cors map[string]struct{ … }
type corsHandler …
func (ch *corsHandler) ServeHTTP(rw http.ResponseWriter, req *http.Request) { … }
func (sctx *serveCtx) registerUserHandler(s string, h http.Handler) { … }
func (sctx *serveCtx) registerPprof() { … }
func (sctx *serveCtx) registerTrace() { … }