| /* 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 |