l2tp: close sessions before initiating tunnel delete
When a user deletes a tunnel using netlink, all the sessions in the tunnel should also be deleted. Since running sessions will pin the tunnel socket with the references they hold, have the l2tp_tunnel_delete close all sessions in a tunnel before finally closing the tunnel socket. Signed-off-by: Tom Parkin <tparkin@katalix.com> Signed-off-by: James Chapman <jchapman@katalix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									936063175a
								
							
						
					
					
						commit
						2b551c6e7d
					
				| @ -1737,6 +1737,7 @@ EXPORT_SYMBOL_GPL(l2tp_tunnel_create); | |||||||
|  */ |  */ | ||||||
| int l2tp_tunnel_delete(struct l2tp_tunnel *tunnel) | int l2tp_tunnel_delete(struct l2tp_tunnel *tunnel) | ||||||
| { | { | ||||||
|  | 	l2tp_tunnel_closeall(tunnel); | ||||||
| 	return (false == queue_work(l2tp_wq, &tunnel->del_work)); | 	return (false == queue_work(l2tp_wq, &tunnel->del_work)); | ||||||
| } | } | ||||||
| EXPORT_SYMBOL_GPL(l2tp_tunnel_delete); | EXPORT_SYMBOL_GPL(l2tp_tunnel_delete); | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user