mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-11-03 20:38:59 +00:00 
			
		
		
		
	res_pjsip: Fix prune_on_boot to remove only contacts for the host.
* Check that the contact's reg_server matches the host's name before deleting any prune_on_boot contacts. We don't want to delete reliable transport contacts made with other servers if the ps_contacts database table is shared with other servers. Thanks to Ross Beer for pointing out that the original prune logic would delete reliable transport contacts from other servers. ASTERISK-27147 Change-Id: I8e439d0d1c266ffdfd7b73d1e5e466180a689bd0
This commit is contained in:
		@@ -467,7 +467,10 @@ static int prune_boot_contacts_cb(void *obj, void *arg, int flags)
 | 
			
		||||
{
 | 
			
		||||
	struct ast_sip_contact *contact = obj;
 | 
			
		||||
 | 
			
		||||
	if (contact->prune_on_boot) {
 | 
			
		||||
	if (contact->prune_on_boot
 | 
			
		||||
		&& !strcmp(contact->reg_server, ast_config_AST_SYSTEM_NAME ?: "")) {
 | 
			
		||||
		ast_verb(3, "Removed contact '%s' from AOR '%s' due to system boot\n",
 | 
			
		||||
			contact->uri, contact->aor);
 | 
			
		||||
		ast_sip_location_delete_contact(contact);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user