Merge tag 'for-linus-6.4-1' of https://github.com/cminyard/linux-ipmi
[linux-block.git] / include / net / netevent.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
792d1932
TT
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 */
792d1932 14
274b3426 15struct dst_entry;
1d248b1c 16struct neighbour;
949d6b40 17struct notifier_block ;
792d1932
TT
18
19struct netevent_redirect {
20 struct dst_entry *old;
21 struct dst_entry *new;
60592833 22 struct neighbour *neigh;
1d248b1c 23 const void *daddr;
792d1932
TT
24};
25
26enum netevent_notif_type {
27 NETEVENT_NEIGH_UPDATE = 1, /* arg is struct neighbour ptr */
792d1932 28 NETEVENT_REDIRECT, /* arg is struct netevent_redirect ptr */
2a4501ae 29 NETEVENT_DELAY_PROBE_TIME_UPDATE, /* arg is struct neigh_parms ptr */
3192dac6 30 NETEVENT_IPV4_MPATH_HASH_UPDATE, /* arg is struct net ptr */
b4bac172 31 NETEVENT_IPV6_MPATH_HASH_UPDATE, /* arg is struct net ptr */
d18c5d19 32 NETEVENT_IPV4_FWD_UPDATE_PRIORITY_UPDATE, /* arg is struct net ptr */
792d1932
TT
33};
34
4f69053b
JP
35int register_netevent_notifier(struct notifier_block *nb);
36int unregister_netevent_notifier(struct notifier_block *nb);
37int call_netevent_notifiers(unsigned long val, void *v);
792d1932
TT
38
39#endif