mirror of
https://github.com/caddyserver/caddy.git
synced 2025-06-04 11:14:42 +08:00
Add proxyprotocol directive and listener middleware plugin type (#1349)
* add support for listener middleware * add proxyprotocol directive * make caddy.Listener interface required * Remove tcpKeepAliveListener wrapper from Serve() This is now done in the Listen() function, along with other potential middleware.
This commit is contained in:
@ -25,6 +25,9 @@ type SiteConfig struct {
|
||||
// Compiled middleware stack
|
||||
middlewareChain Handler
|
||||
|
||||
// listener middleware stack
|
||||
listenerMiddleware []ListenerMiddleware
|
||||
|
||||
// Directory from which to serve files
|
||||
Root string
|
||||
|
||||
@ -80,6 +83,11 @@ func (s *SiteConfig) AddMiddleware(m Middleware) {
|
||||
s.middleware = append(s.middleware, m)
|
||||
}
|
||||
|
||||
// AddListenerMiddleware adds a listener middleware to a site's listenerMiddleware stack.
|
||||
func (s *SiteConfig) AddListenerMiddleware(l ListenerMiddleware) {
|
||||
s.listenerMiddleware = append(s.listenerMiddleware, l)
|
||||
}
|
||||
|
||||
// TLSConfig returns s.TLS.
|
||||
func (s SiteConfig) TLSConfig() *caddytls.Config {
|
||||
return s.TLS
|
||||
@ -99,3 +107,8 @@ func (s SiteConfig) Port() string {
|
||||
func (s SiteConfig) Middleware() []Middleware {
|
||||
return s.middleware
|
||||
}
|
||||
|
||||
// ListenerMiddleware returns s.listenerMiddleware
|
||||
func (s SiteConfig) ListenerMiddleware() []ListenerMiddleware {
|
||||
return s.listenerMiddleware
|
||||
}
|
||||
|
Reference in New Issue
Block a user