mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-10-30 18:22:49 -04:00 
			
		
		
		
	Defer loading directives until needed (fix for previous commit)
This change is still experimental.
This commit is contained in:
		
							parent
							
								
									5a691fbaf5
								
							
						
					
					
						commit
						17709a7d3f
					
				
							
								
								
									
										2
									
								
								caddy.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								caddy.go
									
									
									
									
									
								
							| @ -455,7 +455,7 @@ func startWithListenerFds(cdyfile Input, inst *Instance, restartFds map[string]r | ||||
| 		return err | ||||
| 	} | ||||
| 
 | ||||
| 	err = executeDirectives(inst, cdyfile.Path(), stype.Directives, sblocks) | ||||
| 	err = executeDirectives(inst, cdyfile.Path(), stype.Directives(), sblocks) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
|  | ||||
| @ -26,7 +26,7 @@ func init() { | ||||
| 	flag.BoolVar(&QUIC, "quic", false, "Use experimental QUIC") | ||||
| 
 | ||||
| 	caddy.RegisterServerType(serverType, caddy.ServerType{ | ||||
| 		Directives: directives, | ||||
| 		Directives: func() []string { return directives }, | ||||
| 		DefaultInput: func() caddy.Input { | ||||
| 			if Port == DefaultPort && Host != "" { | ||||
| 				// by leaving the port blank in this case we give auto HTTPS | ||||
|  | ||||
							
								
								
									
										11
									
								
								plugins.go
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								plugins.go
									
									
									
									
									
								
							| @ -79,7 +79,7 @@ func ValidDirectives(serverType string) []string { | ||||
| 	if err != nil { | ||||
| 		return nil | ||||
| 	} | ||||
| 	return stype.Directives | ||||
| 	return stype.Directives() | ||||
| } | ||||
| 
 | ||||
| // ServerListener pairs a server to its listener and/or packetconn. | ||||
| @ -145,10 +145,11 @@ func RegisterServerType(typeName string, srv ServerType) { | ||||
| 
 | ||||
| // ServerType contains information about a server type. | ||||
| type ServerType struct { | ||||
| 	// List of directives, in execution order, that are | ||||
| 	// valid for this server type. Directives should be | ||||
| 	// one word if possible and lower-cased. | ||||
| 	Directives []string | ||||
| 	// Function that returns the list of directives, in | ||||
| 	// execution order, that are valid for this server | ||||
| 	// type. Directives should be one word if possible | ||||
| 	// and lower-cased. | ||||
| 	Directives func() []string | ||||
| 
 | ||||
| 	// DefaultInput returns a default config input if none | ||||
| 	// is otherwise loaded. This is optional, but highly | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user