/* Description: Removes an entry from the domain hash table and handles any updates to the lower level protocol handler (i.e. CIPSO). Returns zero on success, negative on failure.  */
int netlbl_domhsh_remove(const char *domain, struct netlbl_audit *audit_info)
/* Description: Removes an entry from the domain hash table and handles any updates to the lower level protocol handler (i.e. CIPSO). Returns zero on success, negative on failure.  */
int netlbl_domhsh_remove(const char *domain, struct netlbl_audit *audit_info)
{
	int ret_val;
	struct netlbl_dom_map *entry;
	rcu_read_lock();
	if (domain)
		entry = netlbl_domhsh_search(domain);
	else
		entry = netlbl_domhsh_search_def(domain);
	ret_val = netlbl_domhsh_remove_entry(entry, audit_info);
	rcu_read_unlock();
	return ret_val;
}