mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 18:55:19 +00:00 
			
		
		
		
	Logger: Reset defaults before processing config.
Reset options to default values before reloading config. This ensures that if a setting is removed or commented out of the configuration file it is unset on reload. ASTERISK-25112 #close Reported by: Corey Farrell Change-Id: Id24bb1fb0885c2c14cf8bd6f69a0c2ee7cd6c5bd
This commit is contained in:
		| @@ -375,16 +375,25 @@ static int init_logger_chain(int locked, const char *altconf) | ||||
| 	const char *s; | ||||
| 	struct ast_flags config_flags = { 0 }; | ||||
|  | ||||
| 	display_callids = 1; | ||||
|  | ||||
| 	if (!(cfg = ast_config_load2(S_OR(altconf, "logger.conf"), "logger", config_flags)) || cfg == CONFIG_STATUS_FILEINVALID) { | ||||
| 		cfg = NULL; | ||||
| 	} | ||||
|  | ||||
| 	/* delete our list of log channels */ | ||||
| 	if (!locked) { | ||||
| 		AST_RWLIST_WRLOCK(&logchannels); | ||||
| 	} | ||||
|  | ||||
| 	/* Set defaults */ | ||||
| 	hostname[0] = '\0'; | ||||
| 	display_callids = 1; | ||||
| 	memset(&logfiles, 0, sizeof(logfiles)); | ||||
| 	logfiles.queue_log = 1; | ||||
| 	ast_copy_string(dateformat, "%b %e %T", sizeof(dateformat)); | ||||
| 	ast_copy_string(queue_log_name, QUEUELOG, sizeof(queue_log_name)); | ||||
| 	exec_after_rotate[0] = '\0'; | ||||
| 	rotatestrategy = SEQUENTIAL; | ||||
|  | ||||
| 	/* delete our list of log channels */ | ||||
| 	while ((chan = AST_RWLIST_REMOVE_HEAD(&logchannels, list))) { | ||||
| 		ast_free(chan); | ||||
| 	} | ||||
| @@ -424,17 +433,14 @@ static int init_logger_chain(int locked, const char *altconf) | ||||
| 				ast_copy_string(hostname, "unknown", sizeof(hostname)); | ||||
| 				fprintf(stderr, "What box has no hostname???\n"); | ||||
| 			} | ||||
| 		} else | ||||
| 			hostname[0] = '\0'; | ||||
| 	} else | ||||
| 		hostname[0] = '\0'; | ||||
| 		} | ||||
| 	} | ||||
| 	if ((s = ast_variable_retrieve(cfg, "general", "display_callids"))) { | ||||
| 		display_callids = ast_true(s); | ||||
| 	} | ||||
| 	if ((s = ast_variable_retrieve(cfg, "general", "dateformat"))) | ||||
| 	if ((s = ast_variable_retrieve(cfg, "general", "dateformat"))) { | ||||
| 		ast_copy_string(dateformat, s, sizeof(dateformat)); | ||||
| 	else | ||||
| 		ast_copy_string(dateformat, "%b %e %T", sizeof(dateformat)); | ||||
| 	} | ||||
| 	if ((s = ast_variable_retrieve(cfg, "general", "queue_log"))) { | ||||
| 		logfiles.queue_log = ast_true(s); | ||||
| 	} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user