net: add missing includes and forward declarations under net/
[linux-2.6-microblaze.git] / include / net / netevent.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _NET_EVENT_H
3 #define _NET_EVENT_H
4
5 /*
6  *      Generic netevent notifiers
7  *
8  *      Authors:
9  *      Tom Tucker              <tom@opengridcomputing.com>
10  *      Steve Wise              <swise@opengridcomputing.com>
11  *
12  *      Changes:
13  */
14
15 struct dst_entry;
16 struct neighbour;
17 struct notifier_block ;
18
19 struct netevent_redirect {
20         struct dst_entry *old;
21         struct dst_entry *new;
22         struct neighbour *neigh;
23         const void *daddr;
24 };
25
26 enum netevent_notif_type {
27         NETEVENT_NEIGH_UPDATE = 1, /* arg is struct neighbour ptr */
28         NETEVENT_REDIRECT,         /* arg is struct netevent_redirect ptr */
29         NETEVENT_DELAY_PROBE_TIME_UPDATE, /* arg is struct neigh_parms ptr */
30         NETEVENT_IPV4_MPATH_HASH_UPDATE, /* arg is struct net ptr */
31         NETEVENT_IPV6_MPATH_HASH_UPDATE, /* arg is struct net ptr */
32         NETEVENT_IPV4_FWD_UPDATE_PRIORITY_UPDATE, /* arg is struct net ptr */
33 };
34
35 int register_netevent_notifier(struct notifier_block *nb);
36 int unregister_netevent_notifier(struct notifier_block *nb);
37 int call_netevent_notifiers(unsigned long val, void *v);
38
39 #endif