1 #ifndef __NET_FIB_NOTIFIER_H
2 #define __NET_FIB_NOTIFIER_H
4 #include <linux/types.h>
5 #include <linux/module.h>
6 #include <linux/notifier.h>
7 #include <net/net_namespace.h>
9 struct fib_notifier_info
{
12 struct netlink_ext_ack
*extack
;
16 FIB_EVENT_ENTRY_REPLACE
,
17 FIB_EVENT_ENTRY_APPEND
,
28 struct fib_notifier_ops
{
30 struct list_head list
;
31 unsigned int (*fib_seq_read
)(struct net
*net
);
32 int (*fib_dump
)(struct net
*net
, struct notifier_block
*nb
);
37 int call_fib_notifier(struct notifier_block
*nb
, struct net
*net
,
38 enum fib_event_type event_type
,
39 struct fib_notifier_info
*info
);
40 int call_fib_notifiers(struct net
*net
, enum fib_event_type event_type
,
41 struct fib_notifier_info
*info
);
42 int register_fib_notifier(struct notifier_block
*nb
,
43 void (*cb
)(struct notifier_block
*nb
));
44 int unregister_fib_notifier(struct notifier_block
*nb
);
45 struct fib_notifier_ops
*
46 fib_notifier_ops_register(const struct fib_notifier_ops
*tmpl
, struct net
*net
);
47 void fib_notifier_ops_unregister(struct fib_notifier_ops
*ops
);