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
|