mirror of
				https://github.com/ergochat/ergo.git
				synced 2025-10-29 21:07:25 +01:00 
			
		
		
		
	load motd directly into the config object
This commit is contained in:
		
							parent
							
								
									fbc6c84a01
								
							
						
					
					
						commit
						61d666a25b
					
				| @ -280,6 +280,7 @@ type Config struct { | ||||
| 		STS                  STSConfig | ||||
| 		CheckIdent           bool `yaml:"check-ident"` | ||||
| 		MOTD                 string | ||||
| 		motdLines            []string | ||||
| 		MOTDFormatting       bool     `yaml:"motd-formatting"` | ||||
| 		ProxyAllowedFrom     []string `yaml:"proxy-allowed-from"` | ||||
| 		proxyAllowedFromNets []net.IPNet | ||||
| @ -710,6 +711,8 @@ func LoadConfig(filename string) (config *Config, err error) { | ||||
| 		config.Server.Compatibility.forceTrailing = true | ||||
| 	} | ||||
| 
 | ||||
| 	config.loadMOTD() | ||||
| 
 | ||||
| 	// in the current implementation, we disable history by creating a history buffer | ||||
| 	// with zero capacity. but the `enabled` config option MUST be respected regardless | ||||
| 	// of this detail | ||||
|  | ||||
| @ -468,9 +468,7 @@ func (client *Client) t(originalString string) string { | ||||
| 
 | ||||
| // MOTD serves the Message of the Day. | ||||
| func (server *Server) MOTD(client *Client, rb *ResponseBuffer) { | ||||
| 	server.configurableStateMutex.RLock() | ||||
| 	motdLines := server.motdLines | ||||
| 	server.configurableStateMutex.RUnlock() | ||||
| 	motdLines := server.Config().Server.motdLines | ||||
| 
 | ||||
| 	if len(motdLines) < 1 { | ||||
| 		rb.Add(nil, server.name, ERR_NOMOTD, client.nick, client.t("MOTD File is missing")) | ||||
| @ -774,8 +772,6 @@ func (server *Server) applyConfig(config *Config, initial bool) (err error) { | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	server.loadMOTD(config.Server.MOTD, config.Server.MOTDFormatting) | ||||
| 
 | ||||
| 	// save a pointer to the new config | ||||
| 	server.SetConfig(config) | ||||
| 
 | ||||
| @ -851,11 +847,9 @@ func (server *Server) setupPprofListener(config *Config) { | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func (server *Server) loadMOTD(motdPath string, useFormatting bool) error { | ||||
| 	server.logger.Info("server", "Using MOTD", motdPath) | ||||
| 	motdLines := make([]string, 0) | ||||
| 	if motdPath != "" { | ||||
| 		file, err := os.Open(motdPath) | ||||
| func (config *Config) loadMOTD() (err error) { | ||||
| 	if config.Server.MOTD != "" { | ||||
| 		file, err := os.Open(config.Server.MOTD) | ||||
| 		if err == nil { | ||||
| 			defer file.Close() | ||||
| 
 | ||||
| @ -867,7 +861,7 @@ func (server *Server) loadMOTD(motdPath string, useFormatting bool) error { | ||||
| 				} | ||||
| 				line = strings.TrimRight(line, "\r\n") | ||||
| 
 | ||||
| 				if useFormatting { | ||||
| 				if config.Server.MOTDFormatting { | ||||
| 					line = ircfmt.Unescape(line) | ||||
| 				} | ||||
| 
 | ||||
| @ -875,17 +869,11 @@ func (server *Server) loadMOTD(motdPath string, useFormatting bool) error { | ||||
| 				// bursting it out to clients easier | ||||
| 				line = fmt.Sprintf("- %s", line) | ||||
| 
 | ||||
| 				motdLines = append(motdLines, line) | ||||
| 				config.Server.motdLines = append(config.Server.motdLines, line) | ||||
| 			} | ||||
| 		} else { | ||||
| 			return err | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	server.configurableStateMutex.Lock() | ||||
| 	server.motdLines = motdLines | ||||
| 	server.configurableStateMutex.Unlock() | ||||
| 	return nil | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func (server *Server) loadDatastore(config *Config) error { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Shivaram Lingamneni
						Shivaram Lingamneni