40 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef _NET_EVENT_H
 | |
| #define _NET_EVENT_H
 | |
| 
 | |
| /*
 | |
|  *	Generic netevent notifiers
 | |
|  *
 | |
|  *	Authors:
 | |
|  *      Tom Tucker              <tom@opengridcomputing.com>
 | |
|  *      Steve Wise              <swise@opengridcomputing.com>
 | |
|  *
 | |
|  * 	Changes:
 | |
|  */
 | |
| 
 | |
| struct dst_entry;
 | |
| struct neighbour;
 | |
| struct notifier_block ;
 | |
| 
 | |
| struct netevent_redirect {
 | |
| 	struct dst_entry *old;
 | |
| 	struct dst_entry *new;
 | |
| 	struct neighbour *neigh;
 | |
| 	const void *daddr;
 | |
| };
 | |
| 
 | |
| enum netevent_notif_type {
 | |
| 	NETEVENT_NEIGH_UPDATE = 1, /* arg is struct neighbour ptr */
 | |
| 	NETEVENT_REDIRECT,	   /* arg is struct netevent_redirect ptr */
 | |
| 	NETEVENT_DELAY_PROBE_TIME_UPDATE, /* arg is struct neigh_parms ptr */
 | |
| 	NETEVENT_IPV4_MPATH_HASH_UPDATE, /* arg is struct net ptr */
 | |
| 	NETEVENT_IPV6_MPATH_HASH_UPDATE, /* arg is struct net ptr */
 | |
| 	NETEVENT_IPV4_FWD_UPDATE_PRIORITY_UPDATE, /* arg is struct net ptr */
 | |
| };
 | |
| 
 | |
| int register_netevent_notifier(struct notifier_block *nb);
 | |
| int unregister_netevent_notifier(struct notifier_block *nb);
 | |
| int call_netevent_notifiers(unsigned long val, void *v);
 | |
| 
 | |
| #endif
 |